@oiz/stzh-components 2.2.0-beta → 2.3.0-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (851) hide show
  1. package/dist/cjs/{animation-utils-cfa35ce7.js → animation-utils-54d784c2.js} +3 -0
  2. package/dist/cjs/{app-globals-f4ad4e99.js → app-globals-13e786d3.js} +1 -1
  3. package/dist/cjs/{arrow-3c3b0ae5.js → arrow-cd521f34.js} +468 -478
  4. package/dist/cjs/axios-7ec96df7.js +3167 -0
  5. package/dist/cjs/{dom-9deb26c8.js → dom-be1edfde.js} +1 -1
  6. package/dist/cjs/{focus-trap.esm-1cb6bb2e.js → focus-trap.esm-34a1a0d0.js} +188 -278
  7. package/dist/cjs/{index-9fcb4305.js → index-83d427ee.js} +113 -3
  8. package/dist/cjs/loader.cjs.js +5 -4
  9. package/dist/cjs/{shadow-css-bf3843d2.js → shadow-css-54f5c2d9.js} +1 -1
  10. package/dist/cjs/stzh-accordion-item.cjs.entry.js +6 -3
  11. package/dist/cjs/stzh-accordion.cjs.entry.js +1 -1
  12. package/dist/cjs/stzh-actions.cjs.entry.js +1 -1
  13. package/dist/cjs/stzh-actionset.cjs.entry.js +15 -5
  14. package/dist/cjs/stzh-anchornav.cjs.entry.js +2 -2
  15. package/dist/cjs/stzh-appnav.cjs.entry.js +1 -1
  16. package/dist/cjs/stzh-appointments.cjs.entry.js +1 -1
  17. package/dist/cjs/stzh-audio.cjs.entry.js +1 -1
  18. package/dist/cjs/stzh-badge_3.cjs.entry.js +3 -3
  19. package/dist/cjs/stzh-calendar.cjs.entry.js +2 -2
  20. package/dist/cjs/stzh-card_3.cjs.entry.js +47 -12
  21. package/dist/cjs/stzh-cell.cjs.entry.js +1 -1
  22. package/dist/cjs/stzh-chart.cjs.entry.js +1471 -404
  23. package/dist/cjs/stzh-checkbox.cjs.entry.js +3 -3
  24. package/dist/cjs/stzh-checkboxgroup.cjs.entry.js +3 -3
  25. package/dist/cjs/stzh-chip_2.cjs.entry.js +132 -0
  26. package/dist/cjs/stzh-components.cjs.js +27 -5
  27. package/dist/cjs/stzh-contact.cjs.entry.js +91 -0
  28. package/dist/cjs/stzh-container.cjs.entry.js +3 -2
  29. package/dist/cjs/stzh-cspace.cjs.entry.js +2 -2
  30. package/dist/cjs/stzh-datalist_2.cjs.entry.js +33 -13
  31. package/dist/cjs/stzh-datamessagelist-item.cjs.entry.js +4 -3
  32. package/dist/cjs/stzh-datamessagelist.cjs.entry.js +1 -1
  33. package/dist/cjs/stzh-datatable.cjs.entry.js +32 -31
  34. package/dist/cjs/stzh-datepicker_3.cjs.entry.js +4 -4
  35. package/dist/cjs/stzh-details.cjs.entry.js +5 -2
  36. package/dist/cjs/stzh-dialog.cjs.entry.js +6 -6
  37. package/dist/cjs/stzh-dropdown.cjs.entry.js +1057 -426
  38. package/dist/cjs/stzh-fieldset.cjs.entry.js +2 -2
  39. package/dist/cjs/stzh-figure.cjs.entry.js +5 -3
  40. package/dist/cjs/stzh-flyingfocus.cjs.entry.js +2 -2
  41. package/dist/cjs/stzh-footer.cjs.entry.js +2 -2
  42. package/dist/cjs/stzh-ghettobox_2.cjs.entry.js +3 -3
  43. package/dist/cjs/stzh-header.cjs.entry.js +6 -5
  44. package/dist/cjs/stzh-heading.cjs.entry.js +1 -1
  45. package/dist/cjs/stzh-hr.cjs.entry.js +1 -1
  46. package/dist/cjs/stzh-hspace.cjs.entry.js +4 -3
  47. package/dist/cjs/stzh-icon-sprite.cjs.entry.js +1 -1
  48. package/dist/cjs/{stzh-input-description-4326b0d9.js → stzh-input-description-2edc5cac.js} +1 -1
  49. package/dist/cjs/stzh-input.cjs.entry.js +3 -3
  50. package/dist/cjs/stzh-invert.cjs.entry.js +23 -0
  51. package/dist/cjs/stzh-langnav.cjs.entry.js +1 -1
  52. package/dist/cjs/stzh-link.cjs.entry.js +2 -2
  53. package/dist/cjs/stzh-list-item.cjs.entry.js +1 -1
  54. package/dist/cjs/stzh-list.cjs.entry.js +1 -1
  55. package/dist/cjs/stzh-loader.cjs.entry.js +1 -1
  56. package/dist/cjs/stzh-loadingbar.cjs.entry.js +1 -1
  57. package/dist/cjs/stzh-menu_2.cjs.entry.js +2 -2
  58. package/dist/cjs/stzh-message.cjs.entry.js +2 -2
  59. package/dist/cjs/stzh-metanav.cjs.entry.js +1 -1
  60. package/dist/cjs/stzh-microsite-teaserlist.cjs.entry.js +4 -4
  61. package/dist/cjs/stzh-olmap.cjs.entry.js +2 -2
  62. package/dist/cjs/stzh-overlay.cjs.entry.js +2 -2
  63. package/dist/cjs/stzh-page-skiplinks.cjs.entry.js +1 -1
  64. package/dist/cjs/stzh-pagebottom.cjs.entry.js +5 -2
  65. package/dist/cjs/stzh-pagetitle-hero.cjs.entry.js +2 -2
  66. package/dist/cjs/stzh-pagetitle.cjs.entry.js +9 -1
  67. package/dist/cjs/stzh-popover.cjs.entry.js +22 -8
  68. package/dist/cjs/stzh-portal-mitwirken.cjs.entry.js +2 -2
  69. package/dist/cjs/stzh-progressbar-item.cjs.entry.js +6 -4
  70. package/dist/cjs/stzh-progressbar.cjs.entry.js +2 -2
  71. package/dist/cjs/stzh-ratio.cjs.entry.js +26 -0
  72. package/dist/cjs/stzh-readspeaker.cjs.entry.js +1 -1
  73. package/dist/cjs/stzh-row.cjs.entry.js +1 -1
  74. package/dist/cjs/stzh-saptcha.cjs.entry.js +1 -1
  75. package/dist/cjs/stzh-section.cjs.entry.js +1 -1
  76. package/dist/cjs/stzh-share.cjs.entry.js +1 -1
  77. package/dist/cjs/stzh-show.cjs.entry.js +41 -0
  78. package/dist/cjs/stzh-sitemap.cjs.entry.js +2 -2
  79. package/dist/cjs/stzh-skiplink.cjs.entry.js +1 -1
  80. package/dist/cjs/stzh-sortable.cjs.entry.js +10 -66
  81. package/dist/cjs/stzh-space.cjs.entry.js +34 -0
  82. package/dist/cjs/stzh-status.cjs.entry.js +1 -1
  83. package/dist/cjs/stzh-sticky.cjs.entry.js +5 -3
  84. package/dist/cjs/stzh-table.cjs.entry.js +3 -2
  85. package/dist/cjs/stzh-text.cjs.entry.js +2 -2
  86. package/dist/cjs/stzh-textandimage.cjs.entry.js +4 -2
  87. package/dist/cjs/stzh-toggle.cjs.entry.js +3 -3
  88. package/dist/cjs/stzh-tooltip.cjs.entry.js +32 -11
  89. package/dist/cjs/stzh-upload.cjs.entry.js +6 -3
  90. package/dist/cjs/stzh-vbz-linechip.cjs.entry.js +784 -691
  91. package/dist/cjs/stzh-vbz-majorticker.cjs.entry.js +7 -7
  92. package/dist/cjs/stzh-vbz-ticker.cjs.entry.js +3 -3
  93. package/dist/cjs/stzh-visuallyhidden.cjs.entry.js +1 -1
  94. package/dist/cjs/stzh-vspace.cjs.entry.js +4 -3
  95. package/dist/collection/assets/i18n/de.json +10 -7
  96. package/dist/collection/assets/i18n/en.json +11 -8
  97. package/dist/collection/collection-manifest.json +7 -3
  98. package/dist/collection/components/stzh-accordion/stzh-accordion.stories.js +12 -1
  99. package/dist/collection/components/stzh-accordion-item/stzh-accordion-item.css +1 -0
  100. package/dist/collection/components/stzh-accordion-item/stzh-accordion-item.js +3 -0
  101. package/dist/collection/components/stzh-actionset/stzh-actionset.css +11 -0
  102. package/dist/collection/components/stzh-actionset/stzh-actionset.js +18 -8
  103. package/dist/collection/components/stzh-actionset/stzh-actionset.stories.js +5 -5
  104. package/dist/collection/components/stzh-anchornav/stzh-anchornav.css +1 -3
  105. package/dist/collection/components/stzh-button/stzh-button.css +13 -4
  106. package/dist/collection/components/stzh-button/stzh-button.stories.js +21 -17
  107. package/dist/collection/components/stzh-calendar/stzh-calendar.css +1 -0
  108. package/dist/collection/components/stzh-card/stzh-card.css +34 -16
  109. package/dist/collection/components/stzh-card/stzh-card.js +26 -4
  110. package/dist/collection/components/stzh-card/stzh-card.stories.js +1 -1
  111. package/dist/collection/components/stzh-chart/stzh-chart.css +55 -37
  112. package/dist/collection/components/stzh-checkbox/stzh-checkbox.css +1 -0
  113. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.css +1 -0
  114. package/dist/collection/components/stzh-chip/stzh-chip.css +68 -6
  115. package/dist/collection/components/stzh-chip/stzh-chip.js +52 -5
  116. package/dist/collection/components/stzh-chip/stzh-chip.stories.js +7 -0
  117. package/dist/collection/components/stzh-chip-select/stzh-chip-select.css +8 -0
  118. package/dist/collection/components/stzh-chip-select/stzh-chip-select.js +41 -4
  119. package/dist/collection/components/stzh-clamp/stzh-clamp.css +5 -0
  120. package/dist/collection/components/{stzh-contactaddress/stzh-contactaddress.css → stzh-contact/stzh-contact.css} +22 -22
  121. package/dist/collection/components/{stzh-contactaddress/stzh-contactaddress.js → stzh-contact/stzh-contact.js} +25 -25
  122. package/dist/collection/components/{stzh-contactaddress/stzh-contactaddress.stories.js → stzh-contact/stzh-contact.stories.js} +10 -9
  123. package/dist/collection/components/stzh-container/stzh-container.css +11 -1
  124. package/dist/collection/components/stzh-container/stzh-container.js +26 -1
  125. package/dist/collection/components/stzh-container/stzh-container.stories.js +6 -1
  126. package/dist/collection/components/stzh-cspace/stzh-cspace.css +136 -43
  127. package/dist/collection/components/stzh-datalist/stzh-datalist.css +12 -0
  128. package/dist/collection/components/stzh-datalist/stzh-datalist.js +19 -0
  129. package/dist/collection/components/stzh-datalist/stzh-datalist.stories.js +2 -1
  130. package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.css +28 -12
  131. package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.js +35 -13
  132. package/dist/collection/components/stzh-datamessagelist-item/stzh-datamessagelist-item.css +11 -0
  133. package/dist/collection/components/stzh-datamessagelist-item/stzh-datamessagelist-item.js +3 -2
  134. package/dist/collection/components/stzh-datatable/stzh-datatable.css +3 -0
  135. package/dist/collection/components/stzh-datatable/stzh-datatable.js +20 -1
  136. package/dist/collection/components/stzh-details/stzh-details.js +3 -0
  137. package/dist/collection/components/stzh-dialog/stzh-dialog.css +1 -0
  138. package/dist/collection/components/stzh-dialog/stzh-dialog.js +3 -3
  139. package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +3 -0
  140. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +9 -8
  141. package/dist/collection/components/stzh-fieldset/stzh-fieldset.css +1 -0
  142. package/dist/collection/components/stzh-figure/stzh-figure.css +8 -5
  143. package/dist/collection/components/stzh-figure/stzh-figure.js +21 -1
  144. package/dist/collection/components/stzh-footer/stzh-footer.css +1 -0
  145. package/dist/collection/components/stzh-ghettobox/stzh-ghettobox.css +13 -1
  146. package/dist/collection/components/stzh-header/stzh-header.css +5 -1
  147. package/dist/collection/components/stzh-header/stzh-header.js +4 -3
  148. package/dist/collection/components/stzh-header/stzh-header.stories.js +47 -39
  149. package/dist/collection/components/stzh-hspace/stzh-hspace.css +166 -138
  150. package/dist/collection/components/stzh-hspace/stzh-hspace.js +30 -6
  151. package/dist/collection/components/stzh-icon/stzh-icon.js +1 -1
  152. package/dist/collection/components/stzh-input/stzh-input.css +1 -0
  153. package/dist/collection/components/stzh-invert/stzh-invert.css +158 -0
  154. package/dist/collection/components/stzh-invert/stzh-invert.js +25 -0
  155. package/dist/collection/components/stzh-invert/stzh-invert.stories.js +55 -0
  156. package/dist/collection/components/stzh-link/stzh-link.css +1 -0
  157. package/dist/collection/components/stzh-link/stzh-link.stories.js +11 -19
  158. package/dist/collection/components/stzh-menu-item/stzh-menu-item.css +1 -0
  159. package/dist/collection/components/stzh-message/stzh-message.css +1 -0
  160. package/dist/collection/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.js +1 -1
  161. package/dist/collection/components/stzh-olmap/stzh-olmap.js +1 -1
  162. package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.js +4 -1
  163. package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.stories.js +1 -1
  164. package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.js +8 -0
  165. package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.stories.js +6 -6
  166. package/dist/collection/components/stzh-pagetitle-hero/stzh-pagetitle-hero.css +14 -1
  167. package/dist/collection/components/stzh-pagetitle-hero/stzh-pagetitle-hero.stories.js +4 -6
  168. package/dist/collection/components/stzh-popover/stzh-popover.css +3 -1
  169. package/dist/collection/components/stzh-popover/stzh-popover.js +18 -4
  170. package/dist/collection/components/stzh-popover/stzh-popover.stories.js +5 -7
  171. package/dist/collection/components/stzh-portal-mitwirken/stzh-portal-mitwirken.css +34 -9
  172. package/dist/collection/components/stzh-progressbar/stzh-progressbar.js +2 -2
  173. package/dist/collection/components/stzh-progressbar/stzh-progressbar.stories.js +2 -1
  174. package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.css +147 -10
  175. package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.js +22 -2
  176. package/dist/collection/components/stzh-radio/stzh-radio.css +1 -0
  177. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.css +1 -0
  178. package/dist/collection/components/stzh-ratio/stzh-ratio.css +172 -0
  179. package/dist/collection/components/stzh-ratio/stzh-ratio.js +88 -0
  180. package/dist/collection/components/stzh-ratio/stzh-ratio.stories.js +35 -0
  181. package/dist/collection/components/stzh-richtext/stzh-richtext.css +10 -5
  182. package/dist/collection/components/stzh-show/stzh-show.css +165 -0
  183. package/dist/collection/components/stzh-show/stzh-show.js +158 -0
  184. package/dist/collection/components/stzh-show/stzh-show.stories.js +52 -0
  185. package/dist/collection/components/stzh-sitemap/stzh-sitemap.css +1 -1
  186. package/dist/collection/components/stzh-sortable/stzh-sortable.js +6 -3
  187. package/dist/collection/components/stzh-space/stzh-space.css +842 -0
  188. package/dist/collection/components/stzh-space/stzh-space.js +262 -0
  189. package/dist/collection/components/stzh-space/stzh-space.stories.js +76 -0
  190. package/dist/collection/components/stzh-sticky/stzh-sticky.css +9 -0
  191. package/dist/collection/components/stzh-sticky/stzh-sticky.js +21 -1
  192. package/dist/collection/components/stzh-sticky/stzh-sticky.stories.js +3 -1
  193. package/dist/collection/components/stzh-table/stzh-table.css +3 -0
  194. package/dist/collection/components/stzh-table/stzh-table.js +19 -0
  195. package/dist/collection/components/stzh-text/stzh-text.css +2 -2
  196. package/dist/collection/components/stzh-textandimage/stzh-textandimage.css +38 -2
  197. package/dist/collection/components/stzh-textandimage/stzh-textandimage.js +20 -0
  198. package/dist/collection/components/stzh-toggle/stzh-toggle.css +1 -0
  199. package/dist/collection/components/stzh-tooltip/stzh-tooltip.css +1 -0
  200. package/dist/collection/components/stzh-tooltip/stzh-tooltip.js +28 -7
  201. package/dist/collection/components/stzh-upload/stzh-upload.css +1 -0
  202. package/dist/collection/components/stzh-upload/stzh-upload.js +3 -0
  203. package/dist/collection/components/stzh-vbz-linechip/stzh-vbz-linechip.js +2 -1
  204. package/dist/collection/components/stzh-vspace/stzh-vspace.css +157 -129
  205. package/dist/collection/components/stzh-vspace/stzh-vspace.js +30 -6
  206. package/dist/collection/pages/egov.stories.js +191 -183
  207. package/dist/collection/pages/meinkonto.stories.js +368 -512
  208. package/dist/collection/pages/microsite.stories.js +235 -0
  209. package/dist/collection/pages/website.stories.js +139 -0
  210. package/dist/collection/patterns/appointments.stories.js +2 -2
  211. package/dist/collection/patterns/contact.stories.js +67 -41
  212. package/dist/collection/patterns/contactform.stories.js +2 -2
  213. package/dist/collection/patterns/jobdetails.stories.js +151 -0
  214. package/dist/collection/patterns/subpages.stories.js +6 -6
  215. package/dist/collection/patterns/twocolumns.stories.js +46 -0
  216. package/dist/collection/utils/animation-utils.js +3 -0
  217. package/dist/components/animation-utils.js +3 -0
  218. package/dist/components/arrow.js +468 -478
  219. package/dist/components/axios.js +3165 -0
  220. package/dist/components/date-utils.js +159 -0
  221. package/dist/components/focus-trap.esm.js +188 -278
  222. package/dist/components/index.d.ts +14 -1
  223. package/dist/components/index.js +7 -3
  224. package/dist/components/stzh-accordion-item.js +4 -1
  225. package/dist/components/stzh-actionset2.js +16 -6
  226. package/dist/components/stzh-anchornav.js +1 -1
  227. package/dist/components/stzh-appointments.js +2 -1
  228. package/dist/components/stzh-button2.js +1 -1
  229. package/dist/components/stzh-calendar2.js +3 -160
  230. package/dist/components/stzh-card2.js +9 -5
  231. package/dist/components/stzh-chart.js +1470 -403
  232. package/dist/components/stzh-checkbox.js +1 -1
  233. package/dist/components/stzh-checkboxgroup.js +1 -1
  234. package/dist/components/stzh-chip-select2.js +47 -8
  235. package/dist/components/stzh-chip2.js +26 -6
  236. package/dist/components/stzh-clamp2.js +1 -1
  237. package/dist/components/{stzh-contactaddress.d.ts → stzh-contact.d.ts} +4 -4
  238. package/dist/components/stzh-contact.js +157 -0
  239. package/dist/components/stzh-container.js +5 -2
  240. package/dist/components/stzh-cspace.js +1 -1
  241. package/dist/components/stzh-datalist-item2.js +30 -11
  242. package/dist/components/stzh-datalist2.js +3 -1
  243. package/dist/components/stzh-datamessagelist-item.js +3 -2
  244. package/dist/components/stzh-datatable.js +32 -30
  245. package/dist/components/stzh-datepicker2.js +2 -1
  246. package/dist/components/stzh-details.js +3 -0
  247. package/dist/components/stzh-dialog.js +4 -4
  248. package/dist/components/stzh-dropdown2.js +1055 -424
  249. package/dist/components/stzh-fieldset.js +1 -1
  250. package/dist/components/stzh-figure.js +6 -3
  251. package/dist/components/stzh-footer.js +1 -1
  252. package/dist/components/stzh-ghettobox2.js +1 -1
  253. package/dist/components/stzh-header.js +5 -4
  254. package/dist/components/stzh-hspace.js +8 -5
  255. package/dist/components/stzh-icon2.js +1 -1
  256. package/dist/components/stzh-input2.js +1 -1
  257. package/dist/components/stzh-invert.d.ts +11 -0
  258. package/dist/components/stzh-invert.js +36 -0
  259. package/dist/components/stzh-link2.js +1 -1
  260. package/dist/components/stzh-menu-item2.js +1 -1
  261. package/dist/components/stzh-message.js +1 -1
  262. package/dist/components/stzh-microsite-teaserlist.js +2 -2
  263. package/dist/components/stzh-olmap.js +1 -1
  264. package/dist/components/stzh-pagebottom.js +4 -1
  265. package/dist/components/stzh-pagetitle-hero.js +1 -1
  266. package/dist/components/stzh-pagetitle.js +8 -0
  267. package/dist/components/stzh-popover2.js +18 -4
  268. package/dist/components/stzh-portal-mitwirken.js +1 -1
  269. package/dist/components/stzh-progressbar-item2.js +6 -3
  270. package/dist/components/stzh-progressbar.js +1 -1
  271. package/dist/components/stzh-radio2.js +1 -1
  272. package/dist/components/stzh-radiogroup2.js +1 -1
  273. package/dist/components/stzh-ratio.d.ts +11 -0
  274. package/dist/components/stzh-ratio.js +43 -0
  275. package/dist/components/stzh-richtext2.js +1 -1
  276. package/dist/components/stzh-show.d.ts +11 -0
  277. package/dist/components/stzh-show.js +62 -0
  278. package/dist/components/stzh-sitemap.js +1 -1
  279. package/dist/components/stzh-sortable2.js +9 -65
  280. package/dist/components/stzh-space.d.ts +11 -0
  281. package/dist/components/stzh-space.js +59 -0
  282. package/dist/components/stzh-sticky.js +5 -2
  283. package/dist/components/stzh-table.js +3 -1
  284. package/dist/components/stzh-text2.js +1 -1
  285. package/dist/components/stzh-textandimage.js +4 -1
  286. package/dist/components/stzh-toggle.js +1 -1
  287. package/dist/components/stzh-tooltip2.js +28 -7
  288. package/dist/components/stzh-upload.js +4 -1
  289. package/dist/components/stzh-vbz-linechip2.js +774 -681
  290. package/dist/components/stzh-vbz-majorticker.js +1 -1
  291. package/dist/components/stzh-vbz-ticker.js +1 -1
  292. package/dist/components/stzh-vspace.js +8 -5
  293. package/dist/esm/{animation-utils-25c74e5b.js → animation-utils-e234a5f8.js} +3 -0
  294. package/dist/esm/{app-globals-17c2ba8d.js → app-globals-2e508622.js} +1 -1
  295. package/dist/esm/{arrow-86a679c7.js → arrow-480bc86f.js} +468 -478
  296. package/dist/esm/axios-e2b39666.js +3165 -0
  297. package/dist/esm/{dom-6be6f662.js → dom-c525f6e4.js} +1 -1
  298. package/dist/esm/{focus-trap.esm-074705a3.js → focus-trap.esm-82634dec.js} +188 -278
  299. package/dist/esm/{index-011c84fe.js → index-319b7c49.js} +112 -4
  300. package/dist/esm/loader.js +5 -4
  301. package/dist/esm/polyfills/css-shim.js +1 -1
  302. package/dist/esm/{shadow-css-ed4599f8.js → shadow-css-abbdeef8.js} +1 -1
  303. package/dist/esm/stzh-accordion-item.entry.js +6 -3
  304. package/dist/esm/stzh-accordion.entry.js +1 -1
  305. package/dist/esm/stzh-actions.entry.js +1 -1
  306. package/dist/esm/stzh-actionset.entry.js +16 -6
  307. package/dist/esm/stzh-anchornav.entry.js +2 -2
  308. package/dist/esm/stzh-appnav.entry.js +1 -1
  309. package/dist/esm/stzh-appointments.entry.js +1 -1
  310. package/dist/esm/stzh-audio.entry.js +1 -1
  311. package/dist/esm/stzh-badge_3.entry.js +3 -3
  312. package/dist/esm/stzh-calendar.entry.js +2 -2
  313. package/dist/esm/stzh-card_3.entry.js +47 -12
  314. package/dist/esm/stzh-cell.entry.js +1 -1
  315. package/dist/esm/stzh-chart.entry.js +1471 -404
  316. package/dist/esm/stzh-checkbox.entry.js +3 -3
  317. package/dist/esm/stzh-checkboxgroup.entry.js +3 -3
  318. package/dist/esm/stzh-chip_2.entry.js +127 -0
  319. package/dist/esm/stzh-components.js +24 -5
  320. package/dist/esm/stzh-contact.entry.js +87 -0
  321. package/dist/esm/stzh-container.entry.js +3 -2
  322. package/dist/esm/stzh-cspace.entry.js +2 -2
  323. package/dist/esm/stzh-datalist_2.entry.js +33 -13
  324. package/dist/esm/stzh-datamessagelist-item.entry.js +4 -3
  325. package/dist/esm/stzh-datamessagelist.entry.js +1 -1
  326. package/dist/esm/stzh-datatable.entry.js +32 -31
  327. package/dist/esm/stzh-datepicker_3.entry.js +4 -4
  328. package/dist/esm/stzh-details.entry.js +5 -2
  329. package/dist/esm/stzh-dialog.entry.js +6 -6
  330. package/dist/esm/stzh-dropdown.entry.js +1057 -426
  331. package/dist/esm/stzh-fieldset.entry.js +2 -2
  332. package/dist/esm/stzh-figure.entry.js +5 -3
  333. package/dist/esm/stzh-flyingfocus.entry.js +2 -2
  334. package/dist/esm/stzh-footer.entry.js +2 -2
  335. package/dist/esm/stzh-ghettobox_2.entry.js +3 -3
  336. package/dist/esm/stzh-header.entry.js +6 -5
  337. package/dist/esm/stzh-heading.entry.js +1 -1
  338. package/dist/esm/stzh-hr.entry.js +1 -1
  339. package/dist/esm/stzh-hspace.entry.js +4 -3
  340. package/dist/esm/stzh-icon-sprite.entry.js +1 -1
  341. package/dist/esm/{stzh-input-description-bdd1e340.js → stzh-input-description-cc38e214.js} +1 -1
  342. package/dist/esm/stzh-input.entry.js +3 -3
  343. package/dist/esm/stzh-invert.entry.js +19 -0
  344. package/dist/esm/stzh-langnav.entry.js +1 -1
  345. package/dist/esm/stzh-link.entry.js +2 -2
  346. package/dist/esm/stzh-list-item.entry.js +1 -1
  347. package/dist/esm/stzh-list.entry.js +1 -1
  348. package/dist/esm/stzh-loader.entry.js +1 -1
  349. package/dist/esm/stzh-loadingbar.entry.js +1 -1
  350. package/dist/esm/stzh-menu_2.entry.js +2 -2
  351. package/dist/esm/stzh-message.entry.js +2 -2
  352. package/dist/esm/stzh-metanav.entry.js +1 -1
  353. package/dist/esm/stzh-microsite-teaserlist.entry.js +3 -3
  354. package/dist/esm/stzh-olmap.entry.js +2 -2
  355. package/dist/esm/stzh-overlay.entry.js +2 -2
  356. package/dist/esm/stzh-page-skiplinks.entry.js +1 -1
  357. package/dist/esm/stzh-pagebottom.entry.js +5 -2
  358. package/dist/esm/stzh-pagetitle-hero.entry.js +2 -2
  359. package/dist/esm/stzh-pagetitle.entry.js +9 -1
  360. package/dist/esm/stzh-popover.entry.js +22 -8
  361. package/dist/esm/stzh-portal-mitwirken.entry.js +2 -2
  362. package/dist/esm/stzh-progressbar-item.entry.js +6 -4
  363. package/dist/esm/stzh-progressbar.entry.js +2 -2
  364. package/dist/esm/stzh-ratio.entry.js +22 -0
  365. package/dist/esm/stzh-readspeaker.entry.js +1 -1
  366. package/dist/esm/stzh-row.entry.js +1 -1
  367. package/dist/esm/stzh-saptcha.entry.js +1 -1
  368. package/dist/esm/stzh-section.entry.js +1 -1
  369. package/dist/esm/stzh-share.entry.js +1 -1
  370. package/dist/esm/stzh-show.entry.js +37 -0
  371. package/dist/esm/stzh-sitemap.entry.js +2 -2
  372. package/dist/esm/stzh-skiplink.entry.js +1 -1
  373. package/dist/esm/stzh-sortable.entry.js +10 -66
  374. package/dist/esm/stzh-space.entry.js +30 -0
  375. package/dist/esm/stzh-status.entry.js +1 -1
  376. package/dist/esm/stzh-sticky.entry.js +5 -3
  377. package/dist/esm/stzh-table.entry.js +3 -2
  378. package/dist/esm/stzh-text.entry.js +2 -2
  379. package/dist/esm/stzh-textandimage.entry.js +4 -2
  380. package/dist/esm/stzh-toggle.entry.js +3 -3
  381. package/dist/esm/stzh-tooltip.entry.js +32 -11
  382. package/dist/esm/stzh-upload.entry.js +6 -3
  383. package/dist/esm/stzh-vbz-linechip.entry.js +785 -692
  384. package/dist/esm/stzh-vbz-majorticker.entry.js +2 -2
  385. package/dist/esm/stzh-vbz-ticker.entry.js +2 -2
  386. package/dist/esm/stzh-visuallyhidden.entry.js +1 -1
  387. package/dist/esm/stzh-vspace.entry.js +4 -3
  388. package/dist/esm-es5/animation-utils-e234a5f8.js +1 -0
  389. package/dist/esm-es5/app-globals-2e508622.js +1 -0
  390. package/dist/esm-es5/arrow-480bc86f.js +1 -0
  391. package/dist/esm-es5/axios-e2b39666.js +1 -0
  392. package/dist/esm-es5/{dom-6be6f662.js → dom-c525f6e4.js} +0 -0
  393. package/dist/esm-es5/focus-trap.esm-82634dec.js +9 -0
  394. package/dist/esm-es5/index-319b7c49.js +2 -0
  395. package/dist/esm-es5/loader.js +1 -1
  396. package/dist/esm-es5/{shadow-css-ed4599f8.js → shadow-css-abbdeef8.js} +0 -0
  397. package/dist/esm-es5/stzh-accordion-item.entry.js +1 -1
  398. package/dist/esm-es5/stzh-accordion.entry.js +1 -1
  399. package/dist/esm-es5/stzh-actions.entry.js +1 -1
  400. package/dist/esm-es5/stzh-actionset.entry.js +1 -1
  401. package/dist/esm-es5/stzh-anchornav.entry.js +1 -1
  402. package/dist/esm-es5/stzh-appnav.entry.js +1 -1
  403. package/dist/esm-es5/stzh-appointments.entry.js +1 -1
  404. package/dist/esm-es5/stzh-audio.entry.js +1 -1
  405. package/dist/esm-es5/stzh-badge_3.entry.js +1 -1
  406. package/dist/esm-es5/stzh-calendar.entry.js +1 -1
  407. package/dist/esm-es5/stzh-card_3.entry.js +1 -1
  408. package/dist/esm-es5/stzh-cell.entry.js +1 -1
  409. package/dist/esm-es5/stzh-chart.entry.js +3 -3
  410. package/dist/esm-es5/stzh-checkbox.entry.js +1 -1
  411. package/dist/esm-es5/stzh-checkboxgroup.entry.js +1 -1
  412. package/dist/esm-es5/stzh-chip_2.entry.js +1 -0
  413. package/dist/esm-es5/stzh-components.js +1 -1
  414. package/dist/esm-es5/stzh-contact.entry.js +1 -0
  415. package/dist/esm-es5/stzh-container.entry.js +1 -1
  416. package/dist/esm-es5/stzh-cspace.entry.js +1 -1
  417. package/dist/esm-es5/stzh-datalist_2.entry.js +1 -1
  418. package/dist/esm-es5/stzh-datamessagelist-item.entry.js +1 -1
  419. package/dist/esm-es5/stzh-datamessagelist.entry.js +1 -1
  420. package/dist/esm-es5/stzh-datatable.entry.js +4 -4
  421. package/dist/esm-es5/stzh-datepicker_3.entry.js +1 -1
  422. package/dist/esm-es5/stzh-details.entry.js +1 -1
  423. package/dist/esm-es5/stzh-dialog.entry.js +1 -1
  424. package/dist/esm-es5/stzh-dropdown.entry.js +9 -1
  425. package/dist/esm-es5/stzh-fieldset.entry.js +1 -1
  426. package/dist/esm-es5/stzh-figure.entry.js +1 -1
  427. package/dist/esm-es5/stzh-flyingfocus.entry.js +1 -1
  428. package/dist/esm-es5/stzh-footer.entry.js +1 -1
  429. package/dist/esm-es5/stzh-ghettobox_2.entry.js +1 -1
  430. package/dist/esm-es5/stzh-header.entry.js +1 -1
  431. package/dist/esm-es5/stzh-heading.entry.js +1 -1
  432. package/dist/esm-es5/stzh-hr.entry.js +1 -1
  433. package/dist/esm-es5/stzh-hspace.entry.js +1 -1
  434. package/dist/esm-es5/stzh-icon-sprite.entry.js +1 -1
  435. package/dist/esm-es5/{stzh-input-description-bdd1e340.js → stzh-input-description-cc38e214.js} +1 -1
  436. package/dist/esm-es5/stzh-input.entry.js +1 -1
  437. package/dist/esm-es5/stzh-invert.entry.js +1 -0
  438. package/dist/esm-es5/stzh-langnav.entry.js +1 -1
  439. package/dist/esm-es5/stzh-link.entry.js +1 -1
  440. package/dist/esm-es5/stzh-list-item.entry.js +1 -1
  441. package/dist/esm-es5/stzh-list.entry.js +1 -1
  442. package/dist/esm-es5/stzh-loader.entry.js +1 -1
  443. package/dist/esm-es5/stzh-loadingbar.entry.js +1 -1
  444. package/dist/esm-es5/stzh-menu_2.entry.js +1 -1
  445. package/dist/esm-es5/stzh-message.entry.js +1 -1
  446. package/dist/esm-es5/stzh-metanav.entry.js +1 -1
  447. package/dist/esm-es5/stzh-microsite-teaserlist.entry.js +1 -1
  448. package/dist/esm-es5/stzh-olmap.entry.js +2 -2
  449. package/dist/esm-es5/stzh-overlay.entry.js +1 -1
  450. package/dist/esm-es5/stzh-page-skiplinks.entry.js +1 -1
  451. package/dist/esm-es5/stzh-pagebottom.entry.js +1 -1
  452. package/dist/esm-es5/stzh-pagetitle-hero.entry.js +1 -1
  453. package/dist/esm-es5/stzh-pagetitle.entry.js +1 -1
  454. package/dist/esm-es5/stzh-popover.entry.js +1 -1
  455. package/dist/esm-es5/stzh-portal-mitwirken.entry.js +1 -1
  456. package/dist/esm-es5/stzh-progressbar-item.entry.js +1 -1
  457. package/dist/esm-es5/stzh-progressbar.entry.js +1 -1
  458. package/dist/esm-es5/stzh-ratio.entry.js +1 -0
  459. package/dist/esm-es5/stzh-readspeaker.entry.js +1 -1
  460. package/dist/esm-es5/stzh-row.entry.js +1 -1
  461. package/dist/esm-es5/stzh-saptcha.entry.js +1 -1
  462. package/dist/esm-es5/stzh-section.entry.js +1 -1
  463. package/dist/esm-es5/stzh-share.entry.js +1 -1
  464. package/dist/esm-es5/stzh-show.entry.js +1 -0
  465. package/dist/esm-es5/stzh-sitemap.entry.js +1 -1
  466. package/dist/esm-es5/stzh-skiplink.entry.js +1 -1
  467. package/dist/esm-es5/stzh-sortable.entry.js +2 -2
  468. package/dist/esm-es5/stzh-space.entry.js +1 -0
  469. package/dist/esm-es5/stzh-status.entry.js +1 -1
  470. package/dist/esm-es5/stzh-sticky.entry.js +1 -1
  471. package/dist/esm-es5/stzh-table.entry.js +1 -1
  472. package/dist/esm-es5/stzh-text.entry.js +1 -1
  473. package/dist/esm-es5/stzh-textandimage.entry.js +1 -1
  474. package/dist/esm-es5/stzh-toggle.entry.js +1 -1
  475. package/dist/esm-es5/stzh-tooltip.entry.js +1 -1
  476. package/dist/esm-es5/stzh-upload.entry.js +1 -1
  477. package/dist/esm-es5/stzh-vbz-linechip.entry.js +1 -1
  478. package/dist/esm-es5/stzh-vbz-majorticker.entry.js +1 -1
  479. package/dist/esm-es5/stzh-vbz-ticker.entry.js +1 -1
  480. package/dist/esm-es5/stzh-visuallyhidden.entry.js +1 -1
  481. package/dist/esm-es5/stzh-vspace.entry.js +1 -1
  482. package/dist/esm-es5/translation-utils-2623783f.js +1 -1
  483. package/dist/stzh-components/assets/i18n/de.json +10 -7
  484. package/dist/stzh-components/assets/i18n/en.json +11 -8
  485. package/dist/stzh-components/p-00c4c8c0.system.entry.js +1 -0
  486. package/dist/stzh-components/p-013d269a.system.entry.js +1 -0
  487. package/dist/stzh-components/p-0447b178.system.entry.js +1 -0
  488. package/dist/stzh-components/p-04d390eb.entry.js +1 -0
  489. package/dist/stzh-components/p-06f5abab.system.entry.js +1 -0
  490. package/dist/stzh-components/{p-9176246f.entry.js → p-0930004d.entry.js} +1 -1
  491. package/dist/stzh-components/p-09f582cd.entry.js +1 -0
  492. package/dist/stzh-components/p-0a2de4e8.entry.js +1 -0
  493. package/dist/stzh-components/p-0ada0b0a.system.entry.js +1 -0
  494. package/dist/stzh-components/p-0af8a184.system.entry.js +1 -0
  495. package/dist/stzh-components/p-0afba769.entry.js +1 -0
  496. package/dist/stzh-components/p-0ce8b383.system.js +1 -0
  497. package/dist/stzh-components/p-0f882e26.system.entry.js +1 -0
  498. package/dist/stzh-components/{p-fbf2f4ed.system.entry.js → p-101f9b11.system.entry.js} +1 -1
  499. package/dist/stzh-components/{p-cff8376e.entry.js → p-12564ee4.entry.js} +1 -1
  500. package/dist/stzh-components/p-125a8244.entry.js +1 -0
  501. package/dist/stzh-components/{p-bee6eef5.entry.js → p-126a0f14.entry.js} +1 -1
  502. package/dist/stzh-components/p-12e03b78.system.entry.js +1 -0
  503. package/dist/stzh-components/{p-30ae5c00.system.entry.js → p-16b3d4ee.system.entry.js} +1 -1
  504. package/dist/stzh-components/p-1783b15a.js +12 -0
  505. package/dist/stzh-components/p-1c2c9ca8.entry.js +1 -0
  506. package/dist/stzh-components/p-1f925e84.system.entry.js +1 -0
  507. package/dist/stzh-components/p-20bd79d0.entry.js +1 -0
  508. package/dist/stzh-components/p-246cd179.js +1 -0
  509. package/dist/stzh-components/p-26889a91.entry.js +9 -0
  510. package/dist/stzh-components/p-2ad73c0c.system.entry.js +1 -0
  511. package/dist/stzh-components/p-2b67b0b3.system.entry.js +9 -0
  512. package/dist/stzh-components/p-2ba88798.entry.js +1 -0
  513. package/dist/stzh-components/{p-60274e67.system.entry.js → p-2c490268.system.entry.js} +1 -1
  514. package/dist/stzh-components/p-2e6ef670.entry.js +1 -0
  515. package/dist/stzh-components/p-2f4448c9.system.entry.js +1 -0
  516. package/dist/stzh-components/{p-376946bc.entry.js → p-2f4c5e18.entry.js} +1 -1
  517. package/dist/stzh-components/p-3238b0bf.entry.js +1 -0
  518. package/dist/stzh-components/p-36e72c1d.system.js +2 -0
  519. package/dist/stzh-components/{p-fd265f3a.entry.js → p-38e7645a.entry.js} +1 -1
  520. package/dist/stzh-components/{p-ed6adb96.entry.js → p-3b00d8b8.entry.js} +1 -1
  521. package/dist/stzh-components/p-3e433996.entry.js +1 -0
  522. package/dist/stzh-components/p-3f676d99.system.entry.js +1 -0
  523. package/dist/stzh-components/{p-0c8427bc.entry.js → p-40798ed2.entry.js} +1 -1
  524. package/dist/stzh-components/p-418e04f7.system.entry.js +1 -0
  525. package/dist/stzh-components/{p-3145cd2f.entry.js → p-41fa7e81.entry.js} +1 -1
  526. package/dist/stzh-components/p-4370efe7.entry.js +1 -0
  527. package/dist/stzh-components/p-444b2baf.entry.js +1 -0
  528. package/dist/stzh-components/p-44b03dbb.js +10 -0
  529. package/dist/stzh-components/{p-2577ca1e.system.entry.js → p-44d10402.system.entry.js} +1 -1
  530. package/dist/stzh-components/{p-ed0d51b6.entry.js → p-46d07ed7.entry.js} +1 -1
  531. package/dist/stzh-components/p-470182bb.system.entry.js +1 -0
  532. package/dist/stzh-components/{p-669896ec.entry.js → p-48dee587.entry.js} +1 -1
  533. package/dist/stzh-components/p-48e835cf.system.js +1 -0
  534. package/dist/stzh-components/{p-55b7cda7.system.entry.js → p-4a298117.system.entry.js} +1 -1
  535. package/dist/stzh-components/p-4a60b27f.entry.js +1 -0
  536. package/dist/stzh-components/p-4d8c81b2.system.entry.js +1 -0
  537. package/dist/stzh-components/p-5011f10c.js +1 -0
  538. package/dist/stzh-components/{p-f027e569.system.entry.js → p-512c38b3.system.entry.js} +1 -1
  539. package/dist/stzh-components/p-51b3a560.system.entry.js +1 -0
  540. package/dist/stzh-components/p-537adcfe.system.entry.js +3 -0
  541. package/dist/stzh-components/{p-13051e1c.js → p-538882c8.js} +0 -0
  542. package/dist/stzh-components/{p-6267a327.system.js → p-5494f37d.system.js} +1 -1
  543. package/dist/stzh-components/p-55752bd5.system.entry.js +1 -0
  544. package/dist/stzh-components/p-563b1abc.system.entry.js +1 -0
  545. package/dist/stzh-components/p-59793ef8.system.entry.js +1 -0
  546. package/dist/stzh-components/{p-6a0a76b3.entry.js → p-5b162e4f.entry.js} +1 -1
  547. package/dist/stzh-components/{p-0409bf6b.system.entry.js → p-5c717080.system.entry.js} +1 -1
  548. package/dist/stzh-components/p-5cb1cd93.system.entry.js +1 -0
  549. package/dist/stzh-components/p-5f9b58fb.system.entry.js +1 -0
  550. package/dist/stzh-components/{p-e7cf6c45.system.entry.js → p-617ece76.system.entry.js} +1 -1
  551. package/dist/stzh-components/{p-104df3a8.system.entry.js → p-6414454e.system.entry.js} +1 -1
  552. package/dist/stzh-components/p-6496df0a.system.entry.js +9 -0
  553. package/dist/stzh-components/p-64cdef2f.entry.js +1 -0
  554. package/dist/stzh-components/p-64e27ac1.entry.js +1 -0
  555. package/dist/stzh-components/p-655e3c46.system.entry.js +1 -0
  556. package/dist/stzh-components/{p-b0d8866d.entry.js → p-65ea23f6.entry.js} +1 -1
  557. package/dist/stzh-components/p-668b4025.system.entry.js +1 -0
  558. package/dist/stzh-components/{p-f03ce92d.system.entry.js → p-6722e89a.system.entry.js} +1 -1
  559. package/dist/stzh-components/p-67ae4994.entry.js +1 -0
  560. package/dist/stzh-components/{p-f39f347c.system.js → p-6845b6ac.system.js} +0 -0
  561. package/dist/stzh-components/p-6adc5f0c.system.entry.js +1 -0
  562. package/dist/stzh-components/p-6c80b920.system.entry.js +1 -0
  563. package/dist/stzh-components/p-6dbf976b.entry.js +1 -0
  564. package/dist/stzh-components/{p-eade9f77.entry.js → p-6e3231ce.entry.js} +1 -1
  565. package/dist/stzh-components/p-705aa56d.entry.js +1 -0
  566. package/dist/stzh-components/{p-288ee536.system.entry.js → p-70f85be3.system.entry.js} +1 -1
  567. package/dist/stzh-components/{p-62a2684d.entry.js → p-7185f634.entry.js} +1 -1
  568. package/dist/stzh-components/{p-11d7b426.system.entry.js → p-74d6e349.system.entry.js} +1 -1
  569. package/dist/stzh-components/p-77d0a54b.system.entry.js +1 -0
  570. package/dist/stzh-components/p-7b0c04b3.system.entry.js +1 -0
  571. package/dist/stzh-components/{p-2b5b1e4a.system.entry.js → p-7e4261ce.system.entry.js} +2 -2
  572. package/dist/stzh-components/{p-f5db6234.entry.js → p-7e94b787.entry.js} +1 -1
  573. package/dist/stzh-components/{p-df5f49b4.js → p-7f0fb35c.js} +1 -1
  574. package/dist/stzh-components/{p-44e0b101.system.entry.js → p-7f1b7b44.system.entry.js} +1 -1
  575. package/dist/stzh-components/{p-97e16665.system.entry.js → p-80f497d8.system.entry.js} +1 -1
  576. package/dist/stzh-components/p-81b4b0e6.system.entry.js +1 -0
  577. package/dist/stzh-components/{p-8cc119d3.system.entry.js → p-8361c9d8.system.entry.js} +1 -1
  578. package/dist/stzh-components/{p-cc720d2d.entry.js → p-838b0542.entry.js} +1 -1
  579. package/dist/stzh-components/p-862e7723.system.entry.js +1 -0
  580. package/dist/stzh-components/{p-49b292df.entry.js → p-86336227.entry.js} +1 -1
  581. package/dist/stzh-components/p-8715198b.entry.js +1 -0
  582. package/dist/stzh-components/p-8972cf20.entry.js +1 -0
  583. package/dist/stzh-components/p-8c5a6832.system.entry.js +1 -0
  584. package/dist/stzh-components/p-8caafed2.system.entry.js +1 -0
  585. package/dist/stzh-components/p-8ccefd49.system.entry.js +1 -0
  586. package/dist/stzh-components/p-8ee705ed.entry.js +1 -0
  587. package/dist/stzh-components/p-906caf97.js +1 -0
  588. package/dist/stzh-components/{p-9e4e0cc9.entry.js → p-923dffc7.entry.js} +1 -1
  589. package/dist/stzh-components/p-9380fb85.entry.js +1 -0
  590. package/dist/stzh-components/p-97e4272b.system.entry.js +1 -0
  591. package/dist/stzh-components/p-990f395b.entry.js +1 -0
  592. package/dist/stzh-components/p-99a3742a.js +2 -0
  593. package/dist/stzh-components/p-99aacd74.entry.js +1 -0
  594. package/dist/stzh-components/p-99b82949.entry.js +1 -0
  595. package/dist/stzh-components/p-99e27f57.system.js +1 -0
  596. package/dist/stzh-components/{p-576e1345.entry.js → p-99e43fb0.entry.js} +1 -1
  597. package/dist/stzh-components/p-9be29697.entry.js +1 -0
  598. package/dist/stzh-components/{p-eb6d3e6c.entry.js → p-9c35c9cd.entry.js} +1 -1
  599. package/dist/stzh-components/{p-33f80cd2.system.entry.js → p-9d5c70ee.system.entry.js} +1 -1
  600. package/dist/stzh-components/p-9e30ee4a.system.js +10 -0
  601. package/dist/stzh-components/{p-94830f96.system.entry.js → p-a0a033bd.system.entry.js} +1 -1
  602. package/dist/stzh-components/{p-d5cb80ad.system.entry.js → p-a11ef2d6.system.entry.js} +1 -1
  603. package/dist/stzh-components/p-a2b2cfac.system.entry.js +1 -0
  604. package/dist/stzh-components/p-a3c7aa63.entry.js +9 -0
  605. package/dist/stzh-components/p-a408bfba.system.js +1 -1
  606. package/dist/stzh-components/{p-68400ee7.entry.js → p-a44527f8.entry.js} +1 -1
  607. package/dist/stzh-components/{p-8bbaed3a.entry.js → p-a4dd5ba3.entry.js} +1 -1
  608. package/dist/stzh-components/{p-c30600d0.system.entry.js → p-a51dd210.system.entry.js} +1 -1
  609. package/dist/stzh-components/{p-4b0f473e.entry.js → p-a693ab41.entry.js} +1 -1
  610. package/dist/stzh-components/p-a6be6aca.system.entry.js +1 -0
  611. package/dist/stzh-components/p-ac3e3b2a.system.entry.js +1 -0
  612. package/dist/stzh-components/{p-72389069.entry.js → p-ad816fd9.entry.js} +1 -1
  613. package/dist/stzh-components/p-af67ea5e.entry.js +7 -0
  614. package/dist/stzh-components/p-b050c1f4.entry.js +1 -0
  615. package/dist/stzh-components/{p-be79497f.system.entry.js → p-b1ffc2a9.system.entry.js} +1 -1
  616. package/dist/stzh-components/p-b395bed5.system.entry.js +1 -0
  617. package/dist/stzh-components/{p-30ba96a3.entry.js → p-b689b882.entry.js} +1 -1
  618. package/dist/stzh-components/{p-5c3c9ad4.entry.js → p-b6e6f847.entry.js} +1 -1
  619. package/dist/stzh-components/p-b92734db.entry.js +1 -0
  620. package/dist/stzh-components/p-b9427914.entry.js +1 -0
  621. package/dist/stzh-components/p-bada7caa.system.entry.js +1 -0
  622. package/dist/stzh-components/p-bb82fa2d.system.entry.js +1 -0
  623. package/dist/stzh-components/p-bc36fda4.system.entry.js +1 -0
  624. package/dist/stzh-components/{p-1d8272a5.entry.js → p-be68b323.entry.js} +1 -1
  625. package/dist/stzh-components/p-bf071e77.system.js +1 -0
  626. package/dist/stzh-components/{p-84965eac.entry.js → p-c0ec905d.entry.js} +1 -1
  627. package/dist/stzh-components/p-c2f909c1.system.entry.js +1 -0
  628. package/dist/stzh-components/p-c33b7d23.entry.js +1 -0
  629. package/dist/stzh-components/p-c646c712.entry.js +1 -0
  630. package/dist/stzh-components/p-c8cc2563.system.entry.js +1 -0
  631. package/dist/stzh-components/p-c9c7d88a.entry.js +1 -0
  632. package/dist/stzh-components/p-cbe6d2ea.entry.js +1 -0
  633. package/dist/stzh-components/{p-2732d8c8.system.js → p-cbfae706.system.js} +0 -0
  634. package/dist/stzh-components/p-ccf023da.entry.js +3 -0
  635. package/dist/stzh-components/p-d04bbc19.js +1 -0
  636. package/dist/stzh-components/p-d32965be.system.entry.js +1 -0
  637. package/dist/stzh-components/p-d54ff4d4.system.entry.js +1 -0
  638. package/dist/stzh-components/p-d5644c25.entry.js +8 -0
  639. package/dist/stzh-components/p-d6a11daa.entry.js +1 -0
  640. package/dist/stzh-components/p-d943e02c.system.entry.js +1 -0
  641. package/dist/stzh-components/{p-a474826c.system.entry.js → p-da85cf73.system.entry.js} +1 -1
  642. package/dist/stzh-components/p-da98a8bb.system.entry.js +7 -0
  643. package/dist/stzh-components/p-db306e24.entry.js +1 -0
  644. package/dist/stzh-components/{p-d2f6fb1b.system.js → p-db339680.system.js} +1 -1
  645. package/dist/stzh-components/{p-f5fdc88c.entry.js → p-dbe5320f.entry.js} +3 -3
  646. package/dist/stzh-components/p-dd1bb919.entry.js +1 -0
  647. package/dist/stzh-components/p-dd5f29aa.entry.js +1 -0
  648. package/dist/stzh-components/p-de9edaf2.entry.js +1 -0
  649. package/dist/stzh-components/p-e3afc8f7.entry.js +1 -0
  650. package/dist/stzh-components/p-e54ef44f.system.entry.js +1 -0
  651. package/dist/stzh-components/p-e78fe899.system.entry.js +1 -0
  652. package/dist/stzh-components/{p-60d9bf98.system.entry.js → p-e7909de9.system.entry.js} +1 -1
  653. package/dist/stzh-components/{p-58af0855.system.entry.js → p-e7e9b295.system.entry.js} +1 -1
  654. package/dist/stzh-components/p-e8feb92e.system.entry.js +1 -0
  655. package/dist/stzh-components/p-eb7773f3.entry.js +1 -0
  656. package/dist/stzh-components/p-ed58b644.system.entry.js +1 -0
  657. package/dist/stzh-components/p-ee4b939a.entry.js +1 -0
  658. package/dist/stzh-components/{p-28d8aa31.entry.js → p-f0e2a32d.entry.js} +1 -1
  659. package/dist/stzh-components/{p-0cff4e01.entry.js → p-f2deda0a.entry.js} +1 -1
  660. package/dist/stzh-components/p-f3d69226.system.entry.js +1 -0
  661. package/dist/stzh-components/p-f433e62a.system.entry.js +1 -0
  662. package/dist/stzh-components/p-f5b2c12e.entry.js +1 -0
  663. package/dist/stzh-components/{p-4226dec6.system.entry.js → p-f7bb76d8.system.entry.js} +1 -1
  664. package/dist/stzh-components/{p-4c7e52aa.entry.js → p-f8feb07b.entry.js} +1 -1
  665. package/dist/stzh-components/p-f9ab0433.entry.js +1 -0
  666. package/dist/stzh-components/p-fa615b51.system.entry.js +1 -0
  667. package/dist/stzh-components/p-fd15cc86.entry.js +1 -0
  668. package/dist/stzh-components/p-fd3acd16.system.entry.js +1 -0
  669. package/dist/stzh-components/p-fe5d5fc8.entry.js +1 -0
  670. package/dist/stzh-components/p-fe9acc68.system.entry.js +1 -0
  671. package/dist/stzh-components/stzh-components.css +1 -1
  672. package/dist/stzh-components/stzh-components.esm.js +1 -1
  673. package/dist/stzh-components/stzh-components.js +1 -1
  674. package/dist/types/components/stzh-actionset/stzh-actionset.localization.d.ts +1 -1
  675. package/dist/types/components/stzh-appointments/stzh-appointments.localization.d.ts +1 -1
  676. package/dist/types/components/stzh-audio/stzh-audio.localization.d.ts +1 -1
  677. package/dist/types/components/stzh-calendar/stzh-calendar-day.d.ts +1 -1
  678. package/dist/types/components/stzh-calendar/stzh-calendar-month.d.ts +1 -1
  679. package/dist/types/components/stzh-calendar/stzh-calendar.localization.d.ts +1 -1
  680. package/dist/types/components/stzh-card/stzh-card.localization.d.ts +1 -1
  681. package/dist/types/components/stzh-card-list/stzh-card-list.localization.d.ts +1 -1
  682. package/dist/types/components/stzh-container/stzh-container.d.ts +2 -0
  683. package/dist/types/components/stzh-datamessagelist-item/stzh-datamessagelist-item.localization.d.ts +2 -1
  684. package/dist/types/components/stzh-datatable/stzh-datatable.localization.d.ts +1 -1
  685. package/dist/types/components/stzh-datepicker/stzh-datepicker.localization.d.ts +1 -1
  686. package/dist/types/components/stzh-dialog/stzh-dialog.localization.d.ts +1 -1
  687. package/dist/types/components/stzh-dropdown/stzh-dropdown.localization.d.ts +1 -1
  688. package/dist/types/components/stzh-footer/stzh-footer.localization.d.ts +1 -1
  689. package/dist/types/components/stzh-ghettobox/stzh-ghettobox.localization.d.ts +1 -1
  690. package/dist/types/components/stzh-hspace/stzh-hspace.d.ts +3 -1
  691. package/dist/types/components/stzh-input/stzh-input-description.d.ts +1 -1
  692. package/dist/types/components/stzh-message/stzh-message.localization.d.ts +1 -1
  693. package/dist/types/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.localization.d.ts +1 -1
  694. package/dist/types/components/stzh-olmap/stzh-olmap.localization.d.ts +1 -1
  695. package/dist/types/components/stzh-popover/stzh-popover.localization.d.ts +2 -1
  696. package/dist/types/components/stzh-progressbar-item/stzh-progressbar-item.d.ts +1 -0
  697. package/dist/types/components/stzh-saptcha/stzh-saptcha.localization.d.ts +1 -1
  698. package/dist/types/components/stzh-share/stzh-share.localization.d.ts +1 -1
  699. package/dist/types/components/stzh-sortable/stzh-sortable.localization.d.ts +1 -1
  700. package/dist/types/components/stzh-space/stzh-space.d.ts +27 -0
  701. package/dist/types/components/stzh-tooltip/stzh-tooltip.localization.d.ts +2 -1
  702. package/dist/types/components/stzh-upload/stzh-upload.localization.d.ts +1 -1
  703. package/dist/types/components/stzh-vbz-majorticker/stzh-vbz-majorticker.localization.d.ts +1 -1
  704. package/dist/types/components/stzh-vbz-ticker/stzh-vbz-ticker.localization.d.ts +1 -1
  705. package/dist/types/components/stzh-vspace/stzh-vspace.d.ts +3 -1
  706. package/dist/types/components.d.ts +416 -22
  707. package/dist/types/index.d.ts +139 -132
  708. package/dist/types/stencil-public-runtime.d.ts +59 -3
  709. package/dist/types/utils/date-adapter.d.ts +2 -2
  710. package/dist/types/utils/h.d.ts +3 -3
  711. package/dist/types/utils/test-utils.d.ts +2 -2
  712. package/dist/types/utils/translation-utils.d.ts +5 -5
  713. package/dist/vscode-data.json +675 -104
  714. package/loader/index.d.ts +9 -0
  715. package/package.json +11 -11
  716. package/dist/cjs/index-8bd1552a.js +0 -2019
  717. package/dist/cjs/stzh-chip.cjs.entry.js +0 -99
  718. package/dist/cjs/stzh-clamp.cjs.entry.js +0 -27
  719. package/dist/cjs/stzh-contactaddress.cjs.entry.js +0 -91
  720. package/dist/collection/pages/example.stories.js +0 -170
  721. package/dist/components/index3.js +0 -2017
  722. package/dist/components/stzh-contactaddress.js +0 -157
  723. package/dist/esm/index-545902f4.js +0 -2017
  724. package/dist/esm/stzh-chip.entry.js +0 -95
  725. package/dist/esm/stzh-clamp.entry.js +0 -23
  726. package/dist/esm/stzh-contactaddress.entry.js +0 -87
  727. package/dist/esm-es5/animation-utils-25c74e5b.js +0 -1
  728. package/dist/esm-es5/app-globals-17c2ba8d.js +0 -1
  729. package/dist/esm-es5/arrow-86a679c7.js +0 -1
  730. package/dist/esm-es5/focus-trap.esm-074705a3.js +0 -9
  731. package/dist/esm-es5/index-011c84fe.js +0 -2
  732. package/dist/esm-es5/index-545902f4.js +0 -1
  733. package/dist/esm-es5/stzh-chip.entry.js +0 -1
  734. package/dist/esm-es5/stzh-clamp.entry.js +0 -1
  735. package/dist/esm-es5/stzh-contactaddress.entry.js +0 -1
  736. package/dist/stzh-components/p-006751fc.system.entry.js +0 -1
  737. package/dist/stzh-components/p-025c9c5b.entry.js +0 -1
  738. package/dist/stzh-components/p-02fd7470.entry.js +0 -1
  739. package/dist/stzh-components/p-037357fc.system.entry.js +0 -1
  740. package/dist/stzh-components/p-04a45622.system.entry.js +0 -1
  741. package/dist/stzh-components/p-09da70d8.entry.js +0 -1
  742. package/dist/stzh-components/p-0a647396.entry.js +0 -1
  743. package/dist/stzh-components/p-0b264a7a.entry.js +0 -1
  744. package/dist/stzh-components/p-0b9dc96d.system.js +0 -1
  745. package/dist/stzh-components/p-10c046fc.system.entry.js +0 -1
  746. package/dist/stzh-components/p-171c5795.system.entry.js +0 -1
  747. package/dist/stzh-components/p-19ab7e34.system.entry.js +0 -1
  748. package/dist/stzh-components/p-1ca12032.system.entry.js +0 -1
  749. package/dist/stzh-components/p-1da26ca1.entry.js +0 -1
  750. package/dist/stzh-components/p-1e4b4d71.system.js +0 -1
  751. package/dist/stzh-components/p-1fe1169e.entry.js +0 -1
  752. package/dist/stzh-components/p-213959b7.entry.js +0 -1
  753. package/dist/stzh-components/p-22b06793.entry.js +0 -1
  754. package/dist/stzh-components/p-231e6e6a.system.entry.js +0 -1
  755. package/dist/stzh-components/p-2862cdd8.system.entry.js +0 -1
  756. package/dist/stzh-components/p-2a5855f8.js +0 -1
  757. package/dist/stzh-components/p-2bdc71ae.system.entry.js +0 -1
  758. package/dist/stzh-components/p-31029226.entry.js +0 -1
  759. package/dist/stzh-components/p-311813bc.system.entry.js +0 -1
  760. package/dist/stzh-components/p-31c3469c.entry.js +0 -1
  761. package/dist/stzh-components/p-34b45788.entry.js +0 -7
  762. package/dist/stzh-components/p-3848d8ee.entry.js +0 -1
  763. package/dist/stzh-components/p-38f9cbf3.system.entry.js +0 -1
  764. package/dist/stzh-components/p-3905ca20.entry.js +0 -1
  765. package/dist/stzh-components/p-391e6b90.entry.js +0 -1
  766. package/dist/stzh-components/p-3a1ff759.entry.js +0 -1
  767. package/dist/stzh-components/p-40a19ce6.js +0 -10
  768. package/dist/stzh-components/p-4228cd58.system.entry.js +0 -1
  769. package/dist/stzh-components/p-441ea784.entry.js +0 -1
  770. package/dist/stzh-components/p-49bb09a5.entry.js +0 -1
  771. package/dist/stzh-components/p-4bd7dafb.system.entry.js +0 -1
  772. package/dist/stzh-components/p-4cd9f5c7.system.entry.js +0 -1
  773. package/dist/stzh-components/p-51be647d.entry.js +0 -1
  774. package/dist/stzh-components/p-53934cfd.js +0 -1
  775. package/dist/stzh-components/p-55f6fa41.system.entry.js +0 -1
  776. package/dist/stzh-components/p-57237509.system.entry.js +0 -1
  777. package/dist/stzh-components/p-5b1c1cf7.entry.js +0 -1
  778. package/dist/stzh-components/p-5b379647.system.entry.js +0 -1
  779. package/dist/stzh-components/p-5ddf8258.system.entry.js +0 -1
  780. package/dist/stzh-components/p-5fd9ae99.system.entry.js +0 -1
  781. package/dist/stzh-components/p-60ec90b2.system.entry.js +0 -1
  782. package/dist/stzh-components/p-64422176.entry.js +0 -9
  783. package/dist/stzh-components/p-65675e11.entry.js +0 -1
  784. package/dist/stzh-components/p-661831da.entry.js +0 -1
  785. package/dist/stzh-components/p-71c07419.system.entry.js +0 -1
  786. package/dist/stzh-components/p-75068cd7.system.entry.js +0 -1
  787. package/dist/stzh-components/p-7684506e.system.entry.js +0 -1
  788. package/dist/stzh-components/p-7adc28a4.system.entry.js +0 -7
  789. package/dist/stzh-components/p-7ce59988.system.entry.js +0 -1
  790. package/dist/stzh-components/p-7da446d5.js +0 -1
  791. package/dist/stzh-components/p-7e94dde2.entry.js +0 -1
  792. package/dist/stzh-components/p-812ea5e9.system.entry.js +0 -1
  793. package/dist/stzh-components/p-8364475f.js +0 -12
  794. package/dist/stzh-components/p-83830baa.system.entry.js +0 -1
  795. package/dist/stzh-components/p-84c86e4c.system.entry.js +0 -1
  796. package/dist/stzh-components/p-88a31179.system.entry.js +0 -1
  797. package/dist/stzh-components/p-88cbd2c0.entry.js +0 -1
  798. package/dist/stzh-components/p-8a1d00fe.entry.js +0 -3
  799. package/dist/stzh-components/p-92afa8df.entry.js +0 -1
  800. package/dist/stzh-components/p-95b490ec.system.entry.js +0 -1
  801. package/dist/stzh-components/p-9743f558.system.entry.js +0 -1
  802. package/dist/stzh-components/p-996579d0.entry.js +0 -1
  803. package/dist/stzh-components/p-99f92c6d.system.entry.js +0 -1
  804. package/dist/stzh-components/p-9a5ebb1f.js +0 -2
  805. package/dist/stzh-components/p-9dac46e2.system.entry.js +0 -1
  806. package/dist/stzh-components/p-9e38b823.system.entry.js +0 -1
  807. package/dist/stzh-components/p-a16dc363.entry.js +0 -1
  808. package/dist/stzh-components/p-a17754c7.system.entry.js +0 -1
  809. package/dist/stzh-components/p-a53c0a98.entry.js +0 -1
  810. package/dist/stzh-components/p-a795868f.entry.js +0 -1
  811. package/dist/stzh-components/p-a8101552.entry.js +0 -8
  812. package/dist/stzh-components/p-a934dd4d.entry.js +0 -1
  813. package/dist/stzh-components/p-aacf685b.system.entry.js +0 -3
  814. package/dist/stzh-components/p-ab28e094.system.entry.js +0 -1
  815. package/dist/stzh-components/p-ac3aa560.system.entry.js +0 -1
  816. package/dist/stzh-components/p-addc48e5.entry.js +0 -1
  817. package/dist/stzh-components/p-af0ab448.system.entry.js +0 -1
  818. package/dist/stzh-components/p-af63f1a4.entry.js +0 -1
  819. package/dist/stzh-components/p-b0fe9349.entry.js +0 -1
  820. package/dist/stzh-components/p-b2145753.system.entry.js +0 -1
  821. package/dist/stzh-components/p-b436a18d.system.entry.js +0 -1
  822. package/dist/stzh-components/p-b908d228.system.entry.js +0 -1
  823. package/dist/stzh-components/p-ba0b93c4.system.entry.js +0 -9
  824. package/dist/stzh-components/p-bfcfbfbb.system.entry.js +0 -1
  825. package/dist/stzh-components/p-c065387a.entry.js +0 -1
  826. package/dist/stzh-components/p-c0fef3d1.entry.js +0 -1
  827. package/dist/stzh-components/p-c26aec94.entry.js +0 -1
  828. package/dist/stzh-components/p-c3a543a6.entry.js +0 -1
  829. package/dist/stzh-components/p-c42435be.entry.js +0 -1
  830. package/dist/stzh-components/p-cf6003d6.js +0 -1
  831. package/dist/stzh-components/p-cfc0bc2e.system.entry.js +0 -1
  832. package/dist/stzh-components/p-d1d5825d.entry.js +0 -1
  833. package/dist/stzh-components/p-d4405931.system.entry.js +0 -1
  834. package/dist/stzh-components/p-d5c0801b.entry.js +0 -1
  835. package/dist/stzh-components/p-db1692fb.entry.js +0 -1
  836. package/dist/stzh-components/p-dbdc01c7.system.js +0 -2
  837. package/dist/stzh-components/p-dce19efd.entry.js +0 -1
  838. package/dist/stzh-components/p-ded16c0e.system.js +0 -1
  839. package/dist/stzh-components/p-e20369c8.system.js +0 -10
  840. package/dist/stzh-components/p-e2e54f09.system.js +0 -1
  841. package/dist/stzh-components/p-e46d82b9.system.entry.js +0 -1
  842. package/dist/stzh-components/p-e71cd5cd.system.entry.js +0 -1
  843. package/dist/stzh-components/p-e72ca013.system.entry.js +0 -1
  844. package/dist/stzh-components/p-e76a3647.entry.js +0 -1
  845. package/dist/stzh-components/p-e812d35e.system.entry.js +0 -1
  846. package/dist/stzh-components/p-ec3a472a.system.entry.js +0 -1
  847. package/dist/stzh-components/p-f3107fc7.system.entry.js +0 -1
  848. package/dist/stzh-components/p-f37be5d7.entry.js +0 -1
  849. package/dist/stzh-components/p-f59b3545.system.entry.js +0 -1
  850. package/dist/stzh-components/p-f792fc8f.entry.js +0 -1
  851. package/dist/stzh-components/p-fcec6003.system.entry.js +0 -1
@@ -1,3 +1,3 @@
1
- import{r as registerInstance,h,a as Host,g as getElement}from"./index-011c84fe.js";import{g as getAugmentedNamespace,c as createCommonjsModule,a as getDefaultExportFromCjs,b as commonjsGlobal}from"./_commonjsHelpers-f9dc4873.js";var version="4.13.0";function ascending$2(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function bisector(t){if(t.length===1)t=ascendingComparator(t);return{left:function(e,n,r,i){if(r==null)r=0;if(i==null)i=e.length;while(r<i){var a=r+i>>>1;if(t(e[a],n)<0)r=a+1;else i=a}return r},right:function(e,n,r,i){if(r==null)r=0;if(i==null)i=e.length;while(r<i){var a=r+i>>>1;if(t(e[a],n)>0)i=a;else r=a+1}return r}}}function ascendingComparator(t){return function(e,n){return ascending$2(t(e),n)}}var ascendingBisect=bisector(ascending$2);var bisectRight=ascendingBisect.right;var bisectLeft=ascendingBisect.left;function pairs(t,e){if(e==null)e=pair;var n=0,r=t.length-1,i=t[0],a=new Array(r<0?0:r);while(n<r)a[n]=e(i,i=t[++n]);return a}function pair(t,e){return[t,e]}function cross$2(t,e,n){var r=t.length,i=e.length,a=new Array(r*i),o,s,l,u;if(n==null)n=pair;for(o=l=0;o<r;++o){for(u=t[o],s=0;s<i;++s,++l){a[l]=n(u,e[s])}}return a}function descending$2(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}function number$3(t){return t===null?NaN:+t}function variance(t,e){var n=t.length,r=0,i=-1,a=0,o,s,l=0;if(e==null){while(++i<n){if(!isNaN(o=number$3(t[i]))){s=o-a;a+=s/++r;l+=s*(o-a)}}}else{while(++i<n){if(!isNaN(o=number$3(e(t[i],i,t)))){s=o-a;a+=s/++r;l+=s*(o-a)}}}if(r>1)return l/(r-1)}function deviation(t,e){var n=variance(t,e);return n?Math.sqrt(n):n}function extent$1(t,e){var n=t.length,r=-1,i,a,o;if(e==null){while(++r<n){if((i=t[r])!=null&&i>=i){a=o=i;while(++r<n){if((i=t[r])!=null){if(a>i)a=i;if(o<i)o=i}}}}}else{while(++r<n){if((i=e(t[r],r,t))!=null&&i>=i){a=o=i;while(++r<n){if((i=e(t[r],r,t))!=null){if(a>i)a=i;if(o<i)o=i}}}}}return[a,o]}var array$2=Array.prototype;var slice$6=array$2.slice;var map$2=array$2.map;function constant$c(t){return function(){return t}}function identity$9(t){return t}function sequence(t,e,n){t=+t,e=+e,n=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+n;var r=-1,i=Math.max(0,Math.ceil((e-t)/n))|0,a=new Array(i);while(++r<i){a[r]=t+r*n}return a}var e10=Math.sqrt(50),e5=Math.sqrt(10),e2=Math.sqrt(2);function ticks(t,e,n){var r,i=-1,a,o,s;e=+e,t=+t,n=+n;if(t===e&&n>0)return[t];if(r=e<t)a=t,t=e,e=a;if((s=tickIncrement(t,e,n))===0||!isFinite(s))return[];if(s>0){t=Math.ceil(t/s);e=Math.floor(e/s);o=new Array(a=Math.ceil(e-t+1));while(++i<a)o[i]=(t+i)*s}else{t=Math.floor(t*s);e=Math.ceil(e*s);o=new Array(a=Math.ceil(t-e+1));while(++i<a)o[i]=(t-i)/s}if(r)o.reverse();return o}function tickIncrement(t,e,n){var r=(e-t)/Math.max(0,n),i=Math.floor(Math.log(r)/Math.LN10),a=r/Math.pow(10,i);return i>=0?(a>=e10?10:a>=e5?5:a>=e2?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(a>=e10?10:a>=e5?5:a>=e2?2:1)}function tickStep(t,e,n){var r=Math.abs(e-t)/Math.max(0,n),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),a=r/i;if(a>=e10)i*=10;else if(a>=e5)i*=5;else if(a>=e2)i*=2;return e<t?-i:i}function sturges(t){return Math.ceil(Math.log(t.length)/Math.LN2)+1}function histogram(){var t=identity$9,e=extent$1,n=sturges;function r(r){var i,a=r.length,o,s=new Array(a);for(i=0;i<a;++i){s[i]=t(r[i],i,r)}var l=e(s),u=l[0],c=l[1],f=n(s,u,c);if(!Array.isArray(f)){f=tickStep(u,c,f);f=sequence(Math.ceil(u/f)*f,Math.floor(c/f)*f,f)}var h=f.length;while(f[0]<=u)f.shift(),--h;while(f[h-1]>c)f.pop(),--h;var d=new Array(h+1),p;for(i=0;i<=h;++i){p=d[i]=[];p.x0=i>0?f[i-1]:u;p.x1=i<h?f[i]:c}for(i=0;i<a;++i){o=s[i];if(u<=o&&o<=c){d[bisectRight(f,o,0,h)].push(r[i])}}return d}r.value=function(e){return arguments.length?(t=typeof e==="function"?e:constant$c(e),r):t};r.domain=function(t){return arguments.length?(e=typeof t==="function"?t:constant$c([t[0],t[1]]),r):e};r.thresholds=function(t){return arguments.length?(n=typeof t==="function"?t:Array.isArray(t)?constant$c(slice$6.call(t)):constant$c(t),r):n};return r}function threshold$1(t,e,n){if(n==null)n=number$3;if(!(r=t.length))return;if((e=+e)<=0||r<2)return+n(t[0],0,t);if(e>=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,a=Math.floor(i),o=+n(t[a],a,t),s=+n(t[a+1],a+1,t);return o+(s-o)*(i-a)}function freedmanDiaconis(t,e,n){t=map$2.call(t,number$3).sort(ascending$2);return Math.ceil((n-e)/(2*(threshold$1(t,.75)-threshold$1(t,.25))*Math.pow(t.length,-1/3)))}function scott(t,e,n){return Math.ceil((n-e)/(3.5*deviation(t)*Math.pow(t.length,-1/3)))}function max$2(t,e){var n=t.length,r=-1,i,a;if(e==null){while(++r<n){if((i=t[r])!=null&&i>=i){a=i;while(++r<n){if((i=t[r])!=null&&i>a){a=i}}}}}else{while(++r<n){if((i=e(t[r],r,t))!=null&&i>=i){a=i;while(++r<n){if((i=e(t[r],r,t))!=null&&i>a){a=i}}}}}return a}function mean(t,e){var n=t.length,r=n,i=-1,a,o=0;if(e==null){while(++i<n){if(!isNaN(a=number$3(t[i])))o+=a;else--r}}else{while(++i<n){if(!isNaN(a=number$3(e(t[i],i,t))))o+=a;else--r}}if(r)return o/r}function median(t,e){var n=t.length,r=-1,i,a=[];if(e==null){while(++r<n){if(!isNaN(i=number$3(t[r]))){a.push(i)}}}else{while(++r<n){if(!isNaN(i=number$3(e(t[r],r,t)))){a.push(i)}}}return threshold$1(a.sort(ascending$2),.5)}function merge$1(t){var e=t.length,n,r=-1,i=0,a,o;while(++r<e)i+=t[r].length;a=new Array(i);while(--e>=0){o=t[e];n=o.length;while(--n>=0){a[--i]=o[n]}}return a}function min$1(t,e){var n=t.length,r=-1,i,a;if(e==null){while(++r<n){if((i=t[r])!=null&&i>=i){a=i;while(++r<n){if((i=t[r])!=null&&a>i){a=i}}}}}else{while(++r<n){if((i=e(t[r],r,t))!=null&&i>=i){a=i;while(++r<n){if((i=e(t[r],r,t))!=null&&a>i){a=i}}}}}return a}function permute(t,e){var n=e.length,r=new Array(n);while(n--)r[n]=t[e[n]];return r}function scan(t,e){if(!(n=t.length))return;var n,r=0,i=0,a,o=t[i];if(e==null)e=ascending$2;while(++r<n){if(e(a=t[r],o)<0||e(o,o)!==0){o=a,i=r}}if(e(o,o)===0)return i}function shuffle$1(t,e,n){var r=(n==null?t.length:n)-(e=e==null?0:+e),i,a;while(r){a=Math.random()*r--|0;i=t[r+e];t[r+e]=t[a+e];t[a+e]=i}return t}function sum$2(t,e){var n=t.length,r=-1,i,a=0;if(e==null){while(++r<n){if(i=+t[r])a+=i}}else{while(++r<n){if(i=+e(t[r],r,t))a+=i}}return a}function transpose(t){if(!(a=t.length))return[];for(var e=-1,n=min$1(t,length$2),r=new Array(n);++e<n;){for(var i=-1,a,o=r[e]=new Array(a);++i<a;){o[i]=t[i][e]}}return r}function length$2(t){return t.length}function zip(){return transpose(arguments)}var slice$5=Array.prototype.slice;function identity$8(t){return t}var top=1,right=2,bottom=3,left=4,epsilon$4=1e-6;function translateX(t){return"translate("+(t+.5)+",0)"}function translateY(t){return"translate(0,"+(t+.5)+")"}function number$2(t){return function(e){return+t(e)}}function center$1(t){var e=Math.max(0,t.bandwidth()-1)/2;if(t.round())e=Math.round(e);return function(n){return+t(n)+e}}function entering(){return!this.__axis}function axis(t,e){var n=[],r=null,i=null,a=6,o=6,s=3,l=t===top||t===left?-1:1,u=t===left||t===right?"x":"y",c=t===top||t===bottom?translateX:translateY;function f(f){var h=r==null?e.ticks?e.ticks.apply(e,n):e.domain():r,d=i==null?e.tickFormat?e.tickFormat.apply(e,n):identity$8:i,p=Math.max(a,0)+s,v=e.range(),m=+v[0]+.5,g=+v[v.length-1]+.5,y=(e.bandwidth?center$1:number$2)(e.copy()),_=f.selection?f.selection():f,b=_.selectAll(".domain").data([null]),x=_.selectAll(".tick").data(h,e).order(),w=x.exit(),$=x.enter().append("g").attr("class","tick"),k=x.select("line"),M=x.select("text");b=b.merge(b.enter().insert("path",".tick").attr("class","domain").attr("stroke","#000"));x=x.merge($);k=k.merge($.append("line").attr("stroke","#000").attr(u+"2",l*a));M=M.merge($.append("text").attr("fill","#000").attr(u,l*p).attr("dy",t===top?"0em":t===bottom?"0.71em":"0.32em"));if(f!==_){b=b.transition(f);x=x.transition(f);k=k.transition(f);M=M.transition(f);w=w.transition(f).attr("opacity",epsilon$4).attr("transform",(function(t){return isFinite(t=y(t))?c(t):this.getAttribute("transform")}));$.attr("opacity",epsilon$4).attr("transform",(function(t){var e=this.parentNode.__axis;return c(e&&isFinite(e=e(t))?e:y(t))}))}w.remove();b.attr("d",t===left||t==right?"M"+l*o+","+m+"H0.5V"+g+"H"+l*o:"M"+m+","+l*o+"V0.5H"+g+"V"+l*o);x.attr("opacity",1).attr("transform",(function(t){return c(y(t))}));k.attr(u+"2",l*a);M.attr(u,l*p).text(d);_.filter(entering).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===right?"start":t===left?"end":"middle");_.each((function(){this.__axis=y}))}f.scale=function(t){return arguments.length?(e=t,f):e};f.ticks=function(){return n=slice$5.call(arguments),f};f.tickArguments=function(t){return arguments.length?(n=t==null?[]:slice$5.call(t),f):n.slice()};f.tickValues=function(t){return arguments.length?(r=t==null?null:slice$5.call(t),f):r&&r.slice()};f.tickFormat=function(t){return arguments.length?(i=t,f):i};f.tickSize=function(t){return arguments.length?(a=o=+t,f):a};f.tickSizeInner=function(t){return arguments.length?(a=+t,f):a};f.tickSizeOuter=function(t){return arguments.length?(o=+t,f):o};f.tickPadding=function(t){return arguments.length?(s=+t,f):s};return f}function axisTop(t){return axis(top,t)}function axisRight(t){return axis(right,t)}function axisBottom(t){return axis(bottom,t)}function axisLeft(t){return axis(left,t)}var noop$2={value:function(){}};function dispatch(){for(var t=0,e=arguments.length,n={},r;t<e;++t){if(!(r=arguments[t]+"")||r in n)throw new Error("illegal type: "+r);n[r]=[]}return new Dispatch(n)}function Dispatch(t){this._=t}function parseTypenames$1(t,e){return t.trim().split(/^|\s+/).map((function(t){var n="",r=t.indexOf(".");if(r>=0)n=t.slice(r+1),t=t.slice(0,r);if(t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}}))}Dispatch.prototype=dispatch.prototype={constructor:Dispatch,on:function(t,e){var n=this._,r=parseTypenames$1(t+"",n),i,a=-1,o=r.length;if(arguments.length<2){while(++a<o)if((i=(t=r[a]).type)&&(i=get$1(n[i],t.name)))return i;return}if(e!=null&&typeof e!=="function")throw new Error("invalid callback: "+e);while(++a<o){if(i=(t=r[a]).type)n[i]=set$2(n[i],t.name,e);else if(e==null)for(i in n)n[i]=set$2(n[i],t.name,null)}return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new Dispatch(t)},call:function(t,e){if((i=arguments.length-2)>0)for(var n=new Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(a=this._[t],r=0,i=a.length;r<i;++r)a[r].value.apply(e,n)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],i=0,a=r.length;i<a;++i)r[i].value.apply(e,n)}};function get$1(t,e){for(var n=0,r=t.length,i;n<r;++n){if((i=t[n]).name===e){return i.value}}}function set$2(t,e,n){for(var r=0,i=t.length;r<i;++r){if(t[r].name===e){t[r]=noop$2,t=t.slice(0,r).concat(t.slice(r+1));break}}if(n!=null)t.push({name:e,value:n});return t}var xhtml="http://www.w3.org/1999/xhtml";var namespaces={svg:"http://www.w3.org/2000/svg",xhtml:xhtml,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function namespace(t){var e=t+="",n=e.indexOf(":");if(n>=0&&(e=t.slice(0,n))!=="xmlns")t=t.slice(n+1);return namespaces.hasOwnProperty(e)?{space:namespaces[e],local:t}:t}function creatorInherit(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===xhtml&&e.documentElement.namespaceURI===xhtml?e.createElement(t):e.createElementNS(n,t)}}function creatorFixed(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function creator(t){var e=namespace(t);return(e.local?creatorFixed:creatorInherit)(e)}function none$2(){}function selector(t){return t==null?none$2:function(){return this.querySelector(t)}}function selection_select(t){if(typeof t!=="function")t=selector(t);for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i){for(var a=e[i],o=a.length,s=r[i]=new Array(o),l,u,c=0;c<o;++c){if((l=a[c])&&(u=t.call(l,l.__data__,c,a))){if("__data__"in l)u.__data__=l.__data__;s[c]=u}}}return new Selection$1(r,this._parents)}function empty$1(){return[]}function selectorAll(t){return t==null?empty$1:function(){return this.querySelectorAll(t)}}function selection_selectAll(t){if(typeof t!=="function")t=selectorAll(t);for(var e=this._groups,n=e.length,r=[],i=[],a=0;a<n;++a){for(var o=e[a],s=o.length,l,u=0;u<s;++u){if(l=o[u]){r.push(t.call(l,l.__data__,u,o));i.push(l)}}}return new Selection$1(r,i)}var matcher=function(t){return function(){return this.matches(t)}};if(typeof document!=="undefined"){var element$1=document.documentElement;if(!element$1.matches){var vendorMatches=element$1.webkitMatchesSelector||element$1.msMatchesSelector||element$1.mozMatchesSelector||element$1.oMatchesSelector;matcher=function(t){return function(){return vendorMatches.call(this,t)}}}}var matcher$1=matcher;function selection_filter(t){if(typeof t!=="function")t=matcher$1(t);for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i){for(var a=e[i],o=a.length,s=r[i]=[],l,u=0;u<o;++u){if((l=a[u])&&t.call(l,l.__data__,u,a)){s.push(l)}}}return new Selection$1(r,this._parents)}function sparse(t){return new Array(t.length)}function selection_enter(){return new Selection$1(this._enter||this._groups.map(sparse),this._parents)}function EnterNode(t,e){this.ownerDocument=t.ownerDocument;this.namespaceURI=t.namespaceURI;this._next=null;this._parent=t;this.__data__=e}EnterNode.prototype={constructor:EnterNode,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function constant$b(t){return function(){return t}}var keyPrefix$1="$";function bindIndex(t,e,n,r,i,a){var o=0,s,l=e.length,u=a.length;for(;o<u;++o){if(s=e[o]){s.__data__=a[o];r[o]=s}else{n[o]=new EnterNode(t,a[o])}}for(;o<l;++o){if(s=e[o]){i[o]=s}}}function bindKey(t,e,n,r,i,a,o){var s,l,u={},c=e.length,f=a.length,h=new Array(c),d;for(s=0;s<c;++s){if(l=e[s]){h[s]=d=keyPrefix$1+o.call(l,l.__data__,s,e);if(d in u){i[s]=l}else{u[d]=l}}}for(s=0;s<f;++s){d=keyPrefix$1+o.call(t,a[s],s,a);if(l=u[d]){r[s]=l;l.__data__=a[s];u[d]=null}else{n[s]=new EnterNode(t,a[s])}}for(s=0;s<c;++s){if((l=e[s])&&u[h[s]]===l){i[s]=l}}}function selection_data(t,e){if(!t){d=new Array(this.size()),u=-1;this.each((function(t){d[++u]=t}));return d}var n=e?bindKey:bindIndex,r=this._parents,i=this._groups;if(typeof t!=="function")t=constant$b(t);for(var a=i.length,o=new Array(a),s=new Array(a),l=new Array(a),u=0;u<a;++u){var c=r[u],f=i[u],h=f.length,d=t.call(c,c&&c.__data__,u,r),p=d.length,v=s[u]=new Array(p),m=o[u]=new Array(p),g=l[u]=new Array(h);n(c,f,v,m,g,d,e);for(var y=0,_=0,b,x;y<p;++y){if(b=v[y]){if(y>=_)_=y+1;while(!(x=m[_])&&++_<p);b._next=x||null}}}o=new Selection$1(o,r);o._enter=s;o._exit=l;return o}function selection_exit(){return new Selection$1(this._exit||this._groups.map(sparse),this._parents)}function selection_merge(t){for(var e=this._groups,n=t._groups,r=e.length,i=n.length,a=Math.min(r,i),o=new Array(r),s=0;s<a;++s){for(var l=e[s],u=n[s],c=l.length,f=o[s]=new Array(c),h,d=0;d<c;++d){if(h=l[d]||u[d]){f[d]=h}}}for(;s<r;++s){o[s]=e[s]}return new Selection$1(o,this._parents)}function selection_order(){for(var t=this._groups,e=-1,n=t.length;++e<n;){for(var r=t[e],i=r.length-1,a=r[i],o;--i>=0;){if(o=r[i]){if(a&&a!==o.nextSibling)a.parentNode.insertBefore(o,a);a=o}}}return this}function selection_sort(t){if(!t)t=ascending$1;function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}for(var n=this._groups,r=n.length,i=new Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,l=i[a]=new Array(s),u,c=0;c<s;++c){if(u=o[c]){l[c]=u}}l.sort(e)}return new Selection$1(i,this._parents).order()}function ascending$1(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function selection_call(){var t=arguments[0];arguments[0]=this;t.apply(null,arguments);return this}function selection_nodes(){var t=new Array(this.size()),e=-1;this.each((function(){t[++e]=this}));return t}function selection_node(){for(var t=this._groups,e=0,n=t.length;e<n;++e){for(var r=t[e],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}}return null}function selection_size(){var t=0;this.each((function(){++t}));return t}function selection_empty(){return!this.node()}function selection_each(t){for(var e=this._groups,n=0,r=e.length;n<r;++n){for(var i=e[n],a=0,o=i.length,s;a<o;++a){if(s=i[a])t.call(s,s.__data__,a,i)}}return this}function attrRemove$1(t){return function(){this.removeAttribute(t)}}function attrRemoveNS$1(t){return function(){this.removeAttributeNS(t.space,t.local)}}function attrConstant$1(t,e){return function(){this.setAttribute(t,e)}}function attrConstantNS$1(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function attrFunction$1(t,e){return function(){var n=e.apply(this,arguments);if(n==null)this.removeAttribute(t);else this.setAttribute(t,n)}}function attrFunctionNS$1(t,e){return function(){var n=e.apply(this,arguments);if(n==null)this.removeAttributeNS(t.space,t.local);else this.setAttributeNS(t.space,t.local,n)}}function selection_attr(t,e){var n=namespace(t);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((e==null?n.local?attrRemoveNS$1:attrRemove$1:typeof e==="function"?n.local?attrFunctionNS$1:attrFunction$1:n.local?attrConstantNS$1:attrConstant$1)(n,e))}function defaultView(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function styleRemove$1(t){return function(){this.style.removeProperty(t)}}function styleConstant$1(t,e,n){return function(){this.style.setProperty(t,e,n)}}function styleFunction$1(t,e,n){return function(){var r=e.apply(this,arguments);if(r==null)this.style.removeProperty(t);else this.style.setProperty(t,r,n)}}function selection_style(t,e,n){return arguments.length>1?this.each((e==null?styleRemove$1:typeof e==="function"?styleFunction$1:styleConstant$1)(t,e,n==null?"":n)):styleValue(this.node(),t)}function styleValue(t,e){return t.style.getPropertyValue(e)||defaultView(t).getComputedStyle(t,null).getPropertyValue(e)}function propertyRemove(t){return function(){delete this[t]}}function propertyConstant(t,e){return function(){this[t]=e}}function propertyFunction(t,e){return function(){var n=e.apply(this,arguments);if(n==null)delete this[t];else this[t]=n}}function selection_property(t,e){return arguments.length>1?this.each((e==null?propertyRemove:typeof e==="function"?propertyFunction:propertyConstant)(t,e)):this.node()[t]}function classArray(t){return t.trim().split(/^|\s+/)}function classList(t){return t.classList||new ClassList(t)}function ClassList(t){this._node=t;this._names=classArray(t.getAttribute("class")||"")}ClassList.prototype={add:function(t){var e=this._names.indexOf(t);if(e<0){this._names.push(t);this._node.setAttribute("class",this._names.join(" "))}},remove:function(t){var e=this._names.indexOf(t);if(e>=0){this._names.splice(e,1);this._node.setAttribute("class",this._names.join(" "))}},contains:function(t){return this._names.indexOf(t)>=0}};function classedAdd(t,e){var n=classList(t),r=-1,i=e.length;while(++r<i)n.add(e[r])}function classedRemove(t,e){var n=classList(t),r=-1,i=e.length;while(++r<i)n.remove(e[r])}function classedTrue(t){return function(){classedAdd(this,t)}}function classedFalse(t){return function(){classedRemove(this,t)}}function classedFunction(t,e){return function(){(e.apply(this,arguments)?classedAdd:classedRemove)(this,t)}}function selection_classed(t,e){var n=classArray(t+"");if(arguments.length<2){var r=classList(this.node()),i=-1,a=n.length;while(++i<a)if(!r.contains(n[i]))return false;return true}return this.each((typeof e==="function"?classedFunction:e?classedTrue:classedFalse)(n,e))}function textRemove(){this.textContent=""}function textConstant$1(t){return function(){this.textContent=t}}function textFunction$1(t){return function(){var e=t.apply(this,arguments);this.textContent=e==null?"":e}}function selection_text(t){return arguments.length?this.each(t==null?textRemove:(typeof t==="function"?textFunction$1:textConstant$1)(t)):this.node().textContent}function htmlRemove(){this.innerHTML=""}function htmlConstant(t){return function(){this.innerHTML=t}}function htmlFunction(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e==null?"":e}}function selection_html(t){return arguments.length?this.each(t==null?htmlRemove:(typeof t==="function"?htmlFunction:htmlConstant)(t)):this.node().innerHTML}function raise$1(){if(this.nextSibling)this.parentNode.appendChild(this)}function selection_raise(){return this.each(raise$1)}function lower(){if(this.previousSibling)this.parentNode.insertBefore(this,this.parentNode.firstChild)}function selection_lower(){return this.each(lower)}function selection_append(t){var e=typeof t==="function"?t:creator(t);return this.select((function(){return this.appendChild(e.apply(this,arguments))}))}function constantNull(){return null}function selection_insert(t,e){var n=typeof t==="function"?t:creator(t),r=e==null?constantNull:typeof e==="function"?e:selector(e);return this.select((function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)}))}function remove(){var t=this.parentNode;if(t)t.removeChild(this)}function selection_remove(){return this.each(remove)}function selection_cloneShallow(){return this.parentNode.insertBefore(this.cloneNode(false),this.nextSibling)}function selection_cloneDeep(){return this.parentNode.insertBefore(this.cloneNode(true),this.nextSibling)}function selection_clone(t){return this.select(t?selection_cloneDeep:selection_cloneShallow)}function selection_datum(t){return arguments.length?this.property("__data__",t):this.node().__data__}var filterEvents={};var event=null;if(typeof document!=="undefined"){var element=document.documentElement;if(!("onmouseenter"in element)){filterEvents={mouseenter:"mouseover",mouseleave:"mouseout"}}}function filterContextListener(t,e,n){t=contextListener(t,e,n);return function(e){var n=e.relatedTarget;if(!n||n!==this&&!(n.compareDocumentPosition(this)&8)){t.call(this,e)}}}function contextListener(t,e,n){return function(r){var i=event;event=r;try{t.call(this,this.__data__,e,n)}finally{event=i}}}function parseTypenames(t){return t.trim().split(/^|\s+/).map((function(t){var e="",n=t.indexOf(".");if(n>=0)e=t.slice(n+1),t=t.slice(0,n);return{type:t,name:e}}))}function onRemove(t){return function(){var e=this.__on;if(!e)return;for(var n=0,r=-1,i=e.length,a;n<i;++n){if(a=e[n],(!t.type||a.type===t.type)&&a.name===t.name){this.removeEventListener(a.type,a.listener,a.capture)}else{e[++r]=a}}if(++r)e.length=r;else delete this.__on}}function onAdd(t,e,n){var r=filterEvents.hasOwnProperty(t.type)?filterContextListener:contextListener;return function(i,a,o){var s=this.__on,l,u=r(e,a,o);if(s)for(var c=0,f=s.length;c<f;++c){if((l=s[c]).type===t.type&&l.name===t.name){this.removeEventListener(l.type,l.listener,l.capture);this.addEventListener(l.type,l.listener=u,l.capture=n);l.value=e;return}}this.addEventListener(t.type,u,n);l={type:t.type,name:t.name,value:e,listener:u,capture:n};if(!s)this.__on=[l];else s.push(l)}}function selection_on(t,e,n){var r=parseTypenames(t+""),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s)for(var l=0,u=s.length,c;l<u;++l){for(i=0,c=s[l];i<a;++i){if((o=r[i]).type===c.type&&o.name===c.name){return c.value}}}return}s=e?onAdd:onRemove;if(n==null)n=false;for(i=0;i<a;++i)this.each(s(r[i],e,n));return this}function customEvent(t,e,n,r){var i=event;t.sourceEvent=event;event=t;try{return e.apply(n,r)}finally{event=i}}function dispatchEvent(t,e,n){var r=defaultView(t),i=r.CustomEvent;if(typeof i==="function"){i=new i(e,n)}else{i=r.document.createEvent("Event");if(n)i.initEvent(e,n.bubbles,n.cancelable),i.detail=n.detail;else i.initEvent(e,false,false)}t.dispatchEvent(i)}function dispatchConstant(t,e){return function(){return dispatchEvent(this,t,e)}}function dispatchFunction(t,e){return function(){return dispatchEvent(this,t,e.apply(this,arguments))}}function selection_dispatch(t,e){return this.each((typeof e==="function"?dispatchFunction:dispatchConstant)(t,e))}var root$1=[null];function Selection$1(t,e){this._groups=t;this._parents=e}function selection(){return new Selection$1([[document.documentElement]],root$1)}Selection$1.prototype=selection.prototype={constructor:Selection$1,select:selection_select,selectAll:selection_selectAll,filter:selection_filter,data:selection_data,enter:selection_enter,exit:selection_exit,merge:selection_merge,order:selection_order,sort:selection_sort,call:selection_call,nodes:selection_nodes,node:selection_node,size:selection_size,empty:selection_empty,each:selection_each,attr:selection_attr,style:selection_style,property:selection_property,classed:selection_classed,text:selection_text,html:selection_html,raise:selection_raise,lower:selection_lower,append:selection_append,insert:selection_insert,remove:selection_remove,clone:selection_clone,datum:selection_datum,on:selection_on,dispatch:selection_dispatch};function select(t){return typeof t==="string"?new Selection$1([[document.querySelector(t)]],[document.documentElement]):new Selection$1([[t]],root$1)}function create$1(t){return select(creator(t).call(document.documentElement))}var nextId=0;function local$1(){return new Local}function Local(){this._="@"+(++nextId).toString(36)}Local.prototype=local$1.prototype={constructor:Local,get:function(t){var e=this._;while(!(e in t))if(!(t=t.parentNode))return;return t[e]},set:function(t,e){return t[this._]=e},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};function sourceEvent(){var t=event,e;while(e=t.sourceEvent)t=e;return t}function point$5(t,e){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();r.x=e.clientX,r.y=e.clientY;r=r.matrixTransform(t.getScreenCTM().inverse());return[r.x,r.y]}var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}function mouse(t){var e=sourceEvent();if(e.changedTouches)e=e.changedTouches[0];return point$5(t,e)}function selectAll(t){return typeof t==="string"?new Selection$1([document.querySelectorAll(t)],[document.documentElement]):new Selection$1([t==null?[]:t],root$1)}function touch(t,e,n){if(arguments.length<3)n=e,e=sourceEvent().changedTouches;for(var r=0,i=e?e.length:0,a;r<i;++r){if((a=e[r]).identifier===n){return point$5(t,a)}}return null}function touches(t,e){if(e==null)e=sourceEvent().touches;for(var n=0,r=e?e.length:0,i=new Array(r);n<r;++n){i[n]=point$5(t,e[n])}return i}function nopropagation$2(){event.stopImmediatePropagation()}function noevent$2(){event.preventDefault();event.stopImmediatePropagation()}function dragDisable(t){var e=t.document.documentElement,n=select(t).on("dragstart.drag",noevent$2,true);if("onselectstart"in e){n.on("selectstart.drag",noevent$2,true)}else{e.__noselect=e.style.MozUserSelect;e.style.MozUserSelect="none"}}function yesdrag(t,e){var n=t.document.documentElement,r=select(t).on("dragstart.drag",null);if(e){r.on("click.drag",noevent$2,true);setTimeout((function(){r.on("click.drag",null)}),0)}if("onselectstart"in n){r.on("selectstart.drag",null)}else{n.style.MozUserSelect=n.__noselect;delete n.__noselect}}function constant$a(t){return function(){return t}}function DragEvent(t,e,n,r,i,a,o,s,l,u){this.target=t;this.type=e;this.subject=n;this.identifier=r;this.active=i;this.x=a;this.y=o;this.dx=s;this.dy=l;this._=u}DragEvent.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function defaultFilter$2(){return!event.button}function defaultContainer(){return this.parentNode}function defaultSubject(t){return t==null?{x:event.x,y:event.y}:t}function defaultTouchable$1(){return"ontouchstart"in this}function drag(){var t=defaultFilter$2,e=defaultContainer,n=defaultSubject,r=defaultTouchable$1,i={},a=dispatch("start","drag","end"),o=0,s,l,u,c,f=0;function h(t){t.on("mousedown.drag",d).filter(r).on("touchstart.drag",m).on("touchmove.drag",g).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(){if(c||!t.apply(this,arguments))return;var n=_("mouse",e.apply(this,arguments),mouse,this,arguments);if(!n)return;select(event.view).on("mousemove.drag",p,true).on("mouseup.drag",v,true);dragDisable(event.view);nopropagation$2();u=false;s=event.clientX;l=event.clientY;n("start")}function p(){noevent$2();if(!u){var t=event.clientX-s,e=event.clientY-l;u=t*t+e*e>f}i.mouse("drag")}function v(){select(event.view).on("mousemove.drag mouseup.drag",null);yesdrag(event.view,u);noevent$2();i.mouse("end")}function m(){if(!t.apply(this,arguments))return;var n=event.changedTouches,r=e.apply(this,arguments),i=n.length,a,o;for(a=0;a<i;++a){if(o=_(n[a].identifier,r,touch,this,arguments)){nopropagation$2();o("start")}}}function g(){var t=event.changedTouches,e=t.length,n,r;for(n=0;n<e;++n){if(r=i[t[n].identifier]){noevent$2();r("drag")}}}function y(){var t=event.changedTouches,e=t.length,n,r;if(c)clearTimeout(c);c=setTimeout((function(){c=null}),500);for(n=0;n<e;++n){if(r=i[t[n].identifier]){nopropagation$2();r("end")}}}function _(t,e,r,s,l){var u=r(e,t),c,f,d,p=a.copy();if(!customEvent(new DragEvent(h,"beforestart",c,t,o,u[0],u[1],0,0,p),(function(){if((event.subject=c=n.apply(s,l))==null)return false;f=c.x-u[0]||0;d=c.y-u[1]||0;return true})))return;return function n(a){var v=u,m;switch(a){case"start":i[t]=n,m=o++;break;case"end":delete i[t],--o;case"drag":u=r(e,t),m=o;break}customEvent(new DragEvent(h,a,c,t,m,u[0]+f,u[1]+d,u[0]-v[0],u[1]-v[1],p),p.apply,p,[a,s,l])}}h.filter=function(e){return arguments.length?(t=typeof e==="function"?e:constant$a(!!e),h):t};h.container=function(t){return arguments.length?(e=typeof t==="function"?t:constant$a(t),h):e};h.subject=function(t){return arguments.length?(n=typeof t==="function"?t:constant$a(t),h):n};h.touchable=function(t){return arguments.length?(r=typeof t==="function"?t:constant$a(!!t),h):r};h.on=function(){var t=a.on.apply(a,arguments);return t===a?h:t};h.clickDistance=function(t){return arguments.length?(f=(t=+t)*t,h):Math.sqrt(f)};return h}function define(t,e,n){t.prototype=e.prototype=n;n.constructor=t}function extend(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function Color(){}var darker=.7;var brighter=1/darker;var reI="\\s*([+-]?\\d+)\\s*",reN="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",reP="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",reHex3=/^#([0-9a-f]{3})$/,reHex6=/^#([0-9a-f]{6})$/,reRgbInteger=new RegExp("^rgb\\("+[reI,reI,reI]+"\\)$"),reRgbPercent=new RegExp("^rgb\\("+[reP,reP,reP]+"\\)$"),reRgbaInteger=new RegExp("^rgba\\("+[reI,reI,reI,reN]+"\\)$"),reRgbaPercent=new RegExp("^rgba\\("+[reP,reP,reP,reN]+"\\)$"),reHslPercent=new RegExp("^hsl\\("+[reN,reP,reP]+"\\)$"),reHslaPercent=new RegExp("^hsla\\("+[reN,reP,reP,reN]+"\\)$");var named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};define(Color,color,{displayable:function(){return this.rgb().displayable()},toString:function(){return this.rgb()+""}});function color(t){var e;t=(t+"").trim().toLowerCase();return(e=reHex3.exec(t))?(e=parseInt(e[1],16),new Rgb(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1)):(e=reHex6.exec(t))?rgbn(parseInt(e[1],16)):(e=reRgbInteger.exec(t))?new Rgb(e[1],e[2],e[3],1):(e=reRgbPercent.exec(t))?new Rgb(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=reRgbaInteger.exec(t))?rgba(e[1],e[2],e[3],e[4]):(e=reRgbaPercent.exec(t))?rgba(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=reHslPercent.exec(t))?hsla(e[1],e[2]/100,e[3]/100,1):(e=reHslaPercent.exec(t))?hsla(e[1],e[2]/100,e[3]/100,e[4]):named.hasOwnProperty(t)?rgbn(named[t]):t==="transparent"?new Rgb(NaN,NaN,NaN,0):null}function rgbn(t){return new Rgb(t>>16&255,t>>8&255,t&255,1)}function rgba(t,e,n,r){if(r<=0)t=e=n=NaN;return new Rgb(t,e,n,r)}function rgbConvert(t){if(!(t instanceof Color))t=color(t);if(!t)return new Rgb;t=t.rgb();return new Rgb(t.r,t.g,t.b,t.opacity)}function rgb(t,e,n,r){return arguments.length===1?rgbConvert(t):new Rgb(t,e,n,r==null?1:r)}function Rgb(t,e,n,r){this.r=+t;this.g=+e;this.b=+n;this.opacity=+r}define(Rgb,rgb,extend(Color,{brighter:function(t){t=t==null?brighter:Math.pow(brighter,t);return new Rgb(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){t=t==null?darker:Math.pow(darker,t);return new Rgb(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return 0<=this.r&&this.r<=255&&(0<=this.g&&this.g<=255)&&(0<=this.b&&this.b<=255)&&(0<=this.opacity&&this.opacity<=1)},toString:function(){var t=this.opacity;t=isNaN(t)?1:Math.max(0,Math.min(1,t));return(t===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(t===1?")":", "+t+")")}}));function hsla(t,e,n,r){if(r<=0)t=e=n=NaN;else if(n<=0||n>=1)t=e=NaN;else if(e<=0)t=NaN;return new Hsl(t,e,n,r)}function hslConvert(t){if(t instanceof Hsl)return new Hsl(t.h,t.s,t.l,t.opacity);if(!(t instanceof Color))t=color(t);if(!t)return new Hsl;if(t instanceof Hsl)return t;t=t.rgb();var e=t.r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),a=Math.max(e,n,r),o=NaN,s=a-i,l=(a+i)/2;if(s){if(e===a)o=(n-r)/s+(n<r)*6;else if(n===a)o=(r-e)/s+2;else o=(e-n)/s+4;s/=l<.5?a+i:2-a-i;o*=60}else{s=l>0&&l<1?0:o}return new Hsl(o,s,l,t.opacity)}function hsl$2(t,e,n,r){return arguments.length===1?hslConvert(t):new Hsl(t,e,n,r==null?1:r)}function Hsl(t,e,n,r){this.h=+t;this.s=+e;this.l=+n;this.opacity=+r}define(Hsl,hsl$2,extend(Color,{brighter:function(t){t=t==null?brighter:Math.pow(brighter,t);return new Hsl(this.h,this.s,this.l*t,this.opacity)},darker:function(t){t=t==null?darker:Math.pow(darker,t);return new Hsl(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new Rgb(hsl2rgb(t>=240?t-240:t+120,i,r),hsl2rgb(t,i,r),hsl2rgb(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&(0<=this.l&&this.l<=1)&&(0<=this.opacity&&this.opacity<=1)}}));function hsl2rgb(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}var deg2rad=Math.PI/180;var rad2deg=180/Math.PI;var Kn=18,Xn=.95047,Yn=1,Zn=1.08883,t0$1=4/29,t1$1=6/29,t2=3*t1$1*t1$1,t3=t1$1*t1$1*t1$1;function labConvert(t){if(t instanceof Lab)return new Lab(t.l,t.a,t.b,t.opacity);if(t instanceof Hcl){var e=t.h*deg2rad;return new Lab(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}if(!(t instanceof Rgb))t=rgbConvert(t);var n=rgb2xyz(t.r),r=rgb2xyz(t.g),i=rgb2xyz(t.b),a=xyz2lab((.4124564*n+.3575761*r+.1804375*i)/Xn),o=xyz2lab((.2126729*n+.7151522*r+.072175*i)/Yn),s=xyz2lab((.0193339*n+.119192*r+.9503041*i)/Zn);return new Lab(116*o-16,500*(a-o),200*(o-s),t.opacity)}function lab$1(t,e,n,r){return arguments.length===1?labConvert(t):new Lab(t,e,n,r==null?1:r)}function Lab(t,e,n,r){this.l=+t;this.a=+e;this.b=+n;this.opacity=+r}define(Lab,lab$1,extend(Color,{brighter:function(t){return new Lab(this.l+Kn*(t==null?1:t),this.a,this.b,this.opacity)},darker:function(t){return new Lab(this.l-Kn*(t==null?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;t=Yn*lab2xyz(t);e=Xn*lab2xyz(e);n=Zn*lab2xyz(n);return new Rgb(xyz2rgb(3.2404542*e-1.5371385*t-.4985314*n),xyz2rgb(-.969266*e+1.8760108*t+.041556*n),xyz2rgb(.0556434*e-.2040259*t+1.0572252*n),this.opacity)}}));function xyz2lab(t){return t>t3?Math.pow(t,1/3):t/t2+t0$1}function lab2xyz(t){return t>t1$1?t*t*t:t2*(t-t0$1)}function xyz2rgb(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function rgb2xyz(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function hclConvert(t){if(t instanceof Hcl)return new Hcl(t.h,t.c,t.l,t.opacity);if(!(t instanceof Lab))t=labConvert(t);var e=Math.atan2(t.b,t.a)*rad2deg;return new Hcl(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function hcl$2(t,e,n,r){return arguments.length===1?hclConvert(t):new Hcl(t,e,n,r==null?1:r)}function Hcl(t,e,n,r){this.h=+t;this.c=+e;this.l=+n;this.opacity=+r}define(Hcl,hcl$2,extend(Color,{brighter:function(t){return new Hcl(this.h,this.c,this.l+Kn*(t==null?1:t),this.opacity)},darker:function(t){return new Hcl(this.h,this.c,this.l-Kn*(t==null?1:t),this.opacity)},rgb:function(){return labConvert(this).rgb()}}));var A=-.14861,B=+1.78277,C=-.29227,D=-.90649,E=+1.97294,ED=E*D,EB=E*B,BC_DA=B*C-D*A;function cubehelixConvert(t){if(t instanceof Cubehelix)return new Cubehelix(t.h,t.s,t.l,t.opacity);if(!(t instanceof Rgb))t=rgbConvert(t);var e=t.r/255,n=t.g/255,r=t.b/255,i=(BC_DA*r+ED*e-EB*n)/(BC_DA+ED-EB),a=r-i,o=(E*(n-i)-C*a)/D,s=Math.sqrt(o*o+a*a)/(E*i*(1-i)),l=s?Math.atan2(o,a)*rad2deg-120:NaN;return new Cubehelix(l<0?l+360:l,s,i,t.opacity)}function cubehelix$3(t,e,n,r){return arguments.length===1?cubehelixConvert(t):new Cubehelix(t,e,n,r==null?1:r)}function Cubehelix(t,e,n,r){this.h=+t;this.s=+e;this.l=+n;this.opacity=+r}define(Cubehelix,cubehelix$3,extend(Color,{brighter:function(t){t=t==null?brighter:Math.pow(brighter,t);return new Cubehelix(this.h,this.s,this.l*t,this.opacity)},darker:function(t){t=t==null?darker:Math.pow(darker,t);return new Cubehelix(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*deg2rad,e=+this.l,n=isNaN(this.s)?0:this.s*e*(1-e),r=Math.cos(t),i=Math.sin(t);return new Rgb(255*(e+n*(A*r+B*i)),255*(e+n*(C*r+D*i)),255*(e+n*(E*r)),this.opacity)}}));function basis$1(t,e,n,r,i){var a=t*t,o=a*t;return((1-3*t+3*a-o)*e+(4-6*a+3*o)*n+(1+3*t+3*a-3*o)*r+o*i)/6}function basis$2(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[r],a=t[r+1],o=r>0?t[r-1]:2*i-a,s=r<e-1?t[r+2]:2*a-i;return basis$1((n-r/e)*e,o,i,a,s)}}function basisClosed$1(t){var e=t.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*e),i=t[(r+e-1)%e],a=t[r%e],o=t[(r+1)%e],s=t[(r+2)%e];return basis$1((n-r/e)*e,i,a,o,s)}}function constant$9(t){return function(){return t}}function linear$2(t,e){return function(n){return t+n*e}}function exponential$1(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}function hue(t,e){var n=e-t;return n?linear$2(t,n>180||n<-180?n-360*Math.round(n/360):n):constant$9(isNaN(t)?e:t)}function gamma(t){return(t=+t)===1?nogamma:function(e,n){return n-e?exponential$1(e,n,t):constant$9(isNaN(e)?n:e)}}function nogamma(t,e){var n=e-t;return n?linear$2(t,n):constant$9(isNaN(t)?e:t)}var interpolateRgb=function t(e){var n=gamma(e);function r(t,e){var r=n((t=rgb(t)).r,(e=rgb(e)).r),i=n(t.g,e.g),a=n(t.b,e.b),o=nogamma(t.opacity,e.opacity);return function(e){t.r=r(e);t.g=i(e);t.b=a(e);t.opacity=o(e);return t+""}}r.gamma=t;return r}(1);function rgbSpline(t){return function(e){var n=e.length,r=new Array(n),i=new Array(n),a=new Array(n),o,s;for(o=0;o<n;++o){s=rgb(e[o]);r[o]=s.r||0;i[o]=s.g||0;a[o]=s.b||0}r=t(r);i=t(i);a=t(a);s.opacity=1;return function(t){s.r=r(t);s.g=i(t);s.b=a(t);return s+""}}}var rgbBasis=rgbSpline(basis$2);var rgbBasisClosed=rgbSpline(basisClosed$1);function array$1(t,e){var n=e?e.length:0,r=t?Math.min(n,t.length):0,i=new Array(r),a=new Array(n),o;for(o=0;o<r;++o)i[o]=interpolateValue(t[o],e[o]);for(;o<n;++o)a[o]=e[o];return function(t){for(o=0;o<r;++o)a[o]=i[o](t);return a}}function date$1(t,e){var n=new Date;return t=+t,e-=t,function(r){return n.setTime(t+e*r),n}}function reinterpolate$1(t,e){return t=+t,e-=t,function(n){return t+e*n}}function object$2(t,e){var n={},r={},i;if(t===null||typeof t!=="object")t={};if(e===null||typeof e!=="object")e={};for(i in e){if(i in t){n[i]=interpolateValue(t[i],e[i])}else{r[i]=e[i]}}return function(t){for(i in n)r[i]=n[i](t);return r}}var reA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,reB=new RegExp(reA.source,"g");function zero(t){return function(){return t}}function one(t){return function(e){return t(e)+""}}function interpolateString(t,e){var n=reA.lastIndex=reB.lastIndex=0,r,i,a,o=-1,s=[],l=[];t=t+"",e=e+"";while((r=reA.exec(t))&&(i=reB.exec(e))){if((a=i.index)>n){a=e.slice(n,a);if(s[o])s[o]+=a;else s[++o]=a}if((r=r[0])===(i=i[0])){if(s[o])s[o]+=i;else s[++o]=i}else{s[++o]=null;l.push({i:o,x:reinterpolate$1(r,i)})}n=reB.lastIndex}if(n<e.length){a=e.slice(n);if(s[o])s[o]+=a;else s[++o]=a}return s.length<2?l[0]?one(l[0].x):zero(e):(e=l.length,function(t){for(var n=0,r;n<e;++n)s[(r=l[n]).i]=r.x(t);return s.join("")})}function interpolateValue(t,e){var n=typeof e,r;return e==null||n==="boolean"?constant$9(e):(n==="number"?reinterpolate$1:n==="string"?(r=color(e))?(e=r,interpolateRgb):interpolateString:e instanceof color?interpolateRgb:e instanceof Date?date$1:Array.isArray(e)?array$1:typeof e.valueOf!=="function"&&typeof e.toString!=="function"||isNaN(e)?object$2:reinterpolate$1)(t,e)}function interpolateRound(t,e){return t=+t,e-=t,function(n){return Math.round(t+e*n)}}var degrees$1=180/Math.PI;var identity$7={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function decompose(t,e,n,r,i,a){var o,s,l;if(o=Math.sqrt(t*t+e*e))t/=o,e/=o;if(l=t*n+e*r)n-=t*l,r-=e*l;if(s=Math.sqrt(n*n+r*r))n/=s,r/=s,l/=s;if(t*r<e*n)t=-t,e=-e,l=-l,o=-o;return{translateX:i,translateY:a,rotate:Math.atan2(e,t)*degrees$1,skewX:Math.atan(l)*degrees$1,scaleX:o,scaleY:s}}var cssNode,cssRoot,cssView,svgNode;function parseCss(t){if(t==="none")return identity$7;if(!cssNode)cssNode=document.createElement("DIV"),cssRoot=document.documentElement,cssView=document.defaultView;cssNode.style.transform=t;t=cssView.getComputedStyle(cssRoot.appendChild(cssNode),null).getPropertyValue("transform");cssRoot.removeChild(cssNode);t=t.slice(7,-1).split(",");return decompose(+t[0],+t[1],+t[2],+t[3],+t[4],+t[5])}function parseSvg(t){if(t==null)return identity$7;if(!svgNode)svgNode=document.createElementNS("http://www.w3.org/2000/svg","g");svgNode.setAttribute("transform",t);if(!(t=svgNode.transform.baseVal.consolidate()))return identity$7;t=t.matrix;return decompose(t.a,t.b,t.c,t.d,t.e,t.f)}function interpolateTransform(t,e,n,r){function i(t){return t.length?t.pop()+" ":""}function a(t,r,i,a,o,s){if(t!==i||r!==a){var l=o.push("translate(",null,e,null,n);s.push({i:l-4,x:reinterpolate$1(t,i)},{i:l-2,x:reinterpolate$1(r,a)})}else if(i||a){o.push("translate("+i+e+a+n)}}function o(t,e,n,a){if(t!==e){if(t-e>180)e+=360;else if(e-t>180)t+=360;a.push({i:n.push(i(n)+"rotate(",null,r)-2,x:reinterpolate$1(t,e)})}else if(e){n.push(i(n)+"rotate("+e+r)}}function s(t,e,n,a){if(t!==e){a.push({i:n.push(i(n)+"skewX(",null,r)-2,x:reinterpolate$1(t,e)})}else if(e){n.push(i(n)+"skewX("+e+r)}}function l(t,e,n,r,a,o){if(t!==n||e!==r){var s=a.push(i(a)+"scale(",null,",",null,")");o.push({i:s-4,x:reinterpolate$1(t,n)},{i:s-2,x:reinterpolate$1(e,r)})}else if(n!==1||r!==1){a.push(i(a)+"scale("+n+","+r+")")}}return function(e,n){var r=[],i=[];e=t(e),n=t(n);a(e.translateX,e.translateY,n.translateX,n.translateY,r,i);o(e.rotate,n.rotate,r,i);s(e.skewX,n.skewX,r,i);l(e.scaleX,e.scaleY,n.scaleX,n.scaleY,r,i);e=n=null;return function(t){var e=-1,n=i.length,a;while(++e<n)r[(a=i[e]).i]=a.x(t);return r.join("")}}}var interpolateTransformCss=interpolateTransform(parseCss,"px, ","px)","deg)");var interpolateTransformSvg=interpolateTransform(parseSvg,", ",")",")");var rho=Math.SQRT2,rho2=2,rho4=4,epsilon2$2=1e-12;function cosh(t){return((t=Math.exp(t))+1/t)/2}function sinh(t){return((t=Math.exp(t))-1/t)/2}function tanh(t){return((t=Math.exp(2*t))-1)/(t+1)}function interpolateZoom(t,e){var n=t[0],r=t[1],i=t[2],a=e[0],o=e[1],s=e[2],l=a-n,u=o-r,c=l*l+u*u,f,h;if(c<epsilon2$2){h=Math.log(s/i)/rho;f=function(t){return[n+t*l,r+t*u,i*Math.exp(rho*t*h)]}}else{var d=Math.sqrt(c),p=(s*s-i*i+rho4*c)/(2*i*rho2*d),v=(s*s-i*i-rho4*c)/(2*s*rho2*d),m=Math.log(Math.sqrt(p*p+1)-p),g=Math.log(Math.sqrt(v*v+1)-v);h=(g-m)/rho;f=function(t){var e=t*h,a=cosh(m),o=i/(rho2*d)*(a*tanh(rho*e+m)-sinh(m));return[n+o*l,r+o*u,i*a/cosh(rho*e+m)]}}f.duration=h*1e3;return f}function hsl(t){return function(e,n){var r=t((e=hsl$2(e)).h,(n=hsl$2(n)).h),i=nogamma(e.s,n.s),a=nogamma(e.l,n.l),o=nogamma(e.opacity,n.opacity);return function(t){e.h=r(t);e.s=i(t);e.l=a(t);e.opacity=o(t);return e+""}}}var hsl$1=hsl(hue);var hslLong=hsl(nogamma);function lab(t,e){var n=nogamma((t=lab$1(t)).l,(e=lab$1(e)).l),r=nogamma(t.a,e.a),i=nogamma(t.b,e.b),a=nogamma(t.opacity,e.opacity);return function(e){t.l=n(e);t.a=r(e);t.b=i(e);t.opacity=a(e);return t+""}}function hcl(t){return function(e,n){var r=t((e=hcl$2(e)).h,(n=hcl$2(n)).h),i=nogamma(e.c,n.c),a=nogamma(e.l,n.l),o=nogamma(e.opacity,n.opacity);return function(t){e.h=r(t);e.c=i(t);e.l=a(t);e.opacity=o(t);return e+""}}}var hcl$1=hcl(hue);var hclLong=hcl(nogamma);function cubehelix$1(t){return function e(n){n=+n;function r(e,r){var i=t((e=cubehelix$3(e)).h,(r=cubehelix$3(r)).h),a=nogamma(e.s,r.s),o=nogamma(e.l,r.l),s=nogamma(e.opacity,r.opacity);return function(t){e.h=i(t);e.s=a(t);e.l=o(Math.pow(t,n));e.opacity=s(t);return e+""}}r.gamma=e;return r}(1)}var cubehelix$2=cubehelix$1(hue);var cubehelixLong=cubehelix$1(nogamma);function quantize$2(t,e){var n=new Array(e);for(var r=0;r<e;++r)n[r]=t(r/(e-1));return n}var frame=0,timeout$1=0,interval$1=0,pokeDelay=1e3,taskHead,taskTail,clockLast=0,clockNow=0,clockSkew=0,clock=typeof performance==="object"&&performance.now?performance:Date,setFrame=typeof window==="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function now(){return clockNow||(setFrame(clearNow),clockNow=clock.now()+clockSkew)}function clearNow(){clockNow=0}function Timer(){this._call=this._time=this._next=null}Timer.prototype=timer.prototype={constructor:Timer,restart:function(t,e,n){if(typeof t!=="function")throw new TypeError("callback is not a function");n=(n==null?now():+n)+(e==null?0:+e);if(!this._next&&taskTail!==this){if(taskTail)taskTail._next=this;else taskHead=this;taskTail=this}this._call=t;this._time=n;sleep()},stop:function(){if(this._call){this._call=null;this._time=Infinity;sleep()}}};function timer(t,e,n){var r=new Timer;r.restart(t,e,n);return r}function timerFlush(){now();++frame;var t=taskHead,e;while(t){if((e=clockNow-t._time)>=0)t._call.call(null,e);t=t._next}--frame}function wake(){clockNow=(clockLast=clock.now())+clockSkew;frame=timeout$1=0;try{timerFlush()}finally{frame=0;nap();clockNow=0}}function poke$1(){var t=clock.now(),e=t-clockLast;if(e>pokeDelay)clockSkew-=e,clockLast=t}function nap(){var t,e=taskHead,n,r=Infinity;while(e){if(e._call){if(r>e._time)r=e._time;t=e,e=e._next}else{n=e._next,e._next=null;e=t?t._next=n:taskHead=n}}taskTail=t;sleep(r)}function sleep(t){if(frame)return;if(timeout$1)timeout$1=clearTimeout(timeout$1);var e=t-clockNow;if(e>24){if(t<Infinity)timeout$1=setTimeout(wake,t-clock.now()-clockSkew);if(interval$1)interval$1=clearInterval(interval$1)}else{if(!interval$1)clockLast=clock.now(),interval$1=setInterval(poke$1,pokeDelay);frame=1,setFrame(wake)}}function timeout(t,e,n){var r=new Timer;e=e==null?0:+e;r.restart((function(n){r.stop();t(n+e)}),e,n);return r}function interval(t,e,n){var r=new Timer,i=e;if(e==null)return r.restart(t,e,n),r;e=+e,n=n==null?now():+n;r.restart((function a(o){o+=i;r.restart(a,i+=e,n);t(o)}),e,n);return r}var emptyOn=dispatch("start","end","interrupt");var emptyTween=[];var CREATED=0;var SCHEDULED=1;var STARTING=2;var STARTED=3;var RUNNING=4;var ENDING=5;var ENDED=6;function schedule(t,e,n,r,i,a){var o=t.__transition;if(!o)t.__transition={};else if(n in o)return;create(t,n,{name:e,index:r,group:i,on:emptyOn,tween:emptyTween,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:CREATED})}function init(t,e){var n=get(t,e);if(n.state>CREATED)throw new Error("too late; already scheduled");return n}function set$1(t,e){var n=get(t,e);if(n.state>STARTING)throw new Error("too late; already started");return n}function get(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function create(t,e,n){var r=t.__transition,i;r[e]=n;n.timer=timer(a,0,n.time);function a(t){n.state=SCHEDULED;n.timer.restart(o,n.delay,n.time);if(n.delay<=t)o(t-n.delay)}function o(a){var u,c,f,h;if(n.state!==SCHEDULED)return l();for(u in r){h=r[u];if(h.name!==n.name)continue;if(h.state===STARTED)return timeout(o);if(h.state===RUNNING){h.state=ENDED;h.timer.stop();h.on.call("interrupt",t,t.__data__,h.index,h.group);delete r[u]}else if(+u<e){h.state=ENDED;h.timer.stop();delete r[u]}}timeout((function(){if(n.state===STARTED){n.state=RUNNING;n.timer.restart(s,n.delay,n.time);s(a)}}));n.state=STARTING;n.on.call("start",t,t.__data__,n.index,n.group);if(n.state!==STARTING)return;n.state=STARTED;i=new Array(f=n.tween.length);for(u=0,c=-1;u<f;++u){if(h=n.tween[u].value.call(t,t.__data__,n.index,n.group)){i[++c]=h}}i.length=c+1}function s(e){var r=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(l),n.state=ENDING,1),a=-1,o=i.length;while(++a<o){i[a].call(null,r)}if(n.state===ENDING){n.on.call("end",t,t.__data__,n.index,n.group);l()}}function l(){n.state=ENDED;n.timer.stop();delete r[e];for(var i in r)return;delete t.__transition}}function interrupt(t,e){var n=t.__transition,r,i,a=true,o;if(!n)return;e=e==null?null:e+"";for(o in n){if((r=n[o]).name!==e){a=false;continue}i=r.state>STARTING&&r.state<ENDING;r.state=ENDED;r.timer.stop();if(i)r.on.call("interrupt",t,t.__data__,r.index,r.group);delete n[o]}if(a)delete t.__transition}function selection_interrupt(t){return this.each((function(){interrupt(this,t)}))}function tweenRemove(t,e){var n,r;return function(){var i=set$1(this,t),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o){if(r[o].name===e){r=r.slice();r.splice(o,1);break}}}i.tween=r}}function tweenFunction(t,e,n){var r,i;if(typeof n!=="function")throw new Error;return function(){var a=set$1(this,t),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:e,value:n},l=0,u=i.length;l<u;++l){if(i[l].name===e){i[l]=s;break}}if(l===u)i.push(s)}a.tween=i}}function transition_tween(t,e){var n=this._id;t+="";if(arguments.length<2){var r=get(this.node(),n).tween;for(var i=0,a=r.length,o;i<a;++i){if((o=r[i]).name===t){return o.value}}return null}return this.each((e==null?tweenRemove:tweenFunction)(n,t,e))}function tweenValue(t,e,n){var r=t._id;t.each((function(){var t=set$1(this,r);(t.value||(t.value={}))[e]=n.apply(this,arguments)}));return function(t){return get(t,r).value[e]}}function interpolate$1(t,e){var n;return(typeof e==="number"?reinterpolate$1:e instanceof color?interpolateRgb:(n=color(e))?(e=n,interpolateRgb):interpolateString)(t,e)}function attrRemove(t){return function(){this.removeAttribute(t)}}function attrRemoveNS(t){return function(){this.removeAttributeNS(t.space,t.local)}}function attrConstant(t,e,n){var r,i;return function(){var a=this.getAttribute(t);return a===n?null:a===r?i:i=e(r=a,n)}}function attrConstantNS(t,e,n){var r,i;return function(){var a=this.getAttributeNS(t.space,t.local);return a===n?null:a===r?i:i=e(r=a,n)}}function attrFunction(t,e,n){var r,i,a;return function(){var o,s=n(this);if(s==null)return void this.removeAttribute(t);o=this.getAttribute(t);return o===s?null:o===r&&s===i?a:a=e(r=o,i=s)}}function attrFunctionNS(t,e,n){var r,i,a;return function(){var o,s=n(this);if(s==null)return void this.removeAttributeNS(t.space,t.local);o=this.getAttributeNS(t.space,t.local);return o===s?null:o===r&&s===i?a:a=e(r=o,i=s)}}function transition_attr(t,e){var n=namespace(t),r=n==="transform"?interpolateTransformSvg:interpolate$1;return this.attrTween(t,typeof e==="function"?(n.local?attrFunctionNS:attrFunction)(n,r,tweenValue(this,"attr."+t,e)):e==null?(n.local?attrRemoveNS:attrRemove)(n):(n.local?attrConstantNS:attrConstant)(n,r,e+""))}function attrTweenNS(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttributeNS(t.space,t.local,r(e))}}n._value=e;return n}function attrTween(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttribute(t,r(e))}}n._value=e;return n}function transition_attrTween(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!=="function")throw new Error;var r=namespace(t);return this.tween(n,(r.local?attrTweenNS:attrTween)(r,e))}function delayFunction(t,e){return function(){init(this,t).delay=+e.apply(this,arguments)}}function delayConstant(t,e){return e=+e,function(){init(this,t).delay=e}}function transition_delay(t){var e=this._id;return arguments.length?this.each((typeof t==="function"?delayFunction:delayConstant)(e,t)):get(this.node(),e).delay}function durationFunction(t,e){return function(){set$1(this,t).duration=+e.apply(this,arguments)}}function durationConstant(t,e){return e=+e,function(){set$1(this,t).duration=e}}function transition_duration(t){var e=this._id;return arguments.length?this.each((typeof t==="function"?durationFunction:durationConstant)(e,t)):get(this.node(),e).duration}function easeConstant(t,e){if(typeof e!=="function")throw new Error;return function(){set$1(this,t).ease=e}}function transition_ease(t){var e=this._id;return arguments.length?this.each(easeConstant(e,t)):get(this.node(),e).ease}function transition_filter(t){if(typeof t!=="function")t=matcher$1(t);for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i){for(var a=e[i],o=a.length,s=r[i]=[],l,u=0;u<o;++u){if((l=a[u])&&t.call(l,l.__data__,u,a)){s.push(l)}}}return new Transition(r,this._parents,this._name,this._id)}function transition_merge(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,r=e.length,i=n.length,a=Math.min(r,i),o=new Array(r),s=0;s<a;++s){for(var l=e[s],u=n[s],c=l.length,f=o[s]=new Array(c),h,d=0;d<c;++d){if(h=l[d]||u[d]){f[d]=h}}}for(;s<r;++s){o[s]=e[s]}return new Transition(o,this._parents,this._name,this._id)}function start$1(t){return(t+"").trim().split(/^|\s+/).every((function(t){var e=t.indexOf(".");if(e>=0)t=t.slice(0,e);return!t||t==="start"}))}function onFunction(t,e,n){var r,i,a=start$1(e)?init:set$1;return function(){var o=a(this,t),s=o.on;if(s!==r)(i=(r=s).copy()).on(e,n);o.on=i}}function transition_on(t,e){var n=this._id;return arguments.length<2?get(this.node(),n).on.on(t):this.each(onFunction(n,t,e))}function removeFunction(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;if(e)e.removeChild(this)}}function transition_remove(){return this.on("end.remove",removeFunction(this._id))}function transition_select(t){var e=this._name,n=this._id;if(typeof t!=="function")t=selector(t);for(var r=this._groups,i=r.length,a=new Array(i),o=0;o<i;++o){for(var s=r[o],l=s.length,u=a[o]=new Array(l),c,f,h=0;h<l;++h){if((c=s[h])&&(f=t.call(c,c.__data__,h,s))){if("__data__"in c)f.__data__=c.__data__;u[h]=f;schedule(u[h],e,n,h,u,get(c,n))}}}return new Transition(a,this._parents,e,n)}function transition_selectAll(t){var e=this._name,n=this._id;if(typeof t!=="function")t=selectorAll(t);for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s){for(var l=r[s],u=l.length,c,f=0;f<u;++f){if(c=l[f]){for(var h=t.call(c,c.__data__,f,l),d,p=get(c,n),v=0,m=h.length;v<m;++v){if(d=h[v]){schedule(d,e,n,v,h,p)}}a.push(h);o.push(c)}}}return new Transition(a,o,e,n)}var Selection=selection.prototype.constructor;function transition_selection(){return new Selection(this._groups,this._parents)}function styleRemove(t,e){var n,r,i;return function(){var a=styleValue(this,t),o=(this.style.removeProperty(t),styleValue(this,t));return a===o?null:a===n&&o===r?i:i=e(n=a,r=o)}}function styleRemoveEnd(t){return function(){this.style.removeProperty(t)}}function styleConstant(t,e,n){var r,i;return function(){var a=styleValue(this,t);return a===n?null:a===r?i:i=e(r=a,n)}}function styleFunction(t,e,n){var r,i,a;return function(){var o=styleValue(this,t),s=n(this);if(s==null)s=(this.style.removeProperty(t),styleValue(this,t));return o===s?null:o===r&&s===i?a:a=e(r=o,i=s)}}function transition_style(t,e,n){var r=(t+="")==="transform"?interpolateTransformCss:interpolate$1;return e==null?this.styleTween(t,styleRemove(t,r)).on("end.style."+t,styleRemoveEnd(t)):this.styleTween(t,typeof e==="function"?styleFunction(t,r,tweenValue(this,"style."+t,e)):styleConstant(t,r,e+""),n)}function styleTween(t,e,n){function r(){var r=this,i=e.apply(r,arguments);return i&&function(e){r.style.setProperty(t,i(e),n)}}r._value=e;return r}function transition_styleTween(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!=="function")throw new Error;return this.tween(r,styleTween(t,e,n==null?"":n))}function textConstant(t){return function(){this.textContent=t}}function textFunction(t){return function(){var e=t(this);this.textContent=e==null?"":e}}function transition_text(t){return this.tween("text",typeof t==="function"?textFunction(tweenValue(this,"text",t)):textConstant(t==null?"":t+""))}function transition_transition(){var t=this._name,e=this._id,n=newId();for(var r=this._groups,i=r.length,a=0;a<i;++a){for(var o=r[a],s=o.length,l,u=0;u<s;++u){if(l=o[u]){var c=get(l,e);schedule(l,t,n,u,o,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}}}return new Transition(r,this._parents,t,n)}var id=0;function Transition(t,e,n,r){this._groups=t;this._parents=e;this._name=n;this._id=r}function transition(t){return selection().transition(t)}function newId(){return++id}var selection_prototype=selection.prototype;Transition.prototype=transition.prototype={constructor:Transition,select:transition_select,selectAll:transition_selectAll,filter:transition_filter,merge:transition_merge,selection:transition_selection,transition:transition_transition,call:selection_prototype.call,nodes:selection_prototype.nodes,node:selection_prototype.node,size:selection_prototype.size,empty:selection_prototype.empty,each:selection_prototype.each,on:transition_on,attr:transition_attr,attrTween:transition_attrTween,style:transition_style,styleTween:transition_styleTween,text:transition_text,remove:transition_remove,tween:transition_tween,delay:transition_delay,duration:transition_duration,ease:transition_ease};function linear$1(t){return+t}function quadIn(t){return t*t}function quadOut(t){return t*(2-t)}function quadInOut(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}function cubicIn(t){return t*t*t}function cubicOut(t){return--t*t*t+1}function cubicInOut(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var exponent$1=3;var polyIn=function t(e){e=+e;function n(t){return Math.pow(t,e)}n.exponent=t;return n}(exponent$1);var polyOut=function t(e){e=+e;function n(t){return 1-Math.pow(1-t,e)}n.exponent=t;return n}(exponent$1);var polyInOut=function t(e){e=+e;function n(t){return((t*=2)<=1?Math.pow(t,e):2-Math.pow(2-t,e))/2}n.exponent=t;return n}(exponent$1);var pi$4=Math.PI,halfPi$3=pi$4/2;function sinIn(t){return 1-Math.cos(t*halfPi$3)}function sinOut(t){return Math.sin(t*halfPi$3)}function sinInOut(t){return(1-Math.cos(pi$4*t))/2}function expIn(t){return Math.pow(2,10*t-10)}function expOut(t){return 1-Math.pow(2,-10*t)}function expInOut(t){return((t*=2)<=1?Math.pow(2,10*t-10):2-Math.pow(2,10-10*t))/2}function circleIn(t){return 1-Math.sqrt(1-t*t)}function circleOut(t){return Math.sqrt(1- --t*t)}function circleInOut(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var b1=4/11,b2=6/11,b3=8/11,b4=3/4,b5=9/11,b6=10/11,b7=15/16,b8=21/22,b9=63/64,b0=1/b1/b1;function bounceIn(t){return 1-bounceOut(1-t)}function bounceOut(t){return(t=+t)<b1?b0*t*t:t<b3?b0*(t-=b2)*t+b4:t<b6?b0*(t-=b5)*t+b7:b0*(t-=b8)*t+b9}function bounceInOut(t){return((t*=2)<=1?1-bounceOut(1-t):bounceOut(t-1)+1)/2}var overshoot=1.70158;var backIn=function t(e){e=+e;function n(t){return t*t*((e+1)*t-e)}n.overshoot=t;return n}(overshoot);var backOut=function t(e){e=+e;function n(t){return--t*t*((e+1)*t+e)+1}n.overshoot=t;return n}(overshoot);var backInOut=function t(e){e=+e;function n(t){return((t*=2)<1?t*t*((e+1)*t-e):(t-=2)*t*((e+1)*t+e)+2)/2}n.overshoot=t;return n}(overshoot);var tau$4=2*Math.PI,amplitude=1,period=.3;var elasticIn=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=tau$4);function i(t){return e*Math.pow(2,10*--t)*Math.sin((r-t)/n)}i.amplitude=function(e){return t(e,n*tau$4)};i.period=function(n){return t(e,n)};return i}(amplitude,period);var elasticOut=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=tau$4);function i(t){return 1-e*Math.pow(2,-10*(t=+t))*Math.sin((t+r)/n)}i.amplitude=function(e){return t(e,n*tau$4)};i.period=function(n){return t(e,n)};return i}(amplitude,period);var elasticInOut=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=tau$4);function i(t){return((t=t*2-1)<0?e*Math.pow(2,10*t)*Math.sin((r-t)/n):2-e*Math.pow(2,-10*t)*Math.sin((r+t)/n))/2}i.amplitude=function(e){return t(e,n*tau$4)};i.period=function(n){return t(e,n)};return i}(amplitude,period);var defaultTiming={time:null,delay:0,duration:250,ease:cubicInOut};function inherit(t,e){var n;while(!(n=t.__transition)||!(n=n[e])){if(!(t=t.parentNode)){return defaultTiming.time=now(),defaultTiming}}return n}function selection_transition(t){var e,n;if(t instanceof Transition){e=t._id,t=t._name}else{e=newId(),(n=defaultTiming).time=now(),t=t==null?null:t+""}for(var r=this._groups,i=r.length,a=0;a<i;++a){for(var o=r[a],s=o.length,l,u=0;u<s;++u){if(l=o[u]){schedule(l,t,e,u,o,n||inherit(l,e))}}}return new Transition(r,this._parents,t,e)}selection.prototype.interrupt=selection_interrupt;selection.prototype.transition=selection_transition;var root=[null];function active(t,e){var n=t.__transition,r,i;if(n){e=e==null?null:e+"";for(i in n){if((r=n[i]).state>SCHEDULED&&r.name===e){return new Transition([[t]],root,e,+i)}}}return null}function constant$8(t){return function(){return t}}function BrushEvent(t,e,n){this.target=t;this.type=e;this.selection=n}function nopropagation$1(){event.stopImmediatePropagation()}function noevent$1(){event.preventDefault();event.stopImmediatePropagation()}var MODE_DRAG={name:"drag"},MODE_SPACE={name:"space"},MODE_HANDLE={name:"handle"},MODE_CENTER={name:"center"};var X={name:"x",handles:["e","w"].map(type$1),input:function(t,e){return t&&[[t[0],e[0][1]],[t[1],e[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}};var Y={name:"y",handles:["n","s"].map(type$1),input:function(t,e){return t&&[[e[0][0],t[0]],[e[1][0],t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}};var XY={name:"xy",handles:["n","e","s","w","nw","ne","se","sw"].map(type$1),input:function(t){return t},output:function(t){return t}};var cursors={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"};var flipX={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"};var flipY={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"};var signsX={overlay:+1,selection:+1,n:null,e:+1,s:null,w:-1,nw:-1,ne:+1,se:+1,sw:-1};var signsY={overlay:+1,selection:+1,n:-1,e:null,s:+1,w:null,nw:-1,ne:-1,se:+1,sw:+1};function type$1(t){return{type:t}}function defaultFilter$1(){return!event.button}function defaultExtent$1(){var t=this.ownerSVGElement||this;return[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function local(t){while(!t.__brush)if(!(t=t.parentNode))return;return t.__brush}function empty(t){return t[0][0]===t[1][0]||t[0][1]===t[1][1]}function brushSelection(t){var e=t.__brush;return e?e.dim.output(e.selection):null}function brushX(){return brush$1(X)}function brushY(){return brush$1(Y)}function brush(){return brush$1(XY)}function brush$1(t){var e=defaultExtent$1,n=defaultFilter$1,r=dispatch(o,"start","brush","end"),i=6,a;function o(e){var n=e.property("__brush",f).selectAll(".overlay").data([type$1("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",cursors.overlay).merge(n).each((function(){var t=local(this).extent;select(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])}));e.selectAll(".selection").data([type$1("selection")]).enter().append("rect").attr("class","selection").attr("cursor",cursors.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var r=e.selectAll(".handle").data(t.handles,(function(t){return t.type}));r.exit().remove();r.enter().append("rect").attr("class",(function(t){return"handle handle--"+t.type})).attr("cursor",(function(t){return cursors[t.type]}));e.each(s).attr("fill","none").attr("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush touchstart.brush",c)}o.move=function(e,n){if(e.selection){e.on("start.brush",(function(){l(this,arguments).beforestart().start()})).on("interrupt.brush end.brush",(function(){l(this,arguments).end()})).tween("brush",(function(){var e=this,r=e.__brush,i=l(e,arguments),a=r.selection,o=t.input(typeof n==="function"?n.apply(this,arguments):n,r.extent),u=interpolateValue(a,o);function c(t){r.selection=t===1&&empty(o)?null:u(t);s.call(e);i.brush()}return a&&o?c:c(1)}))}else{e.each((function(){var e=this,r=arguments,i=e.__brush,a=t.input(typeof n==="function"?n.apply(e,r):n,i.extent),o=l(e,r).beforestart();interrupt(e);i.selection=a==null||empty(a)?null:a;s.call(e);o.start().brush().end()}))}};function s(){var t=select(this),e=local(this).selection;if(e){t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]);t.selectAll(".handle").style("display",null).attr("x",(function(t){return t.type[t.type.length-1]==="e"?e[1][0]-i/2:e[0][0]-i/2})).attr("y",(function(t){return t.type[0]==="s"?e[1][1]-i/2:e[0][1]-i/2})).attr("width",(function(t){return t.type==="n"||t.type==="s"?e[1][0]-e[0][0]+i:i})).attr("height",(function(t){return t.type==="e"||t.type==="w"?e[1][1]-e[0][1]+i:i}))}else{t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}}function l(t,e){return t.__brush.emitter||new u(t,e)}function u(t,e){this.that=t;this.args=e;this.state=t.__brush;this.active=0}u.prototype={beforestart:function(){if(++this.active===1)this.state.emitter=this,this.starting=true;return this},start:function(){if(this.starting)this.starting=false,this.emit("start");return this},brush:function(){this.emit("brush");return this},end:function(){if(--this.active===0)delete this.state.emitter,this.emit("end");return this},emit:function(e){customEvent(new BrushEvent(o,e,t.output(this.state.selection)),r.apply,r,[e,this.that,this.args])}};function c(){if(event.touches){if(event.changedTouches.length<event.touches.length)return noevent$1()}else if(a)return;if(!n.apply(this,arguments))return;var e=this,r=event.target.__data__.type,i=(event.metaKey?r="overlay":r)==="selection"?MODE_DRAG:event.altKey?MODE_CENTER:MODE_HANDLE,o=t===Y?null:signsX[r],u=t===X?null:signsY[r],c=local(e),f=c.extent,h=c.selection,d=f[0][0],p,v,m=f[0][1],g,y,_=f[1][0],b,x,w=f[1][1],$,k,M,S,z,E=o&&u&&event.shiftKey,C,A,R=mouse(e),T=R,N=l(e,arguments).beforestart();if(r==="overlay"){c.selection=h=[[p=t===Y?d:R[0],g=t===X?m:R[1]],[b=t===Y?_:p,$=t===X?w:g]]}else{p=h[0][0];g=h[0][1];b=h[1][0];$=h[1][1]}v=p;y=g;x=b;k=$;var P=select(e).attr("pointer-events","none");var L=P.selectAll(".overlay").attr("cursor",cursors[r]);if(event.touches){P.on("touchmove.brush",D,true).on("touchend.brush touchcancel.brush",O,true)}else{var F=select(event.view).on("keydown.brush",B,true).on("keyup.brush",q,true).on("mousemove.brush",D,true).on("mouseup.brush",O,true);dragDisable(event.view)}nopropagation$1();interrupt(e);s.call(e);N.start();function D(){var t=mouse(e);if(E&&!C&&!A){if(Math.abs(t[0]-T[0])>Math.abs(t[1]-T[1]))A=true;else C=true}T=t;z=true;noevent$1();I()}function I(){var t;M=T[0]-R[0];S=T[1]-R[1];switch(i){case MODE_SPACE:case MODE_DRAG:{if(o)M=Math.max(d-p,Math.min(_-b,M)),v=p+M,x=b+M;if(u)S=Math.max(m-g,Math.min(w-$,S)),y=g+S,k=$+S;break}case MODE_HANDLE:{if(o<0)M=Math.max(d-p,Math.min(_-p,M)),v=p+M,x=b;else if(o>0)M=Math.max(d-b,Math.min(_-b,M)),v=p,x=b+M;if(u<0)S=Math.max(m-g,Math.min(w-g,S)),y=g+S,k=$;else if(u>0)S=Math.max(m-$,Math.min(w-$,S)),y=g,k=$+S;break}case MODE_CENTER:{if(o)v=Math.max(d,Math.min(_,p-M*o)),x=Math.max(d,Math.min(_,b+M*o));if(u)y=Math.max(m,Math.min(w,g-S*u)),k=Math.max(m,Math.min(w,$+S*u));break}}if(x<v){o*=-1;t=p,p=b,b=t;t=v,v=x,x=t;if(r in flipX)L.attr("cursor",cursors[r=flipX[r]])}if(k<y){u*=-1;t=g,g=$,$=t;t=y,y=k,k=t;if(r in flipY)L.attr("cursor",cursors[r=flipY[r]])}if(c.selection)h=c.selection;if(C)v=h[0][0],x=h[1][0];if(A)y=h[0][1],k=h[1][1];if(h[0][0]!==v||h[0][1]!==y||h[1][0]!==x||h[1][1]!==k){c.selection=[[v,y],[x,k]];s.call(e);N.brush()}}function O(){nopropagation$1();if(event.touches){if(event.touches.length)return;if(a)clearTimeout(a);a=setTimeout((function(){a=null}),500);P.on("touchmove.brush touchend.brush touchcancel.brush",null)}else{yesdrag(event.view,z);F.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null)}P.attr("pointer-events","all");L.attr("cursor",cursors.overlay);if(c.selection)h=c.selection;if(empty(h))c.selection=null,s.call(e);N.end()}function B(){switch(event.keyCode){case 16:{E=o&&u;break}case 18:{if(i===MODE_HANDLE){if(o)b=x-M*o,p=v+M*o;if(u)$=k-S*u,g=y+S*u;i=MODE_CENTER;I()}break}case 32:{if(i===MODE_HANDLE||i===MODE_CENTER){if(o<0)b=x-M;else if(o>0)p=v-M;if(u<0)$=k-S;else if(u>0)g=y-S;i=MODE_SPACE;L.attr("cursor",cursors.selection);I()}break}default:return}noevent$1()}function q(){switch(event.keyCode){case 16:{if(E){C=A=E=false;I()}break}case 18:{if(i===MODE_CENTER){if(o<0)b=x;else if(o>0)p=v;if(u<0)$=k;else if(u>0)g=y;i=MODE_HANDLE;I()}break}case 32:{if(i===MODE_SPACE){if(event.altKey){if(o)b=x-M*o,p=v+M*o;if(u)$=k-S*u,g=y+S*u;i=MODE_CENTER}else{if(o<0)b=x;else if(o>0)p=v;if(u<0)$=k;else if(u>0)g=y;i=MODE_HANDLE}L.attr("cursor",cursors[r]);I()}break}default:return}noevent$1()}}function f(){var n=this.__brush||{selection:null};n.extent=e.apply(this,arguments);n.dim=t;return n}o.extent=function(t){return arguments.length?(e=typeof t==="function"?t:constant$8([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),o):e};o.filter=function(t){return arguments.length?(n=typeof t==="function"?t:constant$8(!!t),o):n};o.handleSize=function(t){return arguments.length?(i=+t,o):i};o.on=function(){var t=r.on.apply(r,arguments);return t===r?o:t};return o}var cos$2=Math.cos;var sin$2=Math.sin;var pi$3=Math.PI;var halfPi$2=pi$3/2;var tau$3=pi$3*2;var max$1=Math.max;function compareValue(t){return function(e,n){return t(e.source.value+e.target.value,n.source.value+n.target.value)}}function chord(){var t=0,e=null,n=null,r=null;function i(i){var a=i.length,o=[],s=sequence(a),l=[],u=[],c=u.groups=new Array(a),f=new Array(a*a),h,d,p,v,m,g;h=0,m=-1;while(++m<a){d=0,g=-1;while(++g<a){d+=i[m][g]}o.push(d);l.push(sequence(a));h+=d}if(e)s.sort((function(t,n){return e(o[t],o[n])}));if(n)l.forEach((function(t,e){t.sort((function(t,r){return n(i[e][t],i[e][r])}))}));h=max$1(0,tau$3-t*a)/h;v=h?t:tau$3/a;d=0,m=-1;while(++m<a){p=d,g=-1;while(++g<a){var y=s[m],_=l[y][g],b=i[y][_],x=d,w=d+=b*h;f[_*a+y]={index:y,subindex:_,startAngle:x,endAngle:w,value:b}}c[y]={index:y,startAngle:p,endAngle:d,value:o[y]};d+=v}m=-1;while(++m<a){g=m-1;while(++g<a){var $=f[g*a+m],k=f[m*a+g];if($.value||k.value){u.push($.value<k.value?{source:k,target:$}:{source:$,target:k})}}}return r?u.sort(r):u}i.padAngle=function(e){return arguments.length?(t=max$1(0,e),i):t};i.sortGroups=function(t){return arguments.length?(e=t,i):e};i.sortSubgroups=function(t){return arguments.length?(n=t,i):n};i.sortChords=function(t){return arguments.length?(t==null?r=null:(r=compareValue(t))._=t,i):r&&r._};return i}var slice$4=Array.prototype.slice;function constant$7(t){return function(){return t}}var pi$2=Math.PI,tau$2=2*pi$2,epsilon$3=1e-6,tauEpsilon=tau$2-epsilon$3;function Path(){this._x0=this._y0=this._x1=this._y1=null;this._=""}function path(){return new Path}Path.prototype=path.prototype={constructor:Path,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){if(this._x1!==null){this._x1=this._x0,this._y1=this._y0;this._+="Z"}},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,n,r){this._+="Q"+ +t+","+ +e+","+(this._x1=+n)+","+(this._y1=+r)},bezierCurveTo:function(t,e,n,r,i,a){this._+="C"+ +t+","+ +e+","+ +n+","+ +r+","+(this._x1=+i)+","+(this._y1=+a)},arcTo:function(t,e,n,r,i){t=+t,e=+e,n=+n,r=+r,i=+i;var a=this._x1,o=this._y1,s=n-t,l=r-e,u=a-t,c=o-e,f=u*u+c*c;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null){this._+="M"+(this._x1=t)+","+(this._y1=e)}else if(!(f>epsilon$3));else if(!(Math.abs(c*s-l*u)>epsilon$3)||!i){this._+="L"+(this._x1=t)+","+(this._y1=e)}else{var h=n-a,d=r-o,p=s*s+l*l,v=h*h+d*d,m=Math.sqrt(p),g=Math.sqrt(f),y=i*Math.tan((pi$2-Math.acos((p+f-v)/(2*m*g)))/2),_=y/g,b=y/m;if(Math.abs(_-1)>epsilon$3){this._+="L"+(t+_*u)+","+(e+_*c)}this._+="A"+i+","+i+",0,0,"+ +(c*h>u*d)+","+(this._x1=t+b*s)+","+(this._y1=e+b*l)}},arc:function(t,e,n,r,i,a){t=+t,e=+e,n=+n;var o=n*Math.cos(r),s=n*Math.sin(r),l=t+o,u=e+s,c=1^a,f=a?r-i:i-r;if(n<0)throw new Error("negative radius: "+n);if(this._x1===null){this._+="M"+l+","+u}else if(Math.abs(this._x1-l)>epsilon$3||Math.abs(this._y1-u)>epsilon$3){this._+="L"+l+","+u}if(!n)return;if(f<0)f=f%tau$2+tau$2;if(f>tauEpsilon){this._+="A"+n+","+n+",0,1,"+c+","+(t-o)+","+(e-s)+"A"+n+","+n+",0,1,"+c+","+(this._x1=l)+","+(this._y1=u)}else if(f>epsilon$3){this._+="A"+n+","+n+",0,"+ +(f>=pi$2)+","+c+","+(this._x1=t+n*Math.cos(i))+","+(this._y1=e+n*Math.sin(i))}},rect:function(t,e,n,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +r+"h"+-n+"Z"},toString:function(){return this._}};function defaultSource$1(t){return t.source}function defaultTarget(t){return t.target}function defaultRadius$1(t){return t.radius}function defaultStartAngle(t){return t.startAngle}function defaultEndAngle(t){return t.endAngle}function ribbon(){var t=defaultSource$1,e=defaultTarget,n=defaultRadius$1,r=defaultStartAngle,i=defaultEndAngle,a=null;function o(){var o,s=slice$4.call(arguments),l=t.apply(this,s),u=e.apply(this,s),c=+n.apply(this,(s[0]=l,s)),f=r.apply(this,s)-halfPi$2,h=i.apply(this,s)-halfPi$2,d=c*cos$2(f),p=c*sin$2(f),v=+n.apply(this,(s[0]=u,s)),m=r.apply(this,s)-halfPi$2,g=i.apply(this,s)-halfPi$2;if(!a)a=o=path();a.moveTo(d,p);a.arc(0,0,c,f,h);if(f!==m||h!==g){a.quadraticCurveTo(0,0,v*cos$2(m),v*sin$2(m));a.arc(0,0,v,m,g)}a.quadraticCurveTo(0,0,d,p);a.closePath();if(o)return a=null,o+""||null}o.radius=function(t){return arguments.length?(n=typeof t==="function"?t:constant$7(+t),o):n};o.startAngle=function(t){return arguments.length?(r=typeof t==="function"?t:constant$7(+t),o):r};o.endAngle=function(t){return arguments.length?(i=typeof t==="function"?t:constant$7(+t),o):i};o.source=function(e){return arguments.length?(t=e,o):t};o.target=function(t){return arguments.length?(e=t,o):e};o.context=function(t){return arguments.length?(a=t==null?null:t,o):a};return o}var prefix="$";function Map(){}Map.prototype=map$1.prototype={constructor:Map,has:function(t){return prefix+t in this},get:function(t){return this[prefix+t]},set:function(t,e){this[prefix+t]=e;return this},remove:function(t){var e=prefix+t;return e in this&&delete this[e]},clear:function(){for(var t in this)if(t[0]===prefix)delete this[t]},keys:function(){var t=[];for(var e in this)if(e[0]===prefix)t.push(e.slice(1));return t},values:function(){var t=[];for(var e in this)if(e[0]===prefix)t.push(this[e]);return t},entries:function(){var t=[];for(var e in this)if(e[0]===prefix)t.push({key:e.slice(1),value:this[e]});return t},size:function(){var t=0;for(var e in this)if(e[0]===prefix)++t;return t},empty:function(){for(var t in this)if(t[0]===prefix)return false;return true},each:function(t){for(var e in this)if(e[0]===prefix)t(this[e],e.slice(1),this)}};function map$1(t,e){var n=new Map;if(t instanceof Map)t.each((function(t,e){n.set(e,t)}));else if(Array.isArray(t)){var r=-1,i=t.length,a;if(e==null)while(++r<i)n.set(r,t[r]);else while(++r<i)n.set(e(a=t[r],r,t),a)}else if(t)for(var o in t)n.set(o,t[o]);return n}function nest(){var t=[],e=[],n,r,i;function a(e,i,o,s){if(i>=t.length){if(n!=null)e.sort(n);return r!=null?r(e):e}var l=-1,u=e.length,c=t[i++],f,h,d=map$1(),p,v=o();while(++l<u){if(p=d.get(f=c(h=e[l])+"")){p.push(h)}else{d.set(f,[h])}}d.each((function(t,e){s(v,e,a(t,i,o,s))}));return v}function o(n,i){if(++i>t.length)return n;var a,s=e[i-1];if(r!=null&&i>=t.length)a=n.entries();else a=[],n.each((function(t,e){a.push({key:e,values:o(t,i)})}));return s!=null?a.sort((function(t,e){return s(t.key,e.key)})):a}return i={object:function(t){return a(t,0,createObject,setObject)},map:function(t){return a(t,0,createMap,setMap)},entries:function(t){return o(a(t,0,createMap,setMap),0)},key:function(e){t.push(e);return i},sortKeys:function(n){e[t.length-1]=n;return i},sortValues:function(t){n=t;return i},rollup:function(t){r=t;return i}}}function createObject(){return{}}function setObject(t,e,n){t[e]=n}function createMap(){return map$1()}function setMap(t,e,n){t.set(e,n)}function Set(){}var proto=map$1.prototype;Set.prototype=set.prototype={constructor:Set,has:proto.has,add:function(t){t+="";this[prefix+t]=t;return this},remove:proto.remove,clear:proto.clear,values:proto.keys,size:proto.size,empty:proto.empty,each:proto.each};function set(t,e){var n=new Set;if(t instanceof Set)t.each((function(t){n.add(t)}));else if(t){var r=-1,i=t.length;if(e==null)while(++r<i)n.add(t[r]);else while(++r<i)n.add(e(t[r],r,t))}return n}function keys(t){var e=[];for(var n in t)e.push(n);return e}function values(t){var e=[];for(var n in t)e.push(t[n]);return e}function entries(t){var e=[];for(var n in t)e.push({key:n,value:t[n]});return e}var EOL={},EOF={},QUOTE=34,NEWLINE=10,RETURN=13;function objectConverter(t){return new Function("d","return {"+t.map((function(t,e){return JSON.stringify(t)+": d["+e+"]"})).join(",")+"}")}function customConverter(t,e){var n=objectConverter(t);return function(r,i){return e(n(r),i,t)}}function inferColumns(t){var e=Object.create(null),n=[];t.forEach((function(t){for(var r in t){if(!(r in e)){n.push(e[r]=r)}}}));return n}function dsv$1(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function r(t,e){var n,r,a=i(t,(function(t,i){if(n)return n(t,i-1);r=t,n=e?customConverter(t,e):objectConverter(t)}));a.columns=r||[];return a}function i(t,e){var r=[],i=t.length,a=0,o=0,s,l=i<=0,u=false;if(t.charCodeAt(i-1)===NEWLINE)--i;if(t.charCodeAt(i-1)===RETURN)--i;function c(){if(l)return EOF;if(u)return u=false,EOL;var e,r=a,o;if(t.charCodeAt(r)===QUOTE){while(a++<i&&t.charCodeAt(a)!==QUOTE||t.charCodeAt(++a)===QUOTE);if((e=a)>=i)l=true;else if((o=t.charCodeAt(a++))===NEWLINE)u=true;else if(o===RETURN){u=true;if(t.charCodeAt(a)===NEWLINE)++a}return t.slice(r+1,e-1).replace(/""/g,'"')}while(a<i){if((o=t.charCodeAt(e=a++))===NEWLINE)u=true;else if(o===RETURN){u=true;if(t.charCodeAt(a)===NEWLINE)++a}else if(o!==n)continue;return t.slice(r,e)}return l=true,t.slice(r,i)}while((s=c())!==EOF){var f=[];while(s!==EOL&&s!==EOF)f.push(s),s=c();if(e&&(f=e(f,o++))==null)continue;r.push(f)}return r}function a(e,n){if(n==null)n=inferColumns(e);return[n.map(l).join(t)].concat(e.map((function(e){return n.map((function(t){return l(e[t])})).join(t)}))).join("\n")}function o(t){return t.map(s).join("\n")}function s(e){return e.map(l).join(t)}function l(t){return t==null?"":e.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t}return{parse:r,parseRows:i,format:a,formatRows:o}}var csv$1=dsv$1(",");var csvParse=csv$1.parse;var csvParseRows=csv$1.parseRows;var csvFormat=csv$1.format;var csvFormatRows=csv$1.formatRows;var tsv$1=dsv$1("\t");var tsvParse=tsv$1.parse;var tsvParseRows=tsv$1.parseRows;var tsvFormat=tsv$1.format;var tsvFormatRows=tsv$1.formatRows;function center(t,e){var n;if(t==null)t=0;if(e==null)e=0;function r(){var r,i=n.length,a,o=0,s=0;for(r=0;r<i;++r){a=n[r],o+=a.x,s+=a.y}for(o=o/i-t,s=s/i-e,r=0;r<i;++r){a=n[r],a.x-=o,a.y-=s}}r.initialize=function(t){n=t};r.x=function(e){return arguments.length?(t=+e,r):t};r.y=function(t){return arguments.length?(e=+t,r):e};return r}function constant$6(t){return function(){return t}}function jiggle(){return(Math.random()-.5)*1e-6}function tree_add(t){var e=+this._x.call(null,t),n=+this._y.call(null,t);return add$1(this.cover(e,n),e,n,t)}function add$1(t,e,n,r){if(isNaN(e)||isNaN(n))return t;var i,a=t._root,o={data:r},s=t._x0,l=t._y0,u=t._x1,c=t._y1,f,h,d,p,v,m,g,y;if(!a)return t._root=o,t;while(a.length){if(v=e>=(f=(s+u)/2))s=f;else u=f;if(m=n>=(h=(l+c)/2))l=h;else c=h;if(i=a,!(a=a[g=m<<1|v]))return i[g]=o,t}d=+t._x.call(null,a.data);p=+t._y.call(null,a.data);if(e===d&&n===p)return o.next=a,i?i[g]=o:t._root=o,t;do{i=i?i[g]=new Array(4):t._root=new Array(4);if(v=e>=(f=(s+u)/2))s=f;else u=f;if(m=n>=(h=(l+c)/2))l=h;else c=h}while((g=m<<1|v)===(y=(p>=h)<<1|d>=f));return i[y]=a,i[g]=o,t}function addAll(t){var e,n,r=t.length,i,a,o=new Array(r),s=new Array(r),l=Infinity,u=Infinity,c=-Infinity,f=-Infinity;for(n=0;n<r;++n){if(isNaN(i=+this._x.call(null,e=t[n]))||isNaN(a=+this._y.call(null,e)))continue;o[n]=i;s[n]=a;if(i<l)l=i;if(i>c)c=i;if(a<u)u=a;if(a>f)f=a}if(c<l)l=this._x0,c=this._x1;if(f<u)u=this._y0,f=this._y1;this.cover(l,u).cover(c,f);for(n=0;n<r;++n){add$1(this,o[n],s[n],t[n])}return this}function tree_cover(t,e){if(isNaN(t=+t)||isNaN(e=+e))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n)){i=(n=Math.floor(t))+1;a=(r=Math.floor(e))+1}else if(n>t||t>i||r>e||e>a){var o=i-n,s=this._root,l,u;switch(u=(e<(r+a)/2)<<1|t<(n+i)/2){case 0:{do{l=new Array(4),l[u]=s,s=l}while(o*=2,i=n+o,a=r+o,t>i||e>a);break}case 1:{do{l=new Array(4),l[u]=s,s=l}while(o*=2,n=i-o,a=r+o,n>t||e>a);break}case 2:{do{l=new Array(4),l[u]=s,s=l}while(o*=2,i=n+o,r=a-o,t>i||r>e);break}case 3:{do{l=new Array(4),l[u]=s,s=l}while(o*=2,n=i-o,r=a-o,n>t||r>e);break}}if(this._root&&this._root.length)this._root=s}else return this;this._x0=n;this._y0=r;this._x1=i;this._y1=a;return this}function tree_data(){var t=[];this.visit((function(e){if(!e.length)do{t.push(e.data)}while(e=e.next)}));return t}function tree_extent(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?undefined:[[this._x0,this._y0],[this._x1,this._y1]]}function Quad(t,e,n,r,i){this.node=t;this.x0=e;this.y0=n;this.x1=r;this.y1=i}function tree_find(t,e,n){var r,i=this._x0,a=this._y0,o,s,l,u,c=this._x1,f=this._y1,h=[],d=this._root,p,v;if(d)h.push(new Quad(d,i,a,c,f));if(n==null)n=Infinity;else{i=t-n,a=e-n;c=t+n,f=e+n;n*=n}while(p=h.pop()){if(!(d=p.node)||(o=p.x0)>c||(s=p.y0)>f||(l=p.x1)<i||(u=p.y1)<a)continue;if(d.length){var m=(o+l)/2,g=(s+u)/2;h.push(new Quad(d[3],m,g,l,u),new Quad(d[2],o,g,m,u),new Quad(d[1],m,s,l,g),new Quad(d[0],o,s,m,g));if(v=(e>=g)<<1|t>=m){p=h[h.length-1];h[h.length-1]=h[h.length-1-v];h[h.length-1-v]=p}}else{var y=t-+this._x.call(null,d.data),_=e-+this._y.call(null,d.data),b=y*y+_*_;if(b<n){var x=Math.sqrt(n=b);i=t-x,a=e-x;c=t+x,f=e+x;r=d.data}}}return r}function tree_remove(t){if(isNaN(c=+this._x.call(null,t))||isNaN(f=+this._y.call(null,t)))return this;var e,n=this._root,r,i,a,o=this._x0,s=this._y0,l=this._x1,u=this._y1,c,f,h,d,p,v,m,g;if(!n)return this;if(n.length)while(true){if(p=c>=(h=(o+l)/2))o=h;else l=h;if(v=f>=(d=(s+u)/2))s=d;else u=d;if(!(e=n,n=n[m=v<<1|p]))return this;if(!n.length)break;if(e[m+1&3]||e[m+2&3]||e[m+3&3])r=e,g=m}while(n.data!==t)if(!(i=n,n=n.next))return this;if(a=n.next)delete n.next;if(i)return a?i.next=a:delete i.next,this;if(!e)return this._root=a,this;a?e[m]=a:delete e[m];if((n=e[0]||e[1]||e[2]||e[3])&&n===(e[3]||e[2]||e[1]||e[0])&&!n.length){if(r)r[g]=n;else this._root=n}return this}function removeAll(t){for(var e=0,n=t.length;e<n;++e)this.remove(t[e]);return this}function tree_root(){return this._root}function tree_size(){var t=0;this.visit((function(e){if(!e.length)do{++t}while(e=e.next)}));return t}function tree_visit(t){var e=[],n,r=this._root,i,a,o,s,l;if(r)e.push(new Quad(r,this._x0,this._y0,this._x1,this._y1));while(n=e.pop()){if(!t(r=n.node,a=n.x0,o=n.y0,s=n.x1,l=n.y1)&&r.length){var u=(a+s)/2,c=(o+l)/2;if(i=r[3])e.push(new Quad(i,u,c,s,l));if(i=r[2])e.push(new Quad(i,a,c,u,l));if(i=r[1])e.push(new Quad(i,u,o,s,c));if(i=r[0])e.push(new Quad(i,a,o,u,c))}}return this}function tree_visitAfter(t){var e=[],n=[],r;if(this._root)e.push(new Quad(this._root,this._x0,this._y0,this._x1,this._y1));while(r=e.pop()){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,l=r.x1,u=r.y1,c=(o+l)/2,f=(s+u)/2;if(a=i[0])e.push(new Quad(a,o,s,c,f));if(a=i[1])e.push(new Quad(a,c,s,l,f));if(a=i[2])e.push(new Quad(a,o,f,c,u));if(a=i[3])e.push(new Quad(a,c,f,l,u))}n.push(r)}while(r=n.pop()){t(r.node,r.x0,r.y0,r.x1,r.y1)}return this}function defaultX(t){return t[0]}function tree_x(t){return arguments.length?(this._x=t,this):this._x}function defaultY(t){return t[1]}function tree_y(t){return arguments.length?(this._y=t,this):this._y}function quadtree(t,e,n){var r=new Quadtree(e==null?defaultX:e,n==null?defaultY:n,NaN,NaN,NaN,NaN);return t==null?r:r.addAll(t)}function Quadtree(t,e,n,r,i,a){this._x=t;this._y=e;this._x0=n;this._y0=r;this._x1=i;this._y1=a;this._root=undefined}function leaf_copy(t){var e={data:t.data},n=e;while(t=t.next)n=n.next={data:t.data};return e}var treeProto=quadtree.prototype=Quadtree.prototype;treeProto.copy=function(){var t=new Quadtree(this._x,this._y,this._x0,this._y0,this._x1,this._y1),e=this._root,n,r;if(!e)return t;if(!e.length)return t._root=leaf_copy(e),t;n=[{source:e,target:t._root=new Array(4)}];while(e=n.pop()){for(var i=0;i<4;++i){if(r=e.source[i]){if(r.length)n.push({source:r,target:e.target[i]=new Array(4)});else e.target[i]=leaf_copy(r)}}}return t};treeProto.add=tree_add;treeProto.addAll=addAll;treeProto.cover=tree_cover;treeProto.data=tree_data;treeProto.extent=tree_extent;treeProto.find=tree_find;treeProto.remove=tree_remove;treeProto.removeAll=removeAll;treeProto.root=tree_root;treeProto.size=tree_size;treeProto.visit=tree_visit;treeProto.visitAfter=tree_visitAfter;treeProto.x=tree_x;treeProto.y=tree_y;function x$4(t){return t.x+t.vx}function y$4(t){return t.y+t.vy}function collide(t){var e,n,r=1,i=1;if(typeof t!=="function")t=constant$6(t==null?1:+t);function a(){var t,a=e.length,s,l,u,c,f,h;for(var d=0;d<i;++d){s=quadtree(e,x$4,y$4).visitAfter(o);for(t=0;t<a;++t){l=e[t];f=n[l.index],h=f*f;u=l.x+l.vx;c=l.y+l.vy;s.visit(p)}}function p(t,e,n,i,a){var o=t.data,s=t.r,d=f+s;if(o){if(o.index>l.index){var p=u-o.x-o.vx,v=c-o.y-o.vy,m=p*p+v*v;if(m<d*d){if(p===0)p=jiggle(),m+=p*p;if(v===0)v=jiggle(),m+=v*v;m=(d-(m=Math.sqrt(m)))/m*r;l.vx+=(p*=m)*(d=(s*=s)/(h+s));l.vy+=(v*=m)*d;o.vx-=p*(d=1-d);o.vy-=v*d}}return}return e>u+d||i<u-d||n>c+d||a<c-d}}function o(t){if(t.data)return t.r=n[t.data.index];for(var e=t.r=0;e<4;++e){if(t[e]&&t[e].r>t.r){t.r=t[e].r}}}function s(){if(!e)return;var r,i=e.length,a;n=new Array(i);for(r=0;r<i;++r)a=e[r],n[a.index]=+t(a,r,e)}a.initialize=function(t){e=t;s()};a.iterations=function(t){return arguments.length?(i=+t,a):i};a.strength=function(t){return arguments.length?(r=+t,a):r};a.radius=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),s(),a):t};return a}function index$3(t){return t.index}function find(t,e){var n=t.get(e);if(!n)throw new Error("missing: "+e);return n}function link$2(t){var e=index$3,n=c,r,i=constant$6(30),a,o,s,l,u=1;if(t==null)t=[];function c(t){return 1/Math.min(s[t.source.index],s[t.target.index])}function f(e){for(var n=0,i=t.length;n<u;++n){for(var o=0,s,c,f,h,d,p,v;o<i;++o){s=t[o],c=s.source,f=s.target;h=f.x+f.vx-c.x-c.vx||jiggle();d=f.y+f.vy-c.y-c.vy||jiggle();p=Math.sqrt(h*h+d*d);p=(p-a[o])/p*e*r[o];h*=p,d*=p;f.vx-=h*(v=l[o]);f.vy-=d*v;c.vx+=h*(v=1-v);c.vy+=d*v}}}function h(){if(!o)return;var n,i=o.length,u=t.length,c=map$1(o,e),f;for(n=0,s=new Array(i);n<u;++n){f=t[n],f.index=n;if(typeof f.source!=="object")f.source=find(c,f.source);if(typeof f.target!=="object")f.target=find(c,f.target);s[f.source.index]=(s[f.source.index]||0)+1;s[f.target.index]=(s[f.target.index]||0)+1}for(n=0,l=new Array(u);n<u;++n){f=t[n],l[n]=s[f.source.index]/(s[f.source.index]+s[f.target.index])}r=new Array(u),d();a=new Array(u),p()}function d(){if(!o)return;for(var e=0,i=t.length;e<i;++e){r[e]=+n(t[e],e,t)}}function p(){if(!o)return;for(var e=0,n=t.length;e<n;++e){a[e]=+i(t[e],e,t)}}f.initialize=function(t){o=t;h()};f.links=function(e){return arguments.length?(t=e,h(),f):t};f.id=function(t){return arguments.length?(e=t,f):e};f.iterations=function(t){return arguments.length?(u=+t,f):u};f.strength=function(t){return arguments.length?(n=typeof t==="function"?t:constant$6(+t),d(),f):n};f.distance=function(t){return arguments.length?(i=typeof t==="function"?t:constant$6(+t),p(),f):i};return f}function x$3(t){return t.x}function y$3(t){return t.y}var initialRadius=10,initialAngle=Math.PI*(3-Math.sqrt(5));function simulation(t){var e,n=1,r=.001,i=1-Math.pow(r,1/300),a=0,o=.6,s=map$1(),l=timer(c),u=dispatch("tick","end");if(t==null)t=[];function c(){f();u.call("tick",e);if(n<r){l.stop();u.call("end",e)}}function f(){var e,r=t.length,l;n+=(a-n)*i;s.each((function(t){t(n)}));for(e=0;e<r;++e){l=t[e];if(l.fx==null)l.x+=l.vx*=o;else l.x=l.fx,l.vx=0;if(l.fy==null)l.y+=l.vy*=o;else l.y=l.fy,l.vy=0}}function h(){for(var e=0,n=t.length,r;e<n;++e){r=t[e],r.index=e;if(isNaN(r.x)||isNaN(r.y)){var i=initialRadius*Math.sqrt(e),a=e*initialAngle;r.x=i*Math.cos(a);r.y=i*Math.sin(a)}if(isNaN(r.vx)||isNaN(r.vy)){r.vx=r.vy=0}}}function d(e){if(e.initialize)e.initialize(t);return e}h();return e={tick:f,restart:function(){return l.restart(c),e},stop:function(){return l.stop(),e},nodes:function(n){return arguments.length?(t=n,h(),s.each(d),e):t},alpha:function(t){return arguments.length?(n=+t,e):n},alphaMin:function(t){return arguments.length?(r=+t,e):r},alphaDecay:function(t){return arguments.length?(i=+t,e):+i},alphaTarget:function(t){return arguments.length?(a=+t,e):a},velocityDecay:function(t){return arguments.length?(o=1-t,e):1-o},force:function(t,n){return arguments.length>1?(n==null?s.remove(t):s.set(t,d(n)),e):s.get(t)},find:function(e,n,r){var i=0,a=t.length,o,s,l,u,c;if(r==null)r=Infinity;else r*=r;for(i=0;i<a;++i){u=t[i];o=e-u.x;s=n-u.y;l=o*o+s*s;if(l<r)c=u,r=l}return c},on:function(t,n){return arguments.length>1?(u.on(t,n),e):u.on(t)}}}function manyBody(){var t,e,n,r=constant$6(-30),i,a=1,o=Infinity,s=.81;function l(r){var i,a=t.length,o=quadtree(t,x$3,y$3).visitAfter(c);for(n=r,i=0;i<a;++i)e=t[i],o.visit(f)}function u(){if(!t)return;var e,n=t.length,a;i=new Array(n);for(e=0;e<n;++e)a=t[e],i[a.index]=+r(a,e,t)}function c(t){var e=0,n,r,a=0,o,s,l;if(t.length){for(o=s=l=0;l<4;++l){if((n=t[l])&&(r=Math.abs(n.value))){e+=n.value,a+=r,o+=r*n.x,s+=r*n.y}}t.x=o/a;t.y=s/a}else{n=t;n.x=n.data.x;n.y=n.data.y;do{e+=i[n.data.index]}while(n=n.next)}t.value=e}function f(t,r,l,u){if(!t.value)return true;var c=t.x-e.x,f=t.y-e.y,h=u-r,d=c*c+f*f;if(h*h/s<d){if(d<o){if(c===0)c=jiggle(),d+=c*c;if(f===0)f=jiggle(),d+=f*f;if(d<a)d=Math.sqrt(a*d);e.vx+=c*t.value*n/d;e.vy+=f*t.value*n/d}return true}else if(t.length||d>=o)return;if(t.data!==e||t.next){if(c===0)c=jiggle(),d+=c*c;if(f===0)f=jiggle(),d+=f*f;if(d<a)d=Math.sqrt(a*d)}do{if(t.data!==e){h=i[t.data.index]*n/d;e.vx+=c*h;e.vy+=f*h}}while(t=t.next)}l.initialize=function(e){t=e;u()};l.strength=function(t){return arguments.length?(r=typeof t==="function"?t:constant$6(+t),u(),l):r};l.distanceMin=function(t){return arguments.length?(a=t*t,l):Math.sqrt(a)};l.distanceMax=function(t){return arguments.length?(o=t*t,l):Math.sqrt(o)};l.theta=function(t){return arguments.length?(s=t*t,l):Math.sqrt(s)};return l}function radial(t,e,n){var r,i=constant$6(.1),a,o;if(typeof t!=="function")t=constant$6(+t);if(e==null)e=0;if(n==null)n=0;function s(t){for(var i=0,s=r.length;i<s;++i){var l=r[i],u=l.x-e||1e-6,c=l.y-n||1e-6,f=Math.sqrt(u*u+c*c),h=(o[i]-f)*a[i]*t/f;l.vx+=u*h;l.vy+=c*h}}function l(){if(!r)return;var e,n=r.length;a=new Array(n);o=new Array(n);for(e=0;e<n;++e){o[e]=+t(r[e],e,r);a[e]=isNaN(o[e])?0:+i(r[e],e,r)}}s.initialize=function(t){r=t,l()};s.strength=function(t){return arguments.length?(i=typeof t==="function"?t:constant$6(+t),l(),s):i};s.radius=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),l(),s):t};s.x=function(t){return arguments.length?(e=+t,s):e};s.y=function(t){return arguments.length?(n=+t,s):n};return s}function x$2(t){var e=constant$6(.1),n,r,i;if(typeof t!=="function")t=constant$6(t==null?0:+t);function a(t){for(var e=0,a=n.length,o;e<a;++e){o=n[e],o.vx+=(i[e]-o.x)*r[e]*t}}function o(){if(!n)return;var a,o=n.length;r=new Array(o);i=new Array(o);for(a=0;a<o;++a){r[a]=isNaN(i[a]=+t(n[a],a,n))?0:+e(n[a],a,n)}}a.initialize=function(t){n=t;o()};a.strength=function(t){return arguments.length?(e=typeof t==="function"?t:constant$6(+t),o(),a):e};a.x=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),o(),a):t};return a}function y$2(t){var e=constant$6(.1),n,r,i;if(typeof t!=="function")t=constant$6(t==null?0:+t);function a(t){for(var e=0,a=n.length,o;e<a;++e){o=n[e],o.vy+=(i[e]-o.y)*r[e]*t}}function o(){if(!n)return;var a,o=n.length;r=new Array(o);i=new Array(o);for(a=0;a<o;++a){r[a]=isNaN(i[a]=+t(n[a],a,n))?0:+e(n[a],a,n)}}a.initialize=function(t){n=t;o()};a.strength=function(t){return arguments.length?(e=typeof t==="function"?t:constant$6(+t),o(),a):e};a.y=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),o(),a):t};return a}function formatDecimal(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,r=t.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+t.slice(n+1)]}function exponent(t){return t=formatDecimal(Math.abs(t)),t?t[1]:NaN}function formatGroup(t,e){return function(n,r){var i=n.length,a=[],o=0,s=t[0],l=0;while(i>0&&s>0){if(l+s+1>r)s=Math.max(1,r-l);a.push(n.substring(i-=s,i+s));if((l+=s+1)>r)break;s=t[o=(o+1)%t.length]}return a.reverse().join(e)}}function formatNumerals(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}function formatDefault(t,e){t=t.toPrecision(e);t:for(var n=t.length,r=1,i=-1,a;r<n;++r){switch(t[r]){case".":i=a=r;break;case"0":if(i===0)i=r;a=r;break;case"e":break t;default:if(i>0)i=0;break}}return i>0?t.slice(0,i)+t.slice(a+1):t}var prefixExponent;function formatPrefixAuto(t,e){var n=formatDecimal(t,e);if(!n)return t+"";var r=n[0],i=n[1],a=i-(prefixExponent=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+new Array(a-o+1).join("0"):a>0?r.slice(0,a)+"."+r.slice(a):"0."+new Array(1-a).join("0")+formatDecimal(t,Math.max(0,e+a-1))[0]}function formatRounded(t,e){var n=formatDecimal(t,e);if(!n)return t+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}var formatTypes={"":formatDefault,"%":function(t,e){return(t*100).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.round(t).toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return formatRounded(t*100,e)},r:formatRounded,s:formatPrefixAuto,X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};var re=/^(?:(.)?([<>=^]))?([+\-\( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?([a-z%])?$/i;function formatSpecifier(t){return new FormatSpecifier(t)}formatSpecifier.prototype=FormatSpecifier.prototype;function FormatSpecifier(t){if(!(e=re.exec(t)))throw new Error("invalid format: "+t);var e,n=e[1]||" ",r=e[2]||">",i=e[3]||"-",a=e[4]||"",o=!!e[5],s=e[6]&&+e[6],l=!!e[7],u=e[8]&&+e[8].slice(1),c=e[9]||"";if(c==="n")l=true,c="g";else if(!formatTypes[c])c="";if(o||n==="0"&&r==="=")o=true,n="0",r="=";this.fill=n;this.align=r;this.sign=i;this.symbol=a;this.zero=o;this.width=s;this.comma=l;this.precision=u;this.type=c}FormatSpecifier.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width==null?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision==null?"":"."+Math.max(0,this.precision|0))+this.type};function identity$6(t){return t}var prefixes=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function formatLocale$1(t){var e=t.grouping&&t.thousands?formatGroup(t.grouping,t.thousands):identity$6,n=t.currency,r=t.decimal,i=t.numerals?formatNumerals(t.numerals):identity$6,a=t.percent||"%";function o(t){t=formatSpecifier(t);var o=t.fill,s=t.align,l=t.sign,u=t.symbol,c=t.zero,f=t.width,h=t.comma,d=t.precision,p=t.type;var v=u==="$"?n[0]:u==="#"&&/[boxX]/.test(p)?"0"+p.toLowerCase():"",m=u==="$"?n[1]:/[%p]/.test(p)?a:"";var g=formatTypes[p],y=!p||/[defgprs%]/.test(p);d=d==null?p?6:12:/[gprs]/.test(p)?Math.max(1,Math.min(21,d)):Math.max(0,Math.min(20,d));function _(t){var n=v,a=m,u,_,b;if(p==="c"){a=g(t)+a;t=""}else{t=+t;var x=t<0;t=g(Math.abs(t),d);if(x&&+t===0)x=false;n=(x?l==="("?l:"-":l==="-"||l==="("?"":l)+n;a=(p==="s"?prefixes[8+prefixExponent/3]:"")+a+(x&&l==="("?")":"");if(y){u=-1,_=t.length;while(++u<_){if(b=t.charCodeAt(u),48>b||b>57){a=(b===46?r+t.slice(u+1):t.slice(u))+a;t=t.slice(0,u);break}}}}if(h&&!c)t=e(t,Infinity);var w=n.length+t.length+a.length,$=w<f?new Array(f-w+1).join(o):"";if(h&&c)t=e($+t,$.length?f-a.length:Infinity),$="";switch(s){case"<":t=n+t+a+$;break;case"=":t=n+$+t+a;break;case"^":t=$.slice(0,w=$.length>>1)+n+t+a+$.slice(w);break;default:t=$+n+t+a;break}return i(t)}_.toString=function(){return t+""};return _}function s(t,e){var n=o((t=formatSpecifier(t),t.type="f",t)),r=Math.max(-8,Math.min(8,Math.floor(exponent(e)/3)))*3,i=Math.pow(10,-r),a=prefixes[8+r/3];return function(t){return n(i*t)+a}}return{format:o,formatPrefix:s}}var locale$1;var format;var formatPrefix;defaultLocale$1({decimal:".",thousands:",",grouping:[3],currency:["$",""]});function defaultLocale$1(t){locale$1=formatLocale$1(t);format=locale$1.format;formatPrefix=locale$1.formatPrefix;return locale$1}function precisionFixed(t){return Math.max(0,-exponent(Math.abs(t)))}function precisionPrefix(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(exponent(e)/3)))*3-exponent(Math.abs(t)))}function precisionRound(t,e){t=Math.abs(t),e=Math.abs(e)-t;return Math.max(0,exponent(e)-exponent(t))+1}function adder(){return new Adder}function Adder(){this.reset()}Adder.prototype={constructor:Adder,reset:function(){this.s=this.t=0},add:function(t){add(temp,t,this.t);add(this,temp.s,this.s);if(this.s)this.t+=temp.t;else this.s=temp.t},valueOf:function(){return this.s}};var temp=new Adder;function add(t,e,n){var r=t.s=e+n,i=r-e,a=r-i;t.t=e-a+(n-i)}var epsilon$2=1e-6;var epsilon2$1=1e-12;var pi$1=Math.PI;var halfPi$1=pi$1/2;var quarterPi=pi$1/4;var tau$1=pi$1*2;var degrees=180/pi$1;var radians=pi$1/180;var abs$1=Math.abs;var atan=Math.atan;var atan2$1=Math.atan2;var cos$1=Math.cos;var ceil=Math.ceil;var exp=Math.exp;var log$1=Math.log;var pow$1=Math.pow;var sin$1=Math.sin;var sign$1=Math.sign||function(t){return t>0?1:t<0?-1:0};var sqrt$2=Math.sqrt;var tan=Math.tan;function acos$1(t){return t>1?0:t<-1?pi$1:Math.acos(t)}function asin$1(t){return t>1?halfPi$1:t<-1?-halfPi$1:Math.asin(t)}function haversin(t){return(t=sin$1(t/2))*t}function noop$1(){}function streamGeometry(t,e){if(t&&streamGeometryType.hasOwnProperty(t.type)){streamGeometryType[t.type](t,e)}}var streamObjectType={Feature:function(t,e){streamGeometry(t.geometry,e)},FeatureCollection:function(t,e){var n=t.features,r=-1,i=n.length;while(++r<i)streamGeometry(n[r].geometry,e)}};var streamGeometryType={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates;e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)t=n[r],e.point(t[0],t[1],t[2])},LineString:function(t,e){streamLine(t.coordinates,e,0)},MultiLineString:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)streamLine(n[r],e,0)},Polygon:function(t,e){streamPolygon(t.coordinates,e)},MultiPolygon:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)streamPolygon(n[r],e)},GeometryCollection:function(t,e){var n=t.geometries,r=-1,i=n.length;while(++r<i)streamGeometry(n[r],e)}};function streamLine(t,e,n){var r=-1,i=t.length-n,a;e.lineStart();while(++r<i)a=t[r],e.point(a[0],a[1],a[2]);e.lineEnd()}function streamPolygon(t,e){var n=-1,r=t.length;e.polygonStart();while(++n<r)streamLine(t[n],e,1);e.polygonEnd()}function geoStream(t,e){if(t&&streamObjectType.hasOwnProperty(t.type)){streamObjectType[t.type](t,e)}else{streamGeometry(t,e)}}var areaRingSum$1=adder();var areaSum$1=adder(),lambda00$2,phi00$2,lambda0$2,cosPhi0$1,sinPhi0$1;var areaStream$1={point:noop$1,lineStart:noop$1,lineEnd:noop$1,polygonStart:function(){areaRingSum$1.reset();areaStream$1.lineStart=areaRingStart$1;areaStream$1.lineEnd=areaRingEnd$1},polygonEnd:function(){var t=+areaRingSum$1;areaSum$1.add(t<0?tau$1+t:t);this.lineStart=this.lineEnd=this.point=noop$1},sphere:function(){areaSum$1.add(tau$1)}};function areaRingStart$1(){areaStream$1.point=areaPointFirst$1}function areaRingEnd$1(){areaPoint$1(lambda00$2,phi00$2)}function areaPointFirst$1(t,e){areaStream$1.point=areaPoint$1;lambda00$2=t,phi00$2=e;t*=radians,e*=radians;lambda0$2=t,cosPhi0$1=cos$1(e=e/2+quarterPi),sinPhi0$1=sin$1(e)}function areaPoint$1(t,e){t*=radians,e*=radians;e=e/2+quarterPi;var n=t-lambda0$2,r=n>=0?1:-1,i=r*n,a=cos$1(e),o=sin$1(e),s=sinPhi0$1*o,l=cosPhi0$1*a+s*cos$1(i),u=s*r*sin$1(i);areaRingSum$1.add(atan2$1(u,l));lambda0$2=t,cosPhi0$1=a,sinPhi0$1=o}function area$2(t){areaSum$1.reset();geoStream(t,areaStream$1);return areaSum$1*2}function spherical(t){return[atan2$1(t[1],t[0]),asin$1(t[2])]}function cartesian(t){var e=t[0],n=t[1],r=cos$1(n);return[r*cos$1(e),r*sin$1(e),sin$1(n)]}function cartesianDot(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function cartesianCross(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function cartesianAddInPlace(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function cartesianScale(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function cartesianNormalizeInPlace(t){var e=sqrt$2(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var lambda0$1,phi0,lambda1,phi1,lambda2,lambda00$1,phi00$1,p0,deltaSum=adder(),ranges,range;var boundsStream$1={point:boundsPoint$1,lineStart:boundsLineStart,lineEnd:boundsLineEnd,polygonStart:function(){boundsStream$1.point=boundsRingPoint;boundsStream$1.lineStart=boundsRingStart;boundsStream$1.lineEnd=boundsRingEnd;deltaSum.reset();areaStream$1.polygonStart()},polygonEnd:function(){areaStream$1.polygonEnd();boundsStream$1.point=boundsPoint$1;boundsStream$1.lineStart=boundsLineStart;boundsStream$1.lineEnd=boundsLineEnd;if(areaRingSum$1<0)lambda0$1=-(lambda1=180),phi0=-(phi1=90);else if(deltaSum>epsilon$2)phi1=90;else if(deltaSum<-epsilon$2)phi0=-90;range[0]=lambda0$1,range[1]=lambda1}};function boundsPoint$1(t,e){ranges.push(range=[lambda0$1=t,lambda1=t]);if(e<phi0)phi0=e;if(e>phi1)phi1=e}function linePoint(t,e){var n=cartesian([t*radians,e*radians]);if(p0){var r=cartesianCross(p0,n),i=[r[1],-r[0],0],a=cartesianCross(i,r);cartesianNormalizeInPlace(a);a=spherical(a);var o=t-lambda2,s=o>0?1:-1,l=a[0]*degrees*s,u,c=abs$1(o)>180;if(c^(s*lambda2<l&&l<s*t)){u=a[1]*degrees;if(u>phi1)phi1=u}else if(l=(l+360)%360-180,c^(s*lambda2<l&&l<s*t)){u=-a[1]*degrees;if(u<phi0)phi0=u}else{if(e<phi0)phi0=e;if(e>phi1)phi1=e}if(c){if(t<lambda2){if(angle(lambda0$1,t)>angle(lambda0$1,lambda1))lambda1=t}else{if(angle(t,lambda1)>angle(lambda0$1,lambda1))lambda0$1=t}}else{if(lambda1>=lambda0$1){if(t<lambda0$1)lambda0$1=t;if(t>lambda1)lambda1=t}else{if(t>lambda2){if(angle(lambda0$1,t)>angle(lambda0$1,lambda1))lambda1=t}else{if(angle(t,lambda1)>angle(lambda0$1,lambda1))lambda0$1=t}}}}else{ranges.push(range=[lambda0$1=t,lambda1=t])}if(e<phi0)phi0=e;if(e>phi1)phi1=e;p0=n,lambda2=t}function boundsLineStart(){boundsStream$1.point=linePoint}function boundsLineEnd(){range[0]=lambda0$1,range[1]=lambda1;boundsStream$1.point=boundsPoint$1;p0=null}function boundsRingPoint(t,e){if(p0){var n=t-lambda2;deltaSum.add(abs$1(n)>180?n+(n>0?360:-360):n)}else{lambda00$1=t,phi00$1=e}areaStream$1.point(t,e);linePoint(t,e)}function boundsRingStart(){areaStream$1.lineStart()}function boundsRingEnd(){boundsRingPoint(lambda00$1,phi00$1);areaStream$1.lineEnd();if(abs$1(deltaSum)>epsilon$2)lambda0$1=-(lambda1=180);range[0]=lambda0$1,range[1]=lambda1;p0=null}function angle(t,e){return(e-=t)<0?e+360:e}function rangeCompare(t,e){return t[0]-e[0]}function rangeContains(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:e<t[0]||t[1]<e}function bounds(t){var e,n,r,i,a,o,s;phi1=lambda1=-(lambda0$1=phi0=Infinity);ranges=[];geoStream(t,boundsStream$1);if(n=ranges.length){ranges.sort(rangeCompare);for(e=1,r=ranges[0],a=[r];e<n;++e){i=ranges[e];if(rangeContains(r,i[0])||rangeContains(r,i[1])){if(angle(r[0],i[1])>angle(r[0],r[1]))r[1]=i[1];if(angle(i[0],r[1])>angle(r[0],r[1]))r[0]=i[0]}else{a.push(r=i)}}for(o=-Infinity,n=a.length-1,e=0,r=a[n];e<=n;r=i,++e){i=a[e];if((s=angle(r[1],i[0]))>o)o=s,lambda0$1=i[0],lambda1=r[1]}}ranges=range=null;return lambda0$1===Infinity||phi0===Infinity?[[NaN,NaN],[NaN,NaN]]:[[lambda0$1,phi0],[lambda1,phi1]]}var W0,W1,X0$1,Y0$1,Z0$1,X1$1,Y1$1,Z1$1,X2$1,Y2$1,Z2$1,lambda00,phi00,x0$4,y0$4,z0;var centroidStream$1={sphere:noop$1,point:centroidPoint$1,lineStart:centroidLineStart$1,lineEnd:centroidLineEnd$1,polygonStart:function(){centroidStream$1.lineStart=centroidRingStart$1;centroidStream$1.lineEnd=centroidRingEnd$1},polygonEnd:function(){centroidStream$1.lineStart=centroidLineStart$1;centroidStream$1.lineEnd=centroidLineEnd$1}};function centroidPoint$1(t,e){t*=radians,e*=radians;var n=cos$1(e);centroidPointCartesian(n*cos$1(t),n*sin$1(t),sin$1(e))}function centroidPointCartesian(t,e,n){++W0;X0$1+=(t-X0$1)/W0;Y0$1+=(e-Y0$1)/W0;Z0$1+=(n-Z0$1)/W0}function centroidLineStart$1(){centroidStream$1.point=centroidLinePointFirst}function centroidLinePointFirst(t,e){t*=radians,e*=radians;var n=cos$1(e);x0$4=n*cos$1(t);y0$4=n*sin$1(t);z0=sin$1(e);centroidStream$1.point=centroidLinePoint;centroidPointCartesian(x0$4,y0$4,z0)}function centroidLinePoint(t,e){t*=radians,e*=radians;var n=cos$1(e),r=n*cos$1(t),i=n*sin$1(t),a=sin$1(e),o=atan2$1(sqrt$2((o=y0$4*a-z0*i)*o+(o=z0*r-x0$4*a)*o+(o=x0$4*i-y0$4*r)*o),x0$4*r+y0$4*i+z0*a);W1+=o;X1$1+=o*(x0$4+(x0$4=r));Y1$1+=o*(y0$4+(y0$4=i));Z1$1+=o*(z0+(z0=a));centroidPointCartesian(x0$4,y0$4,z0)}function centroidLineEnd$1(){centroidStream$1.point=centroidPoint$1}function centroidRingStart$1(){centroidStream$1.point=centroidRingPointFirst}function centroidRingEnd$1(){centroidRingPoint(lambda00,phi00);centroidStream$1.point=centroidPoint$1}function centroidRingPointFirst(t,e){lambda00=t,phi00=e;t*=radians,e*=radians;centroidStream$1.point=centroidRingPoint;var n=cos$1(e);x0$4=n*cos$1(t);y0$4=n*sin$1(t);z0=sin$1(e);centroidPointCartesian(x0$4,y0$4,z0)}function centroidRingPoint(t,e){t*=radians,e*=radians;var n=cos$1(e),r=n*cos$1(t),i=n*sin$1(t),a=sin$1(e),o=y0$4*a-z0*i,s=z0*r-x0$4*a,l=x0$4*i-y0$4*r,u=sqrt$2(o*o+s*s+l*l),c=asin$1(u),f=u&&-c/u;X2$1+=f*o;Y2$1+=f*s;Z2$1+=f*l;W1+=c;X1$1+=c*(x0$4+(x0$4=r));Y1$1+=c*(y0$4+(y0$4=i));Z1$1+=c*(z0+(z0=a));centroidPointCartesian(x0$4,y0$4,z0)}function centroid$1(t){W0=W1=X0$1=Y0$1=Z0$1=X1$1=Y1$1=Z1$1=X2$1=Y2$1=Z2$1=0;geoStream(t,centroidStream$1);var e=X2$1,n=Y2$1,r=Z2$1,i=e*e+n*n+r*r;if(i<epsilon2$1){e=X1$1,n=Y1$1,r=Z1$1;if(W1<epsilon$2)e=X0$1,n=Y0$1,r=Z0$1;i=e*e+n*n+r*r;if(i<epsilon2$1)return[NaN,NaN]}return[atan2$1(n,e)*degrees,asin$1(r/sqrt$2(i))*degrees]}function constant$5(t){return function(){return t}}function compose(t,e){function n(n,r){return n=t(n,r),e(n[0],n[1])}if(t.invert&&e.invert)n.invert=function(n,r){return n=e.invert(n,r),n&&t.invert(n[0],n[1])};return n}function rotationIdentity(t,e){return[t>pi$1?t-tau$1:t<-pi$1?t+tau$1:t,e]}rotationIdentity.invert=rotationIdentity;function rotateRadians(t,e,n){return(t%=tau$1)?e||n?compose(rotationLambda(t),rotationPhiGamma(e,n)):rotationLambda(t):e||n?rotationPhiGamma(e,n):rotationIdentity}function forwardRotationLambda(t){return function(e,n){return e+=t,[e>pi$1?e-tau$1:e<-pi$1?e+tau$1:e,n]}}function rotationLambda(t){var e=forwardRotationLambda(t);e.invert=forwardRotationLambda(-t);return e}function rotationPhiGamma(t,e){var n=cos$1(t),r=sin$1(t),i=cos$1(e),a=sin$1(e);function o(t,e){var o=cos$1(e),s=cos$1(t)*o,l=sin$1(t)*o,u=sin$1(e),c=u*n+s*r;return[atan2$1(l*i-c*a,s*n-u*r),asin$1(c*i+l*a)]}o.invert=function(t,e){var o=cos$1(e),s=cos$1(t)*o,l=sin$1(t)*o,u=sin$1(e),c=u*i-l*a;return[atan2$1(l*i+u*a,s*n+c*r),asin$1(c*n-s*r)]};return o}function rotation(t){t=rotateRadians(t[0]*radians,t[1]*radians,t.length>2?t[2]*radians:0);function e(e){e=t(e[0]*radians,e[1]*radians);return e[0]*=degrees,e[1]*=degrees,e}e.invert=function(e){e=t.invert(e[0]*radians,e[1]*radians);return e[0]*=degrees,e[1]*=degrees,e};return e}function circleStream(t,e,n,r,i,a){if(!n)return;var o=cos$1(e),s=sin$1(e),l=r*n;if(i==null){i=e+r*tau$1;a=e-l/2}else{i=circleRadius(o,i);a=circleRadius(o,a);if(r>0?i<a:i>a)i+=r*tau$1}for(var u,c=i;r>0?c>a:c<a;c-=l){u=spherical([o,-s*cos$1(c),-s*sin$1(c)]);t.point(u[0],u[1])}}function circleRadius(t,e){e=cartesian(e),e[0]-=t;cartesianNormalizeInPlace(e);var n=acos$1(-e[1]);return((-e[2]<0?-n:n)+tau$1-epsilon$2)%tau$1}function circle$2(){var t=constant$5([0,0]),e=constant$5(90),n=constant$5(6),r,i,a={point:o};function o(t,e){r.push(t=i(t,e));t[0]*=degrees,t[1]*=degrees}function s(){var o=t.apply(this,arguments),s=e.apply(this,arguments)*radians,l=n.apply(this,arguments)*radians;r=[];i=rotateRadians(-o[0]*radians,-o[1]*radians,0).invert;circleStream(a,s,l,1);o={type:"Polygon",coordinates:[r]};r=i=null;return o}s.center=function(e){return arguments.length?(t=typeof e==="function"?e:constant$5([+e[0],+e[1]]),s):t};s.radius=function(t){return arguments.length?(e=typeof t==="function"?t:constant$5(+t),s):e};s.precision=function(t){return arguments.length?(n=typeof t==="function"?t:constant$5(+t),s):n};return s}function clipBuffer(){var t=[],e;return{point:function(t,n){e.push([t,n])},lineStart:function(){t.push(e=[])},lineEnd:noop$1,rejoin:function(){if(t.length>1)t.push(t.pop().concat(t.shift()))},result:function(){var n=t;t=[];e=null;return n}}}function pointEqual(t,e){return abs$1(t[0]-e[0])<epsilon$2&&abs$1(t[1]-e[1])<epsilon$2}function Intersection(t,e,n,r){this.x=t;this.z=e;this.o=n;this.e=r;this.v=false;this.n=this.p=null}function clipRejoin(t,e,n,r,i){var a=[],o=[],s,l;t.forEach((function(t){if((e=t.length-1)<=0)return;var e,n=t[0],r=t[e],l;if(pointEqual(n,r)){i.lineStart();for(s=0;s<e;++s)i.point((n=t[s])[0],n[1]);i.lineEnd();return}a.push(l=new Intersection(n,t,null,true));o.push(l.o=new Intersection(n,null,l,false));a.push(l=new Intersection(r,t,null,false));o.push(l.o=new Intersection(r,null,l,true))}));if(!a.length)return;o.sort(e);link$1(a);link$1(o);for(s=0,l=o.length;s<l;++s){o[s].e=n=!n}var u=a[0],c,f;while(1){var h=u,d=true;while(h.v)if((h=h.n)===u)return;c=h.z;i.lineStart();do{h.v=h.o.v=true;if(h.e){if(d){for(s=0,l=c.length;s<l;++s)i.point((f=c[s])[0],f[1])}else{r(h.x,h.n.x,1,i)}h=h.n}else{if(d){c=h.p.z;for(s=c.length-1;s>=0;--s)i.point((f=c[s])[0],f[1])}else{r(h.x,h.p.x,-1,i)}h=h.p}h=h.o;c=h.z;d=!d}while(!h.v);i.lineEnd()}}function link$1(t){if(!(e=t.length))return;var e,n=0,r=t[0],i;while(++n<e){r.n=i=t[n];i.p=r;r=i}r.n=i=t[0];i.p=r}var sum$1=adder();function polygonContains(t,e){var n=e[0],r=e[1],i=[sin$1(n),-cos$1(n),0],a=0,o=0;sum$1.reset();for(var s=0,l=t.length;s<l;++s){if(!(c=(u=t[s]).length))continue;var u,c,f=u[c-1],h=f[0],d=f[1]/2+quarterPi,p=sin$1(d),v=cos$1(d);for(var m=0;m<c;++m,h=y,p=b,v=x,f=g){var g=u[m],y=g[0],_=g[1]/2+quarterPi,b=sin$1(_),x=cos$1(_),w=y-h,$=w>=0?1:-1,k=$*w,M=k>pi$1,S=p*b;sum$1.add(atan2$1(S*$*sin$1(k),v*x+S*cos$1(k)));a+=M?w+$*tau$1:w;if(M^h>=n^y>=n){var z=cartesianCross(cartesian(f),cartesian(g));cartesianNormalizeInPlace(z);var E=cartesianCross(i,z);cartesianNormalizeInPlace(E);var C=(M^w>=0?-1:1)*asin$1(E[2]);if(r>C||r===C&&(z[0]||z[1])){o+=M^w>=0?1:-1}}}}return(a<-epsilon$2||a<epsilon$2&&sum$1<-epsilon$2)^o&1}function clip(t,e,n,r){return function(i){var a=e(i),o=clipBuffer(),s=e(o),l=false,u,c,f;var h={point:d,lineStart:v,lineEnd:m,polygonStart:function(){h.point=g;h.lineStart=y;h.lineEnd=_;c=[];u=[]},polygonEnd:function(){h.point=d;h.lineStart=v;h.lineEnd=m;c=merge$1(c);var t=polygonContains(u,r);if(c.length){if(!l)i.polygonStart(),l=true;clipRejoin(c,compareIntersection,t,n,i)}else if(t){if(!l)i.polygonStart(),l=true;i.lineStart();n(null,null,1,i);i.lineEnd()}if(l)i.polygonEnd(),l=false;c=u=null},sphere:function(){i.polygonStart();i.lineStart();n(null,null,1,i);i.lineEnd();i.polygonEnd()}};function d(e,n){if(t(e,n))i.point(e,n)}function p(t,e){a.point(t,e)}function v(){h.point=p;a.lineStart()}function m(){h.point=d;a.lineEnd()}function g(t,e){f.push([t,e]);s.point(t,e)}function y(){s.lineStart();f=[]}function _(){g(f[0][0],f[0][1]);s.lineEnd();var t=s.clean(),e=o.result(),n,r=e.length,a,h,d;f.pop();u.push(f);f=null;if(!r)return;if(t&1){h=e[0];if((a=h.length-1)>0){if(!l)i.polygonStart(),l=true;i.lineStart();for(n=0;n<a;++n)i.point((d=h[n])[0],d[1]);i.lineEnd()}return}if(r>1&&t&2)e.push(e.pop().concat(e.shift()));c.push(e.filter(validSegment))}return h}}function validSegment(t){return t.length>1}function compareIntersection(t,e){return((t=t.x)[0]<0?t[1]-halfPi$1-epsilon$2:halfPi$1-t[1])-((e=e.x)[0]<0?e[1]-halfPi$1-epsilon$2:halfPi$1-e[1])}var clipAntimeridian=clip((function(){return true}),clipAntimeridianLine,clipAntimeridianInterpolate,[-pi$1,-halfPi$1]);function clipAntimeridianLine(t){var e=NaN,n=NaN,r=NaN,i;return{lineStart:function(){t.lineStart();i=1},point:function(a,o){var s=a>0?pi$1:-pi$1,l=abs$1(a-e);if(abs$1(l-pi$1)<epsilon$2){t.point(e,n=(n+o)/2>0?halfPi$1:-halfPi$1);t.point(r,n);t.lineEnd();t.lineStart();t.point(s,n);t.point(a,n);i=0}else if(r!==s&&l>=pi$1){if(abs$1(e-r)<epsilon$2)e-=r*epsilon$2;if(abs$1(a-s)<epsilon$2)a-=s*epsilon$2;n=clipAntimeridianIntersect(e,n,a,o);t.point(r,n);t.lineEnd();t.lineStart();t.point(s,n);i=0}t.point(e=a,n=o);r=s},lineEnd:function(){t.lineEnd();e=n=NaN},clean:function(){return 2-i}}}function clipAntimeridianIntersect(t,e,n,r){var i,a,o=sin$1(t-n);return abs$1(o)>epsilon$2?atan((sin$1(e)*(a=cos$1(r))*sin$1(n)-sin$1(r)*(i=cos$1(e))*sin$1(t))/(i*a*o)):(e+r)/2}function clipAntimeridianInterpolate(t,e,n,r){var i;if(t==null){i=n*halfPi$1;r.point(-pi$1,i);r.point(0,i);r.point(pi$1,i);r.point(pi$1,0);r.point(pi$1,-i);r.point(0,-i);r.point(-pi$1,-i);r.point(-pi$1,0);r.point(-pi$1,i)}else if(abs$1(t[0]-e[0])>epsilon$2){var a=t[0]<e[0]?pi$1:-pi$1;i=n*a/2;r.point(-a,i);r.point(0,i);r.point(a,i)}else{r.point(e[0],e[1])}}function clipCircle(t){var e=cos$1(t),n=6*radians,r=e>0,i=abs$1(e)>epsilon$2;function a(e,r,i,a){circleStream(a,t,n,i,e,r)}function o(t,n){return cos$1(t)*cos$1(n)>e}function s(t){var e,n,a,s,c;return{lineStart:function(){s=a=false;c=1},point:function(f,h){var d=[f,h],p,v=o(f,h),m=r?v?0:u(f,h):v?u(f+(f<0?pi$1:-pi$1),h):0;if(!e&&(s=a=v))t.lineStart();if(v!==a){p=l(e,d);if(!p||pointEqual(e,p)||pointEqual(d,p)){d[0]+=epsilon$2;d[1]+=epsilon$2;v=o(d[0],d[1])}}if(v!==a){c=0;if(v){t.lineStart();p=l(d,e);t.point(p[0],p[1])}else{p=l(e,d);t.point(p[0],p[1]);t.lineEnd()}e=p}else if(i&&e&&r^v){var g;if(!(m&n)&&(g=l(d,e,true))){c=0;if(r){t.lineStart();t.point(g[0][0],g[0][1]);t.point(g[1][0],g[1][1]);t.lineEnd()}else{t.point(g[1][0],g[1][1]);t.lineEnd();t.lineStart();t.point(g[0][0],g[0][1])}}}if(v&&(!e||!pointEqual(e,d))){t.point(d[0],d[1])}e=d,a=v,n=m},lineEnd:function(){if(a)t.lineEnd();e=null},clean:function(){return c|(s&&a)<<1}}}function l(t,n,r){var i=cartesian(t),a=cartesian(n);var o=[1,0,0],s=cartesianCross(i,a),l=cartesianDot(s,s),u=s[0],c=l-u*u;if(!c)return!r&&t;var f=e*l/c,h=-e*u/c,d=cartesianCross(o,s),p=cartesianScale(o,f),v=cartesianScale(s,h);cartesianAddInPlace(p,v);var m=d,g=cartesianDot(p,m),y=cartesianDot(m,m),_=g*g-y*(cartesianDot(p,p)-1);if(_<0)return;var b=sqrt$2(_),x=cartesianScale(m,(-g-b)/y);cartesianAddInPlace(x,p);x=spherical(x);if(!r)return x;var w=t[0],$=n[0],k=t[1],M=n[1],S;if($<w)S=w,w=$,$=S;var z=$-w,E=abs$1(z-pi$1)<epsilon$2,C=E||z<epsilon$2;if(!E&&M<k)S=k,k=M,M=S;if(C?E?k+M>0^x[1]<(abs$1(x[0]-w)<epsilon$2?k:M):k<=x[1]&&x[1]<=M:z>pi$1^(w<=x[0]&&x[0]<=$)){var A=cartesianScale(m,(-g+b)/y);cartesianAddInPlace(A,p);return[x,spherical(A)]}}function u(e,n){var i=r?t:pi$1-t,a=0;if(e<-i)a|=1;else if(e>i)a|=2;if(n<-i)a|=4;else if(n>i)a|=8;return a}return clip(o,s,a,r?[0,-t]:[-pi$1,t-pi$1])}function clipLine(t,e,n,r,i,a){var o=t[0],s=t[1],l=e[0],u=e[1],c=0,f=1,h=l-o,d=u-s,p;p=n-o;if(!h&&p>0)return;p/=h;if(h<0){if(p<c)return;if(p<f)f=p}else if(h>0){if(p>f)return;if(p>c)c=p}p=i-o;if(!h&&p<0)return;p/=h;if(h<0){if(p>f)return;if(p>c)c=p}else if(h>0){if(p<c)return;if(p<f)f=p}p=r-s;if(!d&&p>0)return;p/=d;if(d<0){if(p<c)return;if(p<f)f=p}else if(d>0){if(p>f)return;if(p>c)c=p}p=a-s;if(!d&&p<0)return;p/=d;if(d<0){if(p>f)return;if(p>c)c=p}else if(d>0){if(p<c)return;if(p<f)f=p}if(c>0)t[0]=o+c*h,t[1]=s+c*d;if(f<1)e[0]=o+f*h,e[1]=s+f*d;return true}var clipMax=1e9,clipMin=-clipMax;function clipRectangle(t,e,n,r){function i(i,a){return t<=i&&i<=n&&e<=a&&a<=r}function a(i,a,s,u){var c=0,f=0;if(i==null||(c=o(i,s))!==(f=o(a,s))||l(i,a)<0^s>0){do{u.point(c===0||c===3?t:n,c>1?r:e)}while((c=(c+s+4)%4)!==f)}else{u.point(a[0],a[1])}}function o(r,i){return abs$1(r[0]-t)<epsilon$2?i>0?0:3:abs$1(r[0]-n)<epsilon$2?i>0?2:1:abs$1(r[1]-e)<epsilon$2?i>0?1:0:i>0?3:2}function s(t,e){return l(t.x,e.x)}function l(t,e){var n=o(t,1),r=o(e,1);return n!==r?n-r:n===0?e[1]-t[1]:n===1?t[0]-e[0]:n===2?t[1]-e[1]:e[0]-t[0]}return function(o){var l=o,u=clipBuffer(),c,f,h,d,p,v,m,g,y,_,b;var x={point:w,lineStart:S,lineEnd:z,polygonStart:k,polygonEnd:M};function w(t,e){if(i(t,e))l.point(t,e)}function $(){var e=0;for(var n=0,i=f.length;n<i;++n){for(var a=f[n],o=1,s=a.length,l=a[0],u,c,h=l[0],d=l[1];o<s;++o){u=h,c=d,l=a[o],h=l[0],d=l[1];if(c<=r){if(d>r&&(h-u)*(r-c)>(d-c)*(t-u))++e}else{if(d<=r&&(h-u)*(r-c)<(d-c)*(t-u))--e}}}return e}function k(){l=u,c=[],f=[],b=true}function M(){var t=$(),e=b&&t,n=(c=merge$1(c)).length;if(e||n){o.polygonStart();if(e){o.lineStart();a(null,null,1,o);o.lineEnd()}if(n){clipRejoin(c,s,t,a,o)}o.polygonEnd()}l=o,c=f=h=null}function S(){x.point=E;if(f)f.push(h=[]);_=true;y=false;m=g=NaN}function z(){if(c){E(d,p);if(v&&y)u.rejoin();c.push(u.result())}x.point=w;if(y)l.lineEnd()}function E(a,o){var s=i(a,o);if(f)h.push([a,o]);if(_){d=a,p=o,v=s;_=false;if(s){l.lineStart();l.point(a,o)}}else{if(s&&y)l.point(a,o);else{var u=[m=Math.max(clipMin,Math.min(clipMax,m)),g=Math.max(clipMin,Math.min(clipMax,g))],c=[a=Math.max(clipMin,Math.min(clipMax,a)),o=Math.max(clipMin,Math.min(clipMax,o))];if(clipLine(u,c,t,e,n,r)){if(!y){l.lineStart();l.point(u[0],u[1])}l.point(c[0],c[1]);if(!s)l.lineEnd();b=false}else if(s){l.lineStart();l.point(a,o);b=false}}}m=a,g=o,y=s}return x}}function extent(){var t=0,e=0,n=960,r=500,i,a,o;return o={stream:function(o){return i&&a===o?i:i=clipRectangle(t,e,n,r)(a=o)},extent:function(s){return arguments.length?(t=+s[0][0],e=+s[0][1],n=+s[1][0],r=+s[1][1],i=a=null,o):[[t,e],[n,r]]}}}var lengthSum$1=adder(),lambda0,sinPhi0,cosPhi0;var lengthStream$1={sphere:noop$1,point:noop$1,lineStart:lengthLineStart,lineEnd:noop$1,polygonStart:noop$1,polygonEnd:noop$1};function lengthLineStart(){lengthStream$1.point=lengthPointFirst$1;lengthStream$1.lineEnd=lengthLineEnd}function lengthLineEnd(){lengthStream$1.point=lengthStream$1.lineEnd=noop$1}function lengthPointFirst$1(t,e){t*=radians,e*=radians;lambda0=t,sinPhi0=sin$1(e),cosPhi0=cos$1(e);lengthStream$1.point=lengthPoint$1}function lengthPoint$1(t,e){t*=radians,e*=radians;var n=sin$1(e),r=cos$1(e),i=abs$1(t-lambda0),a=cos$1(i),o=sin$1(i),s=r*o,l=cosPhi0*n-sinPhi0*r*a,u=sinPhi0*n+cosPhi0*r*a;lengthSum$1.add(atan2$1(sqrt$2(s*s+l*l),u));lambda0=t,sinPhi0=n,cosPhi0=r}function length$1(t){lengthSum$1.reset();geoStream(t,lengthStream$1);return+lengthSum$1}var coordinates=[null,null],object$1={type:"LineString",coordinates:coordinates};function distance(t,e){coordinates[0]=t;coordinates[1]=e;return length$1(object$1)}var containsObjectType={Feature:function(t,e){return containsGeometry(t.geometry,e)},FeatureCollection:function(t,e){var n=t.features,r=-1,i=n.length;while(++r<i)if(containsGeometry(n[r].geometry,e))return true;return false}};var containsGeometryType={Sphere:function(){return true},Point:function(t,e){return containsPoint(t.coordinates,e)},MultiPoint:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)if(containsPoint(n[r],e))return true;return false},LineString:function(t,e){return containsLine(t.coordinates,e)},MultiLineString:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)if(containsLine(n[r],e))return true;return false},Polygon:function(t,e){return containsPolygon(t.coordinates,e)},MultiPolygon:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)if(containsPolygon(n[r],e))return true;return false},GeometryCollection:function(t,e){var n=t.geometries,r=-1,i=n.length;while(++r<i)if(containsGeometry(n[r],e))return true;return false}};function containsGeometry(t,e){return t&&containsGeometryType.hasOwnProperty(t.type)?containsGeometryType[t.type](t,e):false}function containsPoint(t,e){return distance(t,e)===0}function containsLine(t,e){var n=distance(t[0],t[1]),r=distance(t[0],e),i=distance(e,t[1]);return r+i<=n+epsilon$2}function containsPolygon(t,e){return!!polygonContains(t.map(ringRadians),pointRadians(e))}function ringRadians(t){return t=t.map(pointRadians),t.pop(),t}function pointRadians(t){return[t[0]*radians,t[1]*radians]}function contains$1(t,e){return(t&&containsObjectType.hasOwnProperty(t.type)?containsObjectType[t.type]:containsGeometry)(t,e)}function graticuleX(t,e,n){var r=sequence(t,e-epsilon$2,n).concat(e);return function(t){return r.map((function(e){return[t,e]}))}}function graticuleY(t,e,n){var r=sequence(t,e-epsilon$2,n).concat(e);return function(t){return r.map((function(e){return[e,t]}))}}function graticule(){var t,e,n,r,i,a,o,s,l=10,u=l,c=90,f=360,h,d,p,v,m=2.5;function g(){return{type:"MultiLineString",coordinates:y()}}function y(){return sequence(ceil(r/c)*c,n,c).map(p).concat(sequence(ceil(s/f)*f,o,f).map(v)).concat(sequence(ceil(e/l)*l,t,l).filter((function(t){return abs$1(t%c)>epsilon$2})).map(h)).concat(sequence(ceil(a/u)*u,i,u).filter((function(t){return abs$1(t%f)>epsilon$2})).map(d))}g.lines=function(){return y().map((function(t){return{type:"LineString",coordinates:t}}))};g.outline=function(){return{type:"Polygon",coordinates:[p(r).concat(v(o).slice(1),p(n).reverse().slice(1),v(s).reverse().slice(1))]}};g.extent=function(t){if(!arguments.length)return g.extentMinor();return g.extentMajor(t).extentMinor(t)};g.extentMajor=function(t){if(!arguments.length)return[[r,s],[n,o]];r=+t[0][0],n=+t[1][0];s=+t[0][1],o=+t[1][1];if(r>n)t=r,r=n,n=t;if(s>o)t=s,s=o,o=t;return g.precision(m)};g.extentMinor=function(n){if(!arguments.length)return[[e,a],[t,i]];e=+n[0][0],t=+n[1][0];a=+n[0][1],i=+n[1][1];if(e>t)n=e,e=t,t=n;if(a>i)n=a,a=i,i=n;return g.precision(m)};g.step=function(t){if(!arguments.length)return g.stepMinor();return g.stepMajor(t).stepMinor(t)};g.stepMajor=function(t){if(!arguments.length)return[c,f];c=+t[0],f=+t[1];return g};g.stepMinor=function(t){if(!arguments.length)return[l,u];l=+t[0],u=+t[1];return g};g.precision=function(l){if(!arguments.length)return m;m=+l;h=graticuleX(a,i,90);d=graticuleY(e,t,m);p=graticuleX(s,o,90);v=graticuleY(r,n,m);return g};return g.extentMajor([[-180,-90+epsilon$2],[180,90-epsilon$2]]).extentMinor([[-180,-80-epsilon$2],[180,80+epsilon$2]])}function graticule10(){return graticule()()}function interpolate(t,e){var n=t[0]*radians,r=t[1]*radians,i=e[0]*radians,a=e[1]*radians,o=cos$1(r),s=sin$1(r),l=cos$1(a),u=sin$1(a),c=o*cos$1(n),f=o*sin$1(n),h=l*cos$1(i),d=l*sin$1(i),p=2*asin$1(sqrt$2(haversin(a-r)+o*l*haversin(i-n))),v=sin$1(p);var m=p?function(t){var e=sin$1(t*=p)/v,n=sin$1(p-t)/v,r=n*c+e*h,i=n*f+e*d,a=n*s+e*u;return[atan2$1(i,r)*degrees,atan2$1(a,sqrt$2(r*r+i*i))*degrees]}:function(){return[n*degrees,r*degrees]};m.distance=p;return m}function identity$5(t){return t}var areaSum=adder(),areaRingSum=adder(),x00$2,y00$2,x0$3,y0$3;var areaStream={point:noop$1,lineStart:noop$1,lineEnd:noop$1,polygonStart:function(){areaStream.lineStart=areaRingStart;areaStream.lineEnd=areaRingEnd},polygonEnd:function(){areaStream.lineStart=areaStream.lineEnd=areaStream.point=noop$1;areaSum.add(abs$1(areaRingSum));areaRingSum.reset()},result:function(){var t=areaSum/2;areaSum.reset();return t}};function areaRingStart(){areaStream.point=areaPointFirst}function areaPointFirst(t,e){areaStream.point=areaPoint;x00$2=x0$3=t,y00$2=y0$3=e}function areaPoint(t,e){areaRingSum.add(y0$3*t-x0$3*e);x0$3=t,y0$3=e}function areaRingEnd(){areaPoint(x00$2,y00$2)}var x0$2=Infinity,y0$2=x0$2,x1=-x0$2,y1=x1;var boundsStream={point:boundsPoint,lineStart:noop$1,lineEnd:noop$1,polygonStart:noop$1,polygonEnd:noop$1,result:function(){var t=[[x0$2,y0$2],[x1,y1]];x1=y1=-(y0$2=x0$2=Infinity);return t}};function boundsPoint(t,e){if(t<x0$2)x0$2=t;if(t>x1)x1=t;if(e<y0$2)y0$2=e;if(e>y1)y1=e}var X0=0,Y0=0,Z0=0,X1=0,Y1=0,Z1=0,X2=0,Y2=0,Z2=0,x00$1,y00$1,x0$1,y0$1;var centroidStream={point:centroidPoint,lineStart:centroidLineStart,lineEnd:centroidLineEnd,polygonStart:function(){centroidStream.lineStart=centroidRingStart;centroidStream.lineEnd=centroidRingEnd},polygonEnd:function(){centroidStream.point=centroidPoint;centroidStream.lineStart=centroidLineStart;centroidStream.lineEnd=centroidLineEnd},result:function(){var t=Z2?[X2/Z2,Y2/Z2]:Z1?[X1/Z1,Y1/Z1]:Z0?[X0/Z0,Y0/Z0]:[NaN,NaN];X0=Y0=Z0=X1=Y1=Z1=X2=Y2=Z2=0;return t}};function centroidPoint(t,e){X0+=t;Y0+=e;++Z0}function centroidLineStart(){centroidStream.point=centroidPointFirstLine}function centroidPointFirstLine(t,e){centroidStream.point=centroidPointLine;centroidPoint(x0$1=t,y0$1=e)}function centroidPointLine(t,e){var n=t-x0$1,r=e-y0$1,i=sqrt$2(n*n+r*r);X1+=i*(x0$1+t)/2;Y1+=i*(y0$1+e)/2;Z1+=i;centroidPoint(x0$1=t,y0$1=e)}function centroidLineEnd(){centroidStream.point=centroidPoint}function centroidRingStart(){centroidStream.point=centroidPointFirstRing}function centroidRingEnd(){centroidPointRing(x00$1,y00$1)}function centroidPointFirstRing(t,e){centroidStream.point=centroidPointRing;centroidPoint(x00$1=x0$1=t,y00$1=y0$1=e)}function centroidPointRing(t,e){var n=t-x0$1,r=e-y0$1,i=sqrt$2(n*n+r*r);X1+=i*(x0$1+t)/2;Y1+=i*(y0$1+e)/2;Z1+=i;i=y0$1*t-x0$1*e;X2+=i*(x0$1+t);Y2+=i*(y0$1+e);Z2+=i*3;centroidPoint(x0$1=t,y0$1=e)}function PathContext(t){this._context=t}PathContext.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line===0)this._context.closePath();this._point=NaN},point:function(t,e){switch(this._point){case 0:{this._context.moveTo(t,e);this._point=1;break}case 1:{this._context.lineTo(t,e);break}default:{this._context.moveTo(t+this._radius,e);this._context.arc(t,e,this._radius,0,tau$1);break}}},result:noop$1};var lengthSum=adder(),lengthRing,x00,y00,x0,y0;var lengthStream={point:noop$1,lineStart:function(){lengthStream.point=lengthPointFirst},lineEnd:function(){if(lengthRing)lengthPoint(x00,y00);lengthStream.point=noop$1},polygonStart:function(){lengthRing=true},polygonEnd:function(){lengthRing=null},result:function(){var t=+lengthSum;lengthSum.reset();return t}};function lengthPointFirst(t,e){lengthStream.point=lengthPoint;x00=x0=t,y00=y0=e}function lengthPoint(t,e){x0-=t,y0-=e;lengthSum.add(sqrt$2(x0*x0+y0*y0));x0=t,y0=e}function PathString(){this._string=[]}PathString.prototype={_radius:4.5,_circle:circle$1(4.5),pointRadius:function(t){if((t=+t)!==this._radius)this._radius=t,this._circle=null;return this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line===0)this._string.push("Z");this._point=NaN},point:function(t,e){switch(this._point){case 0:{this._string.push("M",t,",",e);this._point=1;break}case 1:{this._string.push("L",t,",",e);break}default:{if(this._circle==null)this._circle=circle$1(this._radius);this._string.push("M",t,",",e,this._circle);break}}},result:function(){if(this._string.length){var t=this._string.join("");this._string=[];return t}else{return null}}};function circle$1(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function index$2(t,e){var n=4.5,r,i;function a(t){if(t){if(typeof n==="function")i.pointRadius(+n.apply(this,arguments));geoStream(t,r(i))}return i.result()}a.area=function(t){geoStream(t,r(areaStream));return areaStream.result()};a.measure=function(t){geoStream(t,r(lengthStream));return lengthStream.result()};a.bounds=function(t){geoStream(t,r(boundsStream));return boundsStream.result()};a.centroid=function(t){geoStream(t,r(centroidStream));return centroidStream.result()};a.projection=function(e){return arguments.length?(r=e==null?(t=null,identity$5):(t=e).stream,a):t};a.context=function(t){if(!arguments.length)return e;i=t==null?(e=null,new PathString):new PathContext(e=t);if(typeof n!=="function")i.pointRadius(n);return a};a.pointRadius=function(t){if(!arguments.length)return n;n=typeof t==="function"?t:(i.pointRadius(+t),+t);return a};return a.projection(t).context(e)}function transform$2(t){return{stream:transformer(t)}}function transformer(t){return function(e){var n=new TransformStream;for(var r in t)n[r]=t[r];n.stream=e;return n}}function TransformStream(){}TransformStream.prototype={constructor:TransformStream,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function fit(t,e,n){var r=t.clipExtent&&t.clipExtent();t.scale(150).translate([0,0]);if(r!=null)t.clipExtent(null);geoStream(n,t.stream(boundsStream));e(boundsStream.result());if(r!=null)t.clipExtent(r);return t}function fitExtent(t,e,n){return fit(t,(function(n){var r=e[1][0]-e[0][0],i=e[1][1]-e[0][1],a=Math.min(r/(n[1][0]-n[0][0]),i/(n[1][1]-n[0][1])),o=+e[0][0]+(r-a*(n[1][0]+n[0][0]))/2,s=+e[0][1]+(i-a*(n[1][1]+n[0][1]))/2;t.scale(150*a).translate([o,s])}),n)}function fitSize(t,e,n){return fitExtent(t,[[0,0],e],n)}function fitWidth(t,e,n){return fit(t,(function(n){var r=+e,i=r/(n[1][0]-n[0][0]),a=(r-i*(n[1][0]+n[0][0]))/2,o=-i*n[0][1];t.scale(150*i).translate([a,o])}),n)}function fitHeight(t,e,n){return fit(t,(function(n){var r=+e,i=r/(n[1][1]-n[0][1]),a=-i*n[0][0],o=(r-i*(n[1][1]+n[0][1]))/2;t.scale(150*i).translate([a,o])}),n)}var maxDepth=16,cosMinDistance=cos$1(30*radians);function resample(t,e){return+e?resample$1(t,e):resampleNone(t)}function resampleNone(t){return transformer({point:function(e,n){e=t(e,n);this.stream.point(e[0],e[1])}})}function resample$1(t,e){function n(r,i,a,o,s,l,u,c,f,h,d,p,v,m){var g=u-r,y=c-i,_=g*g+y*y;if(_>4*e&&v--){var b=o+h,x=s+d,w=l+p,$=sqrt$2(b*b+x*x+w*w),k=asin$1(w/=$),M=abs$1(abs$1(w)-1)<epsilon$2||abs$1(a-f)<epsilon$2?(a+f)/2:atan2$1(x,b),S=t(M,k),z=S[0],E=S[1],C=z-r,A=E-i,R=y*C-g*A;if(R*R/_>e||abs$1((g*C+y*A)/_-.5)>.3||o*h+s*d+l*p<cosMinDistance){n(r,i,a,o,s,l,z,E,M,b/=$,x/=$,w,v,m);m.point(z,E);n(z,E,M,b,x,w,u,c,f,h,d,p,v,m)}}}return function(e){var r,i,a,o,s,l,u,c,f,h,d,p;var v={point:m,lineStart:g,lineEnd:_,polygonStart:function(){e.polygonStart();v.lineStart=b},polygonEnd:function(){e.polygonEnd();v.lineStart=g}};function m(n,r){n=t(n,r);e.point(n[0],n[1])}function g(){c=NaN;v.point=y;e.lineStart()}function y(r,i){var a=cartesian([r,i]),o=t(r,i);n(c,f,u,h,d,p,c=o[0],f=o[1],u=r,h=a[0],d=a[1],p=a[2],maxDepth,e);e.point(c,f)}function _(){v.point=m;e.lineEnd()}function b(){g();v.point=x;v.lineEnd=w}function x(t,e){y(r=t,e),i=c,a=f,o=h,s=d,l=p;v.point=y}function w(){n(c,f,u,h,d,p,i,a,r,o,s,l,maxDepth,e);v.lineEnd=_;_()}return v}}var transformRadians=transformer({point:function(t,e){this.stream.point(t*radians,e*radians)}});function transformRotate(t){return transformer({point:function(e,n){var r=t(e,n);return this.stream.point(r[0],r[1])}})}function projection(t){return projectionMutator((function(){return t}))()}function projectionMutator(t){var e,n=150,r=480,i=250,a,o,s=0,l=0,u=0,c=0,f=0,h,d,p=null,v=clipAntimeridian,m=null,g,y,_,b=identity$5,x=.5,w=resample(z,x),$,k;function M(t){t=d(t[0]*radians,t[1]*radians);return[t[0]*n+a,o-t[1]*n]}function S(t){t=d.invert((t[0]-a)/n,(o-t[1])/n);return t&&[t[0]*degrees,t[1]*degrees]}function z(t,r){return t=e(t,r),[t[0]*n+a,o-t[1]*n]}M.stream=function(t){return $&&k===t?$:$=transformRadians(transformRotate(h)(v(w(b(k=t)))))};M.preclip=function(t){return arguments.length?(v=t,p=undefined,C()):v};M.postclip=function(t){return arguments.length?(b=t,m=g=y=_=null,C()):b};M.clipAngle=function(t){return arguments.length?(v=+t?clipCircle(p=t*radians):(p=null,clipAntimeridian),C()):p*degrees};M.clipExtent=function(t){return arguments.length?(b=t==null?(m=g=y=_=null,identity$5):clipRectangle(m=+t[0][0],g=+t[0][1],y=+t[1][0],_=+t[1][1]),C()):m==null?null:[[m,g],[y,_]]};M.scale=function(t){return arguments.length?(n=+t,E()):n};M.translate=function(t){return arguments.length?(r=+t[0],i=+t[1],E()):[r,i]};M.center=function(t){return arguments.length?(s=t[0]%360*radians,l=t[1]%360*radians,E()):[s*degrees,l*degrees]};M.rotate=function(t){return arguments.length?(u=t[0]%360*radians,c=t[1]%360*radians,f=t.length>2?t[2]%360*radians:0,E()):[u*degrees,c*degrees,f*degrees]};M.precision=function(t){return arguments.length?(w=resample(z,x=t*t),C()):sqrt$2(x)};M.fitExtent=function(t,e){return fitExtent(M,t,e)};M.fitSize=function(t,e){return fitSize(M,t,e)};M.fitWidth=function(t,e){return fitWidth(M,t,e)};M.fitHeight=function(t,e){return fitHeight(M,t,e)};function E(){d=compose(h=rotateRadians(u,c,f),e);var t=e(s,l);a=r-t[0]*n;o=i+t[1]*n;return C()}function C(){$=k=null;return M}return function(){e=t.apply(this,arguments);M.invert=e.invert&&S;return E()}}function conicProjection(t){var e=0,n=pi$1/3,r=projectionMutator(t),i=r(e,n);i.parallels=function(t){return arguments.length?r(e=t[0]*radians,n=t[1]*radians):[e*degrees,n*degrees]};return i}function cylindricalEqualAreaRaw(t){var e=cos$1(t);function n(t,n){return[t*e,sin$1(n)/e]}n.invert=function(t,n){return[t/e,asin$1(n*e)]};return n}function conicEqualAreaRaw(t,e){var n=sin$1(t),r=(n+sin$1(e))/2;if(abs$1(r)<epsilon$2)return cylindricalEqualAreaRaw(t);var i=1+n*(2*r-n),a=sqrt$2(i)/r;function o(t,e){var n=sqrt$2(i-2*r*sin$1(e))/r;return[n*sin$1(t*=r),a-n*cos$1(t)]}o.invert=function(t,e){var n=a-e;return[atan2$1(t,abs$1(n))/r*sign$1(n),asin$1((i-(t*t+n*n)*r*r)/(2*r))]};return o}function conicEqualArea(){return conicProjection(conicEqualAreaRaw).scale(155.424).center([0,33.6442])}function albers(){return conicEqualArea().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function multiplex(t){var e=t.length;return{point:function(n,r){var i=-1;while(++i<e)t[i].point(n,r)},sphere:function(){var n=-1;while(++n<e)t[n].sphere()},lineStart:function(){var n=-1;while(++n<e)t[n].lineStart()},lineEnd:function(){var n=-1;while(++n<e)t[n].lineEnd()},polygonStart:function(){var n=-1;while(++n<e)t[n].polygonStart()},polygonEnd:function(){var n=-1;while(++n<e)t[n].polygonEnd()}}}function albersUsa(){var t,e,n=albers(),r,i=conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),a,o=conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),s,l,u={point:function(t,e){l=[t,e]}};function c(t){var e=t[0],n=t[1];return l=null,(r.point(e,n),l)||(a.point(e,n),l)||(s.point(e,n),l)}c.invert=function(t){var e=n.scale(),r=n.translate(),a=(t[0]-r[0])/e,s=(t[1]-r[1])/e;return(s>=.12&&s<.234&&a>=-.425&&a<-.214?i:s>=.166&&s<.234&&a>=-.214&&a<-.115?o:n).invert(t)};c.stream=function(r){return t&&e===r?t:t=multiplex([n.stream(e=r),i.stream(r),o.stream(r)])};c.precision=function(t){if(!arguments.length)return n.precision();n.precision(t),i.precision(t),o.precision(t);return f()};c.scale=function(t){if(!arguments.length)return n.scale();n.scale(t),i.scale(t*.35),o.scale(t);return c.translate(n.translate())};c.translate=function(t){if(!arguments.length)return n.translate();var e=n.scale(),l=+t[0],c=+t[1];r=n.translate(t).clipExtent([[l-.455*e,c-.238*e],[l+.455*e,c+.238*e]]).stream(u);a=i.translate([l-.307*e,c+.201*e]).clipExtent([[l-.425*e+epsilon$2,c+.12*e+epsilon$2],[l-.214*e-epsilon$2,c+.234*e-epsilon$2]]).stream(u);s=o.translate([l-.205*e,c+.212*e]).clipExtent([[l-.214*e+epsilon$2,c+.166*e+epsilon$2],[l-.115*e-epsilon$2,c+.234*e-epsilon$2]]).stream(u);return f()};c.fitExtent=function(t,e){return fitExtent(c,t,e)};c.fitSize=function(t,e){return fitSize(c,t,e)};c.fitWidth=function(t,e){return fitWidth(c,t,e)};c.fitHeight=function(t,e){return fitHeight(c,t,e)};function f(){t=e=null;return c}return c.scale(1070)}function azimuthalRaw(t){return function(e,n){var r=cos$1(e),i=cos$1(n),a=t(r*i);return[a*i*sin$1(e),a*sin$1(n)]}}function azimuthalInvert(t){return function(e,n){var r=sqrt$2(e*e+n*n),i=t(r),a=sin$1(i),o=cos$1(i);return[atan2$1(e*a,r*o),asin$1(r&&n*a/r)]}}var azimuthalEqualAreaRaw=azimuthalRaw((function(t){return sqrt$2(2/(1+t))}));azimuthalEqualAreaRaw.invert=azimuthalInvert((function(t){return 2*asin$1(t/2)}));function azimuthalEqualArea(){return projection(azimuthalEqualAreaRaw).scale(124.75).clipAngle(180-.001)}var azimuthalEquidistantRaw=azimuthalRaw((function(t){return(t=acos$1(t))&&t/sin$1(t)}));azimuthalEquidistantRaw.invert=azimuthalInvert((function(t){return t}));function azimuthalEquidistant(){return projection(azimuthalEquidistantRaw).scale(79.4188).clipAngle(180-.001)}function mercatorRaw(t,e){return[t,log$1(tan((halfPi$1+e)/2))]}mercatorRaw.invert=function(t,e){return[t,2*atan(exp(e))-halfPi$1]};function mercator(){return mercatorProjection(mercatorRaw).scale(961/tau$1)}function mercatorProjection(t){var e=projection(t),n=e.center,r=e.scale,i=e.translate,a=e.clipExtent,o=null,s,l,u;e.scale=function(t){return arguments.length?(r(t),c()):r()};e.translate=function(t){return arguments.length?(i(t),c()):i()};e.center=function(t){return arguments.length?(n(t),c()):n()};e.clipExtent=function(t){return arguments.length?(t==null?o=s=l=u=null:(o=+t[0][0],s=+t[0][1],l=+t[1][0],u=+t[1][1]),c()):o==null?null:[[o,s],[l,u]]};function c(){var n=pi$1*r(),i=e(rotation(e.rotate()).invert([0,0]));return a(o==null?[[i[0]-n,i[1]-n],[i[0]+n,i[1]+n]]:t===mercatorRaw?[[Math.max(i[0]-n,o),s],[Math.min(i[0]+n,l),u]]:[[o,Math.max(i[1]-n,s)],[l,Math.min(i[1]+n,u)]])}return c()}function tany(t){return tan((halfPi$1+t)/2)}function conicConformalRaw(t,e){var n=cos$1(t),r=t===e?sin$1(t):log$1(n/cos$1(e))/log$1(tany(e)/tany(t)),i=n*pow$1(tany(t),r)/r;if(!r)return mercatorRaw;function a(t,e){if(i>0){if(e<-halfPi$1+epsilon$2)e=-halfPi$1+epsilon$2}else{if(e>halfPi$1-epsilon$2)e=halfPi$1-epsilon$2}var n=i/pow$1(tany(e),r);return[n*sin$1(r*t),i-n*cos$1(r*t)]}a.invert=function(t,e){var n=i-e,a=sign$1(r)*sqrt$2(t*t+n*n);return[atan2$1(t,abs$1(n))/r*sign$1(n),2*atan(pow$1(i/a,1/r))-halfPi$1]};return a}function conicConformal(){return conicProjection(conicConformalRaw).scale(109.5).parallels([30,30])}function equirectangularRaw(t,e){return[t,e]}equirectangularRaw.invert=equirectangularRaw;function equirectangular(){return projection(equirectangularRaw).scale(152.63)}function conicEquidistantRaw(t,e){var n=cos$1(t),r=t===e?sin$1(t):(n-cos$1(e))/(e-t),i=n/r+t;if(abs$1(r)<epsilon$2)return equirectangularRaw;function a(t,e){var n=i-e,a=r*t;return[n*sin$1(a),i-n*cos$1(a)]}a.invert=function(t,e){var n=i-e;return[atan2$1(t,abs$1(n))/r*sign$1(n),i-sign$1(r)*sqrt$2(t*t+n*n)]};return a}function conicEquidistant(){return conicProjection(conicEquidistantRaw).scale(131.154).center([0,13.9389])}function gnomonicRaw(t,e){var n=cos$1(e),r=cos$1(t)*n;return[n*sin$1(t)/r,sin$1(e)/r]}gnomonicRaw.invert=azimuthalInvert(atan);function gnomonic(){return projection(gnomonicRaw).scale(144.049).clipAngle(60)}function scaleTranslate(t,e,n,r){return t===1&&e===1&&n===0&&r===0?identity$5:transformer({point:function(i,a){this.stream.point(i*t+n,a*e+r)}})}function identity$4(){var t=1,e=0,n=0,r=1,i=1,a=identity$5,o=null,s,l,u,c=identity$5,f,h,d;function p(){f=h=null;return d}return d={stream:function(t){return f&&h===t?f:f=a(c(h=t))},postclip:function(t){return arguments.length?(c=t,o=s=l=u=null,p()):c},clipExtent:function(t){return arguments.length?(c=t==null?(o=s=l=u=null,identity$5):clipRectangle(o=+t[0][0],s=+t[0][1],l=+t[1][0],u=+t[1][1]),p()):o==null?null:[[o,s],[l,u]]},scale:function(o){return arguments.length?(a=scaleTranslate((t=+o)*r,t*i,e,n),p()):t},translate:function(o){return arguments.length?(a=scaleTranslate(t*r,t*i,e=+o[0],n=+o[1]),p()):[e,n]},reflectX:function(o){return arguments.length?(a=scaleTranslate(t*(r=o?-1:1),t*i,e,n),p()):r<0},reflectY:function(o){return arguments.length?(a=scaleTranslate(t*r,t*(i=o?-1:1),e,n),p()):i<0},fitExtent:function(t,e){return fitExtent(d,t,e)},fitSize:function(t,e){return fitSize(d,t,e)},fitWidth:function(t,e){return fitWidth(d,t,e)},fitHeight:function(t,e){return fitHeight(d,t,e)}}}function naturalEarth1Raw(t,e){var n=e*e,r=n*n;return[t*(.8707-.131979*n+r*(-.013791+r*(.003971*n-.001529*r))),e*(1.007226+n*(.015085+r*(-.044475+.028874*n-.005916*r)))]}naturalEarth1Raw.invert=function(t,e){var n=e,r=25,i;do{var a=n*n,o=a*a;n-=i=(n*(1.007226+a*(.015085+o*(-.044475+.028874*a-.005916*o)))-e)/(1.007226+a*(.015085*3+o*(-.044475*7+.028874*9*a-.005916*11*o)))}while(abs$1(i)>epsilon$2&&--r>0);return[t/(.8707+(a=n*n)*(-.131979+a*(-.013791+a*a*a*(.003971-.001529*a)))),n]};function naturalEarth1(){return projection(naturalEarth1Raw).scale(175.295)}function orthographicRaw(t,e){return[cos$1(e)*sin$1(t),sin$1(e)]}orthographicRaw.invert=azimuthalInvert(asin$1);function orthographic(){return projection(orthographicRaw).scale(249.5).clipAngle(90+epsilon$2)}function stereographicRaw(t,e){var n=cos$1(e),r=1+cos$1(t)*n;return[n*sin$1(t)/r,sin$1(e)/r]}stereographicRaw.invert=azimuthalInvert((function(t){return 2*atan(t)}));function stereographic(){return projection(stereographicRaw).scale(250).clipAngle(142)}function transverseMercatorRaw(t,e){return[log$1(tan((halfPi$1+e)/2)),-t]}transverseMercatorRaw.invert=function(t,e){return[-e,2*atan(exp(t))-halfPi$1]};function transverseMercator(){var t=mercatorProjection(transverseMercatorRaw),e=t.center,n=t.rotate;t.center=function(t){return arguments.length?e([-t[1],t[0]]):(t=e(),[t[1],-t[0]])};t.rotate=function(t){return arguments.length?n([t[0],t[1],t.length>2?t[2]+90:90]):(t=n(),[t[0],t[1],t[2]-90])};return n([0,0,90]).scale(159.155)}function defaultSeparation$1(t,e){return t.parent===e.parent?1:2}function meanX(t){return t.reduce(meanXReduce,0)/t.length}function meanXReduce(t,e){return t+e.x}function maxY(t){return 1+t.reduce(maxYReduce,0)}function maxYReduce(t,e){return Math.max(t,e.y)}function leafLeft(t){var e;while(e=t.children)t=e[0];return t}function leafRight(t){var e;while(e=t.children)t=e[e.length-1];return t}function cluster(){var t=defaultSeparation$1,e=1,n=1,r=false;function i(i){var a,o=0;i.eachAfter((function(e){var n=e.children;if(n){e.x=meanX(n);e.y=maxY(n)}else{e.x=a?o+=t(e,a):0;e.y=0;a=e}}));var s=leafLeft(i),l=leafRight(i),u=s.x-t(s,l)/2,c=l.x+t(l,s)/2;return i.eachAfter(r?function(t){t.x=(t.x-i.x)*e;t.y=(i.y-t.y)*n}:function(t){t.x=(t.x-u)/(c-u)*e;t.y=(1-(i.y?t.y/i.y:1))*n})}i.separation=function(e){return arguments.length?(t=e,i):t};i.size=function(t){return arguments.length?(r=false,e=+t[0],n=+t[1],i):r?null:[e,n]};i.nodeSize=function(t){return arguments.length?(r=true,e=+t[0],n=+t[1],i):r?[e,n]:null};return i}function count(t){var e=0,n=t.children,r=n&&n.length;if(!r)e=1;else while(--r>=0)e+=n[r].value;t.value=e}function node_count(){return this.eachAfter(count)}function node_each(t){var e=this,n,r=[e],i,a,o;do{n=r.reverse(),r=[];while(e=n.pop()){t(e),i=e.children;if(i)for(a=0,o=i.length;a<o;++a){r.push(i[a])}}}while(r.length);return this}function node_eachBefore(t){var e=this,n=[e],r,i;while(e=n.pop()){t(e),r=e.children;if(r)for(i=r.length-1;i>=0;--i){n.push(r[i])}}return this}function node_eachAfter(t){var e=this,n=[e],r=[],i,a,o;while(e=n.pop()){r.push(e),i=e.children;if(i)for(a=0,o=i.length;a<o;++a){n.push(i[a])}}while(e=r.pop()){t(e)}return this}function node_sum(t){return this.eachAfter((function(e){var n=+t(e.data)||0,r=e.children,i=r&&r.length;while(--i>=0)n+=r[i].value;e.value=n}))}function node_sort(t){return this.eachBefore((function(e){if(e.children){e.children.sort(t)}}))}function node_path(t){var e=this,n=leastCommonAncestor(e,t),r=[e];while(e!==n){e=e.parent;r.push(e)}var i=r.length;while(t!==n){r.splice(i,0,t);t=t.parent}return r}function leastCommonAncestor(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;t=n.pop();e=r.pop();while(t===e){i=t;t=n.pop();e=r.pop()}return i}function node_ancestors(){var t=this,e=[t];while(t=t.parent){e.push(t)}return e}function node_descendants(){var t=[];this.each((function(e){t.push(e)}));return t}function node_leaves(){var t=[];this.eachBefore((function(e){if(!e.children){t.push(e)}}));return t}function node_links(){var t=this,e=[];t.each((function(n){if(n!==t){e.push({source:n.parent,target:n})}}));return e}function hierarchy(t,e){var n=new Node$1(t),r=+t.value&&(n.value=t.value),i,a=[n],o,s,l,u;if(e==null)e=defaultChildren;while(i=a.pop()){if(r)i.value=+i.data.value;if((s=e(i.data))&&(u=s.length)){i.children=new Array(u);for(l=u-1;l>=0;--l){a.push(o=i.children[l]=new Node$1(s[l]));o.parent=i;o.depth=i.depth+1}}}return n.eachBefore(computeHeight)}function node_copy(){return hierarchy(this).eachBefore(copyData)}function defaultChildren(t){return t.children}function copyData(t){t.data=t.data.data}function computeHeight(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function Node$1(t){this.data=t;this.depth=this.height=0;this.parent=null}Node$1.prototype=hierarchy.prototype={constructor:Node$1,count:node_count,each:node_each,eachAfter:node_eachAfter,eachBefore:node_eachBefore,sum:node_sum,sort:node_sort,path:node_path,ancestors:node_ancestors,descendants:node_descendants,leaves:node_leaves,links:node_links,copy:node_copy};var slice$3=Array.prototype.slice;function shuffle(t){var e=t.length,n,r;while(e){r=Math.random()*e--|0;n=t[e];t[e]=t[r];t[r]=n}return t}function enclose(t){var e=0,n=(t=shuffle(slice$3.call(t))).length,r=[],i,a;while(e<n){i=t[e];if(a&&enclosesWeak(a,i))++e;else a=encloseBasis(r=extendBasis(r,i)),e=0}return a}function extendBasis(t,e){var n,r;if(enclosesWeakAll(e,t))return[e];for(n=0;n<t.length;++n){if(enclosesNot(e,t[n])&&enclosesWeakAll(encloseBasis2(t[n],e),t)){return[t[n],e]}}for(n=0;n<t.length-1;++n){for(r=n+1;r<t.length;++r){if(enclosesNot(encloseBasis2(t[n],t[r]),e)&&enclosesNot(encloseBasis2(t[n],e),t[r])&&enclosesNot(encloseBasis2(t[r],e),t[n])&&enclosesWeakAll(encloseBasis3(t[n],t[r],e),t)){return[t[n],t[r],e]}}}throw new Error}function enclosesNot(t,e){var n=t.r-e.r,r=e.x-t.x,i=e.y-t.y;return n<0||n*n<r*r+i*i}function enclosesWeak(t,e){var n=t.r-e.r+1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function enclosesWeakAll(t,e){for(var n=0;n<e.length;++n){if(!enclosesWeak(t,e[n])){return false}}return true}function encloseBasis(t){switch(t.length){case 1:return encloseBasis1(t[0]);case 2:return encloseBasis2(t[0],t[1]);case 3:return encloseBasis3(t[0],t[1],t[2])}}function encloseBasis1(t){return{x:t.x,y:t.y,r:t.r}}function encloseBasis2(t,e){var n=t.x,r=t.y,i=t.r,a=e.x,o=e.y,s=e.r,l=a-n,u=o-r,c=s-i,f=Math.sqrt(l*l+u*u);return{x:(n+a+l/f*c)/2,y:(r+o+u/f*c)/2,r:(f+i+s)/2}}function encloseBasis3(t,e,n){var r=t.x,i=t.y,a=t.r,o=e.x,s=e.y,l=e.r,u=n.x,c=n.y,f=n.r,h=r-o,d=r-u,p=i-s,v=i-c,m=l-a,g=f-a,y=r*r+i*i-a*a,_=y-o*o-s*s+l*l,b=y-u*u-c*c+f*f,x=d*p-h*v,w=(p*b-v*_)/(x*2)-r,$=(v*m-p*g)/x,k=(d*_-h*b)/(x*2)-i,M=(h*g-d*m)/x,S=$*$+M*M-1,z=2*(a+w*$+k*M),E=w*w+k*k-a*a,C=-(S?(z+Math.sqrt(z*z-4*S*E))/(2*S):E/z);return{x:r+w+$*C,y:i+k+M*C,r:C}}function place(t,e,n){var r=t.x,i=t.y,a=e.r+n.r,o=t.r+n.r,s=e.x-r,l=e.y-i,u=s*s+l*l;if(u){var c=.5+((o*=o)-(a*=a))/(2*u),f=Math.sqrt(Math.max(0,2*a*(o+u)-(o-=u)*o-a*a))/(2*u);n.x=r+c*s+f*l;n.y=i+c*l-f*s}else{n.x=r+o;n.y=i}}function intersects(t,e){var n=e.x-t.x,r=e.y-t.y,i=t.r+e.r;return i*i-1e-6>n*n+r*r}function score(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,a=(e.y*n.r+n.y*e.r)/r;return i*i+a*a}function Node(t){this._=t;this.next=null;this.previous=null}function packEnclose(t){if(!(i=t.length))return 0;var e,n,r,i,a,o,s,l,u,c,f;e=t[0],e.x=0,e.y=0;if(!(i>1))return e.r;n=t[1],e.x=-n.r,n.x=e.r,n.y=0;if(!(i>2))return e.r+n.r;place(n,e,r=t[2]);e=new Node(e),n=new Node(n),r=new Node(r);e.next=r.previous=n;n.next=e.previous=r;r.next=n.previous=e;t:for(s=3;s<i;++s){place(e._,n._,r=t[s]),r=new Node(r);l=n.next,u=e.previous,c=n._.r,f=e._.r;do{if(c<=f){if(intersects(l._,r._)){n=l,e.next=n,n.previous=e,--s;continue t}c+=l._.r,l=l.next}else{if(intersects(u._,r._)){e=u,e.next=n,n.previous=e,--s;continue t}f+=u._.r,u=u.previous}}while(l!==u.next);r.previous=e,r.next=n,e.next=n.previous=n=r;a=score(e);while((r=r.next)!==n){if((o=score(r))<a){e=r,a=o}}n=e.next}e=[n._],r=n;while((r=r.next)!==n)e.push(r._);r=enclose(e);for(s=0;s<i;++s)e=t[s],e.x-=r.x,e.y-=r.y;return r.r}function siblings(t){packEnclose(t);return t}function optional(t){return t==null?null:required(t)}function required(t){if(typeof t!=="function")throw new Error;return t}function constantZero(){return 0}function constant$4(t){return function(){return t}}function defaultRadius(t){return Math.sqrt(t.value)}function index$1(){var t=null,e=1,n=1,r=constantZero;function i(i){i.x=e/2,i.y=n/2;if(t){i.eachBefore(radiusLeaf(t)).eachAfter(packChildren(r,.5)).eachBefore(translateChild(1))}else{i.eachBefore(radiusLeaf(defaultRadius)).eachAfter(packChildren(constantZero,1)).eachAfter(packChildren(r,i.r/Math.min(e,n))).eachBefore(translateChild(Math.min(e,n)/(2*i.r)))}return i}i.radius=function(e){return arguments.length?(t=optional(e),i):t};i.size=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]};i.padding=function(t){return arguments.length?(r=typeof t==="function"?t:constant$4(+t),i):r};return i}function radiusLeaf(t){return function(e){if(!e.children){e.r=Math.max(0,+t(e)||0)}}}function packChildren(t,e){return function(n){if(r=n.children){var r,i,a=r.length,o=t(n)*e||0,s;if(o)for(i=0;i<a;++i)r[i].r+=o;s=packEnclose(r);if(o)for(i=0;i<a;++i)r[i].r-=o;n.r=s+o}}}function translateChild(t){return function(e){var n=e.parent;e.r*=t;if(n){e.x=n.x+t*e.x;e.y=n.y+t*e.y}}}function roundNode(t){t.x0=Math.round(t.x0);t.y0=Math.round(t.y0);t.x1=Math.round(t.x1);t.y1=Math.round(t.y1)}function treemapDice(t,e,n,r,i){var a=t.children,o,s=-1,l=a.length,u=t.value&&(r-e)/t.value;while(++s<l){o=a[s],o.y0=n,o.y1=i;o.x0=e,o.x1=e+=o.value*u}}function partition(){var t=1,e=1,n=0,r=false;function i(i){var o=i.height+1;i.x0=i.y0=n;i.x1=t;i.y1=e/o;i.eachBefore(a(e,o));if(r)i.eachBefore(roundNode);return i}function a(t,e){return function(r){if(r.children){treemapDice(r,r.x0,t*(r.depth+1)/e,r.x1,t*(r.depth+2)/e)}var i=r.x0,a=r.y0,o=r.x1-n,s=r.y1-n;if(o<i)i=o=(i+o)/2;if(s<a)a=s=(a+s)/2;r.x0=i;r.y0=a;r.x1=o;r.y1=s}}i.round=function(t){return arguments.length?(r=!!t,i):r};i.size=function(n){return arguments.length?(t=+n[0],e=+n[1],i):[t,e]};i.padding=function(t){return arguments.length?(n=+t,i):n};return i}var keyPrefix="$",preroot={depth:-1},ambiguous={};function defaultId(t){return t.id}function defaultParentId(t){return t.parentId}function stratify(){var t=defaultId,e=defaultParentId;function n(n){var r,i,a=n.length,o,s,l,u=new Array(a),c,f,h={};for(i=0;i<a;++i){r=n[i],l=u[i]=new Node$1(r);if((c=t(r,i,n))!=null&&(c+="")){f=keyPrefix+(l.id=c);h[f]=f in h?ambiguous:l}}for(i=0;i<a;++i){l=u[i],c=e(n[i],i,n);if(c==null||!(c+="")){if(o)throw new Error("multiple roots");o=l}else{s=h[keyPrefix+c];if(!s)throw new Error("missing: "+c);if(s===ambiguous)throw new Error("ambiguous: "+c);if(s.children)s.children.push(l);else s.children=[l];l.parent=s}}if(!o)throw new Error("no root");o.parent=preroot;o.eachBefore((function(t){t.depth=t.parent.depth+1;--a})).eachBefore(computeHeight);o.parent=null;if(a>0)throw new Error("cycle");return o}n.id=function(e){return arguments.length?(t=required(e),n):t};n.parentId=function(t){return arguments.length?(e=required(t),n):e};return n}function defaultSeparation(t,e){return t.parent===e.parent?1:2}function nextLeft(t){var e=t.children;return e?e[0]:t.t}function nextRight(t){var e=t.children;return e?e[e.length-1]:t.t}function moveSubtree(t,e,n){var r=n/(e.i-t.i);e.c-=r;e.s+=n;t.c+=r;e.z+=n;e.m+=n}function executeShifts(t){var e=0,n=0,r=t.children,i=r.length,a;while(--i>=0){a=r[i];a.z+=e;a.m+=e;e+=a.s+(n+=a.c)}}function nextAncestor(t,e,n){return t.a.parent===e.parent?t.a:n}function TreeNode(t,e){this._=t;this.parent=null;this.children=null;this.A=null;this.a=this;this.z=0;this.m=0;this.c=0;this.s=0;this.t=null;this.i=e}TreeNode.prototype=Object.create(Node$1.prototype);function treeRoot(t){var e=new TreeNode(t,0),n,r=[e],i,a,o,s;while(n=r.pop()){if(a=n._.children){n.children=new Array(s=a.length);for(o=s-1;o>=0;--o){r.push(i=n.children[o]=new TreeNode(a[o],o));i.parent=n}}}(e.parent=new TreeNode(null,0)).children=[e];return e}function tree(){var t=defaultSeparation,e=1,n=1,r=null;function i(i){var s=treeRoot(i);s.eachAfter(a),s.parent.m=-s.z;s.eachBefore(o);if(r)i.eachBefore(l);else{var u=i,c=i,f=i;i.eachBefore((function(t){if(t.x<u.x)u=t;if(t.x>c.x)c=t;if(t.depth>f.depth)f=t}));var h=u===c?1:t(u,c)/2,d=h-u.x,p=e/(c.x+h+d),v=n/(f.depth||1);i.eachBefore((function(t){t.x=(t.x+d)*p;t.y=t.depth*v}))}return i}function a(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){executeShifts(e);var a=(n[0].z+n[n.length-1].z)/2;if(i){e.z=i.z+t(e._,i._);e.m=e.z-a}else{e.z=a}}else if(i){e.z=i.z+t(e._,i._)}e.parent.A=s(e,i,e.parent.A||r[0])}function o(t){t._.x=t.z+t.parent.m;t.m+=t.parent.m}function s(e,n,r){if(n){var i=e,a=e,o=n,s=i.parent.children[0],l=i.m,u=a.m,c=o.m,f=s.m,h;while(o=nextRight(o),i=nextLeft(i),o&&i){s=nextLeft(s);a=nextRight(a);a.a=e;h=o.z+c-i.z-l+t(o._,i._);if(h>0){moveSubtree(nextAncestor(o,e,r),e,h);l+=h;u+=h}c+=o.m;l+=i.m;f+=s.m;u+=a.m}if(o&&!nextRight(a)){a.t=o;a.m+=c-u}if(i&&!nextLeft(s)){s.t=i;s.m+=l-f;r=e}}return r}function l(t){t.x*=e;t.y=t.depth*n}i.separation=function(e){return arguments.length?(t=e,i):t};i.size=function(t){return arguments.length?(r=false,e=+t[0],n=+t[1],i):r?null:[e,n]};i.nodeSize=function(t){return arguments.length?(r=true,e=+t[0],n=+t[1],i):r?[e,n]:null};return i}function treemapSlice(t,e,n,r,i){var a=t.children,o,s=-1,l=a.length,u=t.value&&(i-n)/t.value;while(++s<l){o=a[s],o.x0=e,o.x1=r;o.y0=n,o.y1=n+=o.value*u}}var phi=(1+Math.sqrt(5))/2;function squarifyRatio(t,e,n,r,i,a){var o=[],s=e.children,l,u,c=0,f=0,h=s.length,d,p,v=e.value,m,g,y,_,b,x,w;while(c<h){d=i-n,p=a-r;do{m=s[f++].value}while(!m&&f<h);g=y=m;x=Math.max(p/d,d/p)/(v*t);w=m*m*x;b=Math.max(y/w,w/g);for(;f<h;++f){m+=u=s[f].value;if(u<g)g=u;if(u>y)y=u;w=m*m*x;_=Math.max(y/w,w/g);if(_>b){m-=u;break}b=_}o.push(l={value:m,dice:d<p,children:s.slice(c,f)});if(l.dice)treemapDice(l,n,r,i,v?r+=p*m/v:a);else treemapSlice(l,n,r,v?n+=d*m/v:i,a);v-=m,c=f}return o}var squarify=function t(e){function n(t,n,r,i,a){squarifyRatio(e,t,n,r,i,a)}n.ratio=function(e){return t((e=+e)>1?e:1)};return n}(phi);function index(){var t=squarify,e=false,n=1,r=1,i=[0],a=constantZero,o=constantZero,s=constantZero,l=constantZero,u=constantZero;function c(t){t.x0=t.y0=0;t.x1=n;t.y1=r;t.eachBefore(f);i=[0];if(e)t.eachBefore(roundNode);return t}function f(e){var n=i[e.depth],r=e.x0+n,c=e.y0+n,f=e.x1-n,h=e.y1-n;if(f<r)r=f=(r+f)/2;if(h<c)c=h=(c+h)/2;e.x0=r;e.y0=c;e.x1=f;e.y1=h;if(e.children){n=i[e.depth+1]=a(e)/2;r+=u(e)-n;c+=o(e)-n;f-=s(e)-n;h-=l(e)-n;if(f<r)r=f=(r+f)/2;if(h<c)c=h=(c+h)/2;t(e,r,c,f,h)}}c.round=function(t){return arguments.length?(e=!!t,c):e};c.size=function(t){return arguments.length?(n=+t[0],r=+t[1],c):[n,r]};c.tile=function(e){return arguments.length?(t=required(e),c):t};c.padding=function(t){return arguments.length?c.paddingInner(t).paddingOuter(t):c.paddingInner()};c.paddingInner=function(t){return arguments.length?(a=typeof t==="function"?t:constant$4(+t),c):a};c.paddingOuter=function(t){return arguments.length?c.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):c.paddingTop()};c.paddingTop=function(t){return arguments.length?(o=typeof t==="function"?t:constant$4(+t),c):o};c.paddingRight=function(t){return arguments.length?(s=typeof t==="function"?t:constant$4(+t),c):s};c.paddingBottom=function(t){return arguments.length?(l=typeof t==="function"?t:constant$4(+t),c):l};c.paddingLeft=function(t){return arguments.length?(u=typeof t==="function"?t:constant$4(+t),c):u};return c}function binary(t,e,n,r,i){var a=t.children,o,s=a.length,l,u=new Array(s+1);for(u[0]=l=o=0;o<s;++o){u[o+1]=l+=a[o].value}c(0,s,t.value,e,n,r,i);function c(t,e,n,r,i,o,s){if(t>=e-1){var l=a[t];l.x0=r,l.y0=i;l.x1=o,l.y1=s;return}var f=u[t],h=n/2+f,d=t+1,p=e-1;while(d<p){var v=d+p>>>1;if(u[v]<h)d=v+1;else p=v}if(h-u[d-1]<u[d]-h&&t+1<d)--d;var m=u[d]-f,g=n-m;if(o-r>s-i){var y=(r*g+o*m)/n;c(t,d,m,r,i,y,s);c(d,e,g,y,i,o,s)}else{var _=(i*g+s*m)/n;c(t,d,m,r,i,o,_);c(d,e,g,r,_,o,s)}}}function sliceDice(t,e,n,r,i){(t.depth&1?treemapSlice:treemapDice)(t,e,n,r,i)}var resquarify=function t(e){function n(t,n,r,i,a){if((o=t._squarify)&&o.ratio===e){var o,s,l,u,c=-1,f,h=o.length,d=t.value;while(++c<h){s=o[c],l=s.children;for(u=s.value=0,f=l.length;u<f;++u)s.value+=l[u].value;if(s.dice)treemapDice(s,n,r,i,r+=(a-r)*s.value/d);else treemapSlice(s,n,r,n+=(i-n)*s.value/d,a);d-=s.value}}else{t._squarify=o=squarifyRatio(e,t,n,r,i,a);o.ratio=e}}n.ratio=function(e){return t((e=+e)>1?e:1)};return n}(phi);function area$1(t){var e=-1,n=t.length,r,i=t[n-1],a=0;while(++e<n){r=i;i=t[e];a+=r[1]*i[0]-r[0]*i[1]}return a/2}function centroid(t){var e=-1,n=t.length,r=0,i=0,a,o=t[n-1],s,l=0;while(++e<n){a=o;o=t[e];l+=s=a[0]*o[1]-o[0]*a[1];r+=(a[0]+o[0])*s;i+=(a[1]+o[1])*s}return l*=3,[r/l,i/l]}function cross$1(t,e,n){return(e[0]-t[0])*(n[1]-t[1])-(e[1]-t[1])*(n[0]-t[0])}function lexicographicOrder(t,e){return t[0]-e[0]||t[1]-e[1]}function computeUpperHullIndexes(t){var e=t.length,n=[0,1],r=2;for(var i=2;i<e;++i){while(r>1&&cross$1(t[n[r-2]],t[n[r-1]],t[i])<=0)--r;n[r++]=i}return n.slice(0,r)}function hull(t){if((n=t.length)<3)return null;var e,n,r=new Array(n),i=new Array(n);for(e=0;e<n;++e)r[e]=[+t[e][0],+t[e][1],e];r.sort(lexicographicOrder);for(e=0;e<n;++e)i[e]=[r[e][0],-r[e][1]];var a=computeUpperHullIndexes(r),o=computeUpperHullIndexes(i);var s=o[0]===a[0],l=o[o.length-1]===a[a.length-1],u=[];for(e=a.length-1;e>=0;--e)u.push(t[r[a[e]][2]]);for(e=+s;e<o.length-l;++e)u.push(t[r[o[e]][2]]);return u}function contains(t,e){var n=t.length,r=t[n-1],i=e[0],a=e[1],o=r[0],s=r[1],l,u,c=false;for(var f=0;f<n;++f){r=t[f],l=r[0],u=r[1];if(u>a!==s>a&&i<(o-l)*(a-u)/(s-u)+l)c=!c;o=l,s=u}return c}function length(t){var e=-1,n=t.length,r=t[n-1],i,a,o=r[0],s=r[1],l=0;while(++e<n){i=o;a=s;r=t[e];o=r[0];s=r[1];i-=o;a-=s;l+=Math.sqrt(i*i+a*a)}return l}var slice$2=[].slice;var noabort={};function Queue(t){this._size=t;this._call=this._error=null;this._tasks=[];this._data=[];this._waiting=this._active=this._ended=this._start=0}Queue.prototype=queue.prototype={constructor:Queue,defer:function(t){if(typeof t!=="function")throw new Error("invalid callback");if(this._call)throw new Error("defer after await");if(this._error!=null)return this;var e=slice$2.call(arguments,1);e.push(t);++this._waiting,this._tasks.push(e);poke(this);return this},abort:function(){if(this._error==null)abort(this,new Error("abort"));return this},await:function(t){if(typeof t!=="function")throw new Error("invalid callback");if(this._call)throw new Error("multiple await");this._call=function(e,n){t.apply(null,[e].concat(n))};maybeNotify(this);return this},awaitAll:function(t){if(typeof t!=="function")throw new Error("invalid callback");if(this._call)throw new Error("multiple await");this._call=t;maybeNotify(this);return this}};function poke(t){if(!t._start){try{start(t)}catch(e){if(t._tasks[t._ended+t._active-1])abort(t,e);else if(!t._data)throw e}}}function start(t){while(t._start=t._waiting&&t._active<t._size){var e=t._ended+t._active,n=t._tasks[e],r=n.length-1,i=n[r];n[r]=end(t,e);--t._waiting,++t._active;n=i.apply(null,n);if(!t._tasks[e])continue;t._tasks[e]=n||noabort}}function end(t,e){return function(n,r){if(!t._tasks[e])return;--t._active,++t._ended;t._tasks[e]=null;if(t._error!=null)return;if(n!=null){abort(t,n)}else{t._data[e]=r;if(t._waiting)poke(t);else maybeNotify(t)}}}function abort(t,e){var n=t._tasks.length,r;t._error=e;t._data=undefined;t._waiting=NaN;while(--n>=0){if(r=t._tasks[n]){t._tasks[n]=null;if(r.abort){try{r.abort()}catch(e){}}}}t._active=NaN;maybeNotify(t)}function maybeNotify(t){if(!t._active&&t._call){var e=t._data;t._data=undefined;t._call(t._error,e)}}function queue(t){if(t==null)t=Infinity;else if(!((t=+t)>=1))throw new Error("invalid concurrency");return new Queue(t)}function defaultSource(){return Math.random()}var uniform=function t(e){function n(t,n){t=t==null?0:+t;n=n==null?1:+n;if(arguments.length===1)n=t,t=0;else n-=t;return function(){return e()*n+t}}n.source=t;return n}(defaultSource);var normal=function t(e){function n(t,n){var r,i;t=t==null?0:+t;n=n==null?1:+n;return function(){var a;if(r!=null)a=r,r=null;else do{r=e()*2-1;a=e()*2-1;i=r*r+a*a}while(!i||i>1);return t+n*a*Math.sqrt(-2*Math.log(i)/i)}}n.source=t;return n}(defaultSource);var logNormal=function t(e){function n(){var t=normal.source(e).apply(this,arguments);return function(){return Math.exp(t())}}n.source=t;return n}(defaultSource);var irwinHall=function t(e){function n(t){return function(){for(var n=0,r=0;r<t;++r)n+=e();return n}}n.source=t;return n}(defaultSource);var bates=function t(e){function n(t){var n=irwinHall.source(e)(t);return function(){return n()/t}}n.source=t;return n}(defaultSource);var exponential=function t(e){function n(t){return function(){return-Math.log(1-e())/t}}n.source=t;return n}(defaultSource);function request(t,e){var n,r=dispatch("beforesend","progress","load","error"),i,a=map$1(),o=new XMLHttpRequest,s=null,l=null,u,c,f=0;if(typeof XDomainRequest!=="undefined"&&!("withCredentials"in o)&&/^(http(s)?:)?\/\//.test(t))o=new XDomainRequest;"onload"in o?o.onload=o.onerror=o.ontimeout=h:o.onreadystatechange=function(t){o.readyState>3&&h(t)};function h(t){var e=o.status,i;if(!e&&hasResponse(o)||e>=200&&e<300||e===304){if(u){try{i=u.call(n,o)}catch(a){r.call("error",n,a);return}}else{i=o}r.call("load",n,i)}else{r.call("error",n,t)}}o.onprogress=function(t){r.call("progress",n,t)};n={header:function(t,e){t=(t+"").toLowerCase();if(arguments.length<2)return a.get(t);if(e==null)a.remove(t);else a.set(t,e+"");return n},mimeType:function(t){if(!arguments.length)return i;i=t==null?null:t+"";return n},responseType:function(t){if(!arguments.length)return c;c=t;return n},timeout:function(t){if(!arguments.length)return f;f=+t;return n},user:function(t){return arguments.length<1?s:(s=t==null?null:t+"",n)},password:function(t){return arguments.length<1?l:(l=t==null?null:t+"",n)},response:function(t){u=t;return n},get:function(t,e){return n.send("GET",t,e)},post:function(t,e){return n.send("POST",t,e)},send:function(e,u,h){o.open(e,t,true,s,l);if(i!=null&&!a.has("accept"))a.set("accept",i+",*/*");if(o.setRequestHeader)a.each((function(t,e){o.setRequestHeader(e,t)}));if(i!=null&&o.overrideMimeType)o.overrideMimeType(i);if(c!=null)o.responseType=c;if(f>0)o.timeout=f;if(h==null&&typeof u==="function")h=u,u=null;if(h!=null&&h.length===1)h=fixCallback(h);if(h!=null)n.on("error",h).on("load",(function(t){h(null,t)}));r.call("beforesend",n,o);o.send(u==null?null:u);return n},abort:function(){o.abort();return n},on:function(){var t=r.on.apply(r,arguments);return t===r?n:t}};if(e!=null){if(typeof e!=="function")throw new Error("invalid callback: "+e);return n.get(e)}return n}function fixCallback(t){return function(e,n){t(e==null?n:null)}}function hasResponse(t){var e=t.responseType;return e&&e!=="text"?t.response:t.responseText}function type(t,e){return function(n,r){var i=request(n).mimeType(t).response(e);if(r!=null){if(typeof r!=="function")throw new Error("invalid callback: "+r);return i.get(r)}return i}}var html=type("text/html",(function(t){return document.createRange().createContextualFragment(t.responseText)}));var json=type("application/json",(function(t){return JSON.parse(t.responseText)}));var text=type("text/plain",(function(t){return t.responseText}));var xml=type("application/xml",(function(t){var e=t.responseXML;if(!e)throw new Error("parse error");return e}));function dsv(t,e){return function(n,r,i){if(arguments.length<3)i=r,r=null;var a=request(n).mimeType(t);a.row=function(t){return arguments.length?a.response(responseOf(e,r=t)):r};a.row(r);return i?a.get(i):a}}function responseOf(t,e){return function(n){return t(n.responseText,e)}}var csv=dsv("text/csv",csvParse);var tsv=dsv("text/tab-separated-values",tsvParse);var array=Array.prototype;var map=array.map;var slice$1=array.slice;var implicit={name:"implicit"};function ordinal(t){var e=map$1(),n=[],r=implicit;t=t==null?[]:slice$1.call(t);function i(i){var a=i+"",o=e.get(a);if(!o){if(r!==implicit)return r;e.set(a,o=n.push(i))}return t[(o-1)%t.length]}i.domain=function(t){if(!arguments.length)return n.slice();n=[],e=map$1();var r=-1,a=t.length,o,s;while(++r<a)if(!e.has(s=(o=t[r])+""))e.set(s,n.push(o));return i};i.range=function(e){return arguments.length?(t=slice$1.call(e),i):t.slice()};i.unknown=function(t){return arguments.length?(r=t,i):r};i.copy=function(){return ordinal().domain(n).range(t).unknown(r)};return i}function band(){var t=ordinal().unknown(undefined),e=t.domain,n=t.range,r=[0,1],i,a,o=false,s=0,l=0,u=.5;delete t.unknown;function c(){var t=e().length,c=r[1]<r[0],f=r[c-0],h=r[1-c];i=(h-f)/Math.max(1,t-s+l*2);if(o)i=Math.floor(i);f+=(h-f-i*(t-s))*u;a=i*(1-s);if(o)f=Math.round(f),a=Math.round(a);var d=sequence(t).map((function(t){return f+i*t}));return n(c?d.reverse():d)}t.domain=function(t){return arguments.length?(e(t),c()):e()};t.range=function(t){return arguments.length?(r=[+t[0],+t[1]],c()):r.slice()};t.rangeRound=function(t){return r=[+t[0],+t[1]],o=true,c()};t.bandwidth=function(){return a};t.step=function(){return i};t.round=function(t){return arguments.length?(o=!!t,c()):o};t.padding=function(t){return arguments.length?(s=l=Math.max(0,Math.min(1,t)),c()):s};t.paddingInner=function(t){return arguments.length?(s=Math.max(0,Math.min(1,t)),c()):s};t.paddingOuter=function(t){return arguments.length?(l=Math.max(0,Math.min(1,t)),c()):l};t.align=function(t){return arguments.length?(u=Math.max(0,Math.min(1,t)),c()):u};t.copy=function(){return band().domain(e()).range(r).round(o).paddingInner(s).paddingOuter(l).align(u)};return c()}function pointish(t){var e=t.copy;t.padding=t.paddingOuter;delete t.paddingInner;delete t.paddingOuter;t.copy=function(){return pointish(e())};return t}function point$4(){return pointish(band().paddingInner(1))}function constant$3(t){return function(){return t}}function number$1(t){return+t}var unit=[0,1];function deinterpolateLinear(t,e){return(e-=t=+t)?function(n){return(n-t)/e}:constant$3(e)}function deinterpolateClamp(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=e?0:t>=n?1:r(t)}}}function reinterpolateClamp(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=0?e:t>=1?n:r(t)}}}function bimap(t,e,n,r){var i=t[0],a=t[1],o=e[0],s=e[1];if(a<i)i=n(a,i),o=r(s,o);else i=n(i,a),o=r(o,s);return function(t){return o(i(t))}}function polymap(t,e,n,r){var i=Math.min(t.length,e.length)-1,a=new Array(i),o=new Array(i),s=-1;if(t[i]<t[0]){t=t.slice().reverse();e=e.slice().reverse()}while(++s<i){a[s]=n(t[s],t[s+1]);o[s]=r(e[s],e[s+1])}return function(e){var n=bisectRight(t,e,1,i)-1;return o[n](a[n](e))}}function copy(t,e){return e.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp())}function continuous(t,e){var n=unit,r=unit,i=interpolateValue,a=false,o,s,l;function u(){o=Math.min(n.length,r.length)>2?polymap:bimap;s=l=null;return c}function c(e){return(s||(s=o(n,r,a?deinterpolateClamp(t):t,i)))(+e)}c.invert=function(t){return(l||(l=o(r,n,deinterpolateLinear,a?reinterpolateClamp(e):e)))(+t)};c.domain=function(t){return arguments.length?(n=map.call(t,number$1),u()):n.slice()};c.range=function(t){return arguments.length?(r=slice$1.call(t),u()):r.slice()};c.rangeRound=function(t){return r=slice$1.call(t),i=interpolateRound,u()};c.clamp=function(t){return arguments.length?(a=!!t,u()):a};c.interpolate=function(t){return arguments.length?(i=t,u()):i};return u()}function tickFormat(t,e,n){var r=t[0],i=t[t.length-1],a=tickStep(r,i,e==null?10:e),o;n=formatSpecifier(n==null?",f":n);switch(n.type){case"s":{var s=Math.max(Math.abs(r),Math.abs(i));if(n.precision==null&&!isNaN(o=precisionPrefix(a,s)))n.precision=o;return formatPrefix(n,s)}case"":case"e":case"g":case"p":case"r":{if(n.precision==null&&!isNaN(o=precisionRound(a,Math.max(Math.abs(r),Math.abs(i)))))n.precision=o-(n.type==="e");break}case"f":case"%":{if(n.precision==null&&!isNaN(o=precisionFixed(a)))n.precision=o-(n.type==="%")*2;break}}return format(n)}function linearish(t){var e=t.domain;t.ticks=function(t){var n=e();return ticks(n[0],n[n.length-1],t==null?10:t)};t.tickFormat=function(t,n){return tickFormat(e(),t,n)};t.nice=function(n){if(n==null)n=10;var r=e(),i=0,a=r.length-1,o=r[i],s=r[a],l;if(s<o){l=o,o=s,s=l;l=i,i=a,a=l}l=tickIncrement(o,s,n);if(l>0){o=Math.floor(o/l)*l;s=Math.ceil(s/l)*l;l=tickIncrement(o,s,n)}else if(l<0){o=Math.ceil(o*l)/l;s=Math.floor(s*l)/l;l=tickIncrement(o,s,n)}if(l>0){r[i]=Math.floor(o/l)*l;r[a]=Math.ceil(s/l)*l;e(r)}else if(l<0){r[i]=Math.ceil(o*l)/l;r[a]=Math.floor(s*l)/l;e(r)}return t};return t}function linear(){var t=continuous(deinterpolateLinear,reinterpolate$1);t.copy=function(){return copy(t,linear())};return linearish(t)}function identity$3(){var t=[0,1];function e(t){return+t}e.invert=e;e.domain=e.range=function(n){return arguments.length?(t=map.call(n,number$1),e):t.slice()};e.copy=function(){return identity$3().domain(t)};return linearish(e)}function nice(t,e){t=t.slice();var n=0,r=t.length-1,i=t[n],a=t[r],o;if(a<i){o=n,n=r,r=o;o=i,i=a,a=o}t[n]=e.floor(i);t[r]=e.ceil(a);return t}function deinterpolate(t,e){return(e=Math.log(e/t))?function(n){return Math.log(n/t)/e}:constant$3(e)}function reinterpolate(t,e){return t<0?function(n){return-Math.pow(-e,n)*Math.pow(-t,1-n)}:function(n){return Math.pow(e,n)*Math.pow(t,1-n)}}function pow10(t){return isFinite(t)?+("1e"+t):t<0?0:t}function powp(t){return t===10?pow10:t===Math.E?Math.exp:function(e){return Math.pow(t,e)}}function logp(t){return t===Math.E?Math.log:t===10&&Math.log10||t===2&&Math.log2||(t=Math.log(t),function(e){return Math.log(e)/t})}function reflect(t){return function(e){return-t(-e)}}function log(){var t=continuous(deinterpolate,reinterpolate).domain([1,10]),e=t.domain,n=10,r=logp(10),i=powp(10);function a(){r=logp(n),i=powp(n);if(e()[0]<0)r=reflect(r),i=reflect(i);return t}t.base=function(t){return arguments.length?(n=+t,a()):n};t.domain=function(t){return arguments.length?(e(t),a()):e()};t.ticks=function(t){var a=e(),o=a[0],s=a[a.length-1],l;if(l=s<o)u=o,o=s,s=u;var u=r(o),c=r(s),f,h,d,p=t==null?10:+t,v=[];if(!(n%1)&&c-u<p){u=Math.round(u)-1,c=Math.round(c)+1;if(o>0)for(;u<c;++u){for(h=1,f=i(u);h<n;++h){d=f*h;if(d<o)continue;if(d>s)break;v.push(d)}}else for(;u<c;++u){for(h=n-1,f=i(u);h>=1;--h){d=f*h;if(d<o)continue;if(d>s)break;v.push(d)}}}else{v=ticks(u,c,Math.min(c-u,p)).map(i)}return l?v.reverse():v};t.tickFormat=function(e,a){if(a==null)a=n===10?".0e":",";if(typeof a!=="function")a=format(a);if(e===Infinity)return a;if(e==null)e=10;var o=Math.max(1,n*e/t.ticks().length);return function(t){var e=t/i(Math.round(r(t)));if(e*n<n-.5)e*=n;return e<=o?a(t):""}};t.nice=function(){return e(nice(e(),{floor:function(t){return i(Math.floor(r(t)))},ceil:function(t){return i(Math.ceil(r(t)))}}))};t.copy=function(){return copy(t,log().base(n))};return t}function raise(t,e){return t<0?-Math.pow(-t,e):Math.pow(t,e)}function pow(){var t=1,e=continuous(r,i),n=e.domain;function r(e,n){return(n=raise(n,t)-(e=raise(e,t)))?function(r){return(raise(r,t)-e)/n}:constant$3(n)}function i(e,n){n=raise(n,t)-(e=raise(e,t));return function(r){return raise(e+n*r,1/t)}}e.exponent=function(e){return arguments.length?(t=+e,n(n())):t};e.copy=function(){return copy(e,pow().exponent(t))};return linearish(e)}function sqrt$1(){return pow().exponent(.5)}function quantile(){var t=[],e=[],n=[];function r(){var r=0,a=Math.max(1,e.length);n=new Array(a-1);while(++r<a)n[r-1]=threshold$1(t,r/a);return i}function i(t){if(!isNaN(t=+t))return e[bisectRight(n,t)]}i.invertExtent=function(r){var i=e.indexOf(r);return i<0?[NaN,NaN]:[i>0?n[i-1]:t[0],i<n.length?n[i]:t[t.length-1]]};i.domain=function(e){if(!arguments.length)return t.slice();t=[];for(var n=0,i=e.length,a;n<i;++n)if(a=e[n],a!=null&&!isNaN(a=+a))t.push(a);t.sort(ascending$2);return r()};i.range=function(t){return arguments.length?(e=slice$1.call(t),r()):e.slice()};i.quantiles=function(){return n.slice()};i.copy=function(){return quantile().domain(t).range(e)};return i}function quantize$1(){var t=0,e=1,n=1,r=[.5],i=[0,1];function a(t){if(t<=t)return i[bisectRight(r,t,0,n)]}function o(){var i=-1;r=new Array(n);while(++i<n)r[i]=((i+1)*e-(i-n)*t)/(n+1);return a}a.domain=function(n){return arguments.length?(t=+n[0],e=+n[1],o()):[t,e]};a.range=function(t){return arguments.length?(n=(i=slice$1.call(t)).length-1,o()):i.slice()};a.invertExtent=function(a){var o=i.indexOf(a);return o<0?[NaN,NaN]:o<1?[t,r[0]]:o>=n?[r[n-1],e]:[r[o-1],r[o]]};a.copy=function(){return quantize$1().domain([t,e]).range(i)};return linearish(a)}function threshold(){var t=[.5],e=[0,1],n=1;function r(r){if(r<=r)return e[bisectRight(t,r,0,n)]}r.domain=function(i){return arguments.length?(t=slice$1.call(i),n=Math.min(t.length,e.length-1),r):t.slice()};r.range=function(i){return arguments.length?(e=slice$1.call(i),n=Math.min(t.length,e.length-1),r):e.slice()};r.invertExtent=function(n){var r=e.indexOf(n);return[t[r-1],t[r]]};r.copy=function(){return threshold().domain(t).range(e)};return r}var t0=new Date,t1=new Date;function newInterval(t,e,n,r){function i(e){return t(e=new Date(+e)),e}i.floor=i;i.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n};i.round=function(t){var e=i(t),n=i.ceil(t);return t-e<n-t?e:n};i.offset=function(t,n){return e(t=new Date(+t),n==null?1:Math.floor(n)),t};i.range=function(n,r,a){var o=[],s;n=i.ceil(n);a=a==null?1:Math.floor(a);if(!(n<r)||!(a>0))return o;do{o.push(s=new Date(+n)),e(n,a),t(n)}while(s<n&&n<r);return o};i.filter=function(n){return newInterval((function(e){if(e>=e)while(t(e),!n(e))e.setTime(e-1)}),(function(t,r){if(t>=t){if(r<0)while(++r<=0){while(e(t,-1),!n(t)){}}else while(--r>=0){while(e(t,+1),!n(t)){}}}}))};if(n){i.count=function(e,r){t0.setTime(+e),t1.setTime(+r);t(t0),t(t1);return Math.floor(n(t0,t1))};i.every=function(t){t=Math.floor(t);return!isFinite(t)||!(t>0)?null:!(t>1)?i:i.filter(r?function(e){return r(e)%t===0}:function(e){return i.count(0,e)%t===0})}}return i}var millisecond=newInterval((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));millisecond.every=function(t){t=Math.floor(t);if(!isFinite(t)||!(t>0))return null;if(!(t>1))return millisecond;return newInterval((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,n){e.setTime(+e+n*t)}),(function(e,n){return(n-e)/t}))};var milliseconds=millisecond.range;var durationSecond$1=1e3;var durationMinute$1=6e4;var durationHour$1=36e5;var durationDay$1=864e5;var durationWeek$1=6048e5;var second=newInterval((function(t){t.setTime(Math.floor(t/durationSecond$1)*durationSecond$1)}),(function(t,e){t.setTime(+t+e*durationSecond$1)}),(function(t,e){return(e-t)/durationSecond$1}),(function(t){return t.getUTCSeconds()}));var seconds=second.range;var minute=newInterval((function(t){t.setTime(Math.floor(t/durationMinute$1)*durationMinute$1)}),(function(t,e){t.setTime(+t+e*durationMinute$1)}),(function(t,e){return(e-t)/durationMinute$1}),(function(t){return t.getMinutes()}));var minutes=minute.range;var hour=newInterval((function(t){var e=t.getTimezoneOffset()*durationMinute$1%durationHour$1;if(e<0)e+=durationHour$1;t.setTime(Math.floor((+t-e)/durationHour$1)*durationHour$1+e)}),(function(t,e){t.setTime(+t+e*durationHour$1)}),(function(t,e){return(e-t)/durationHour$1}),(function(t){return t.getHours()}));var hours=hour.range;var day=newInterval((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*durationMinute$1)/durationDay$1}),(function(t){return t.getDate()-1}));var days=day.range;function weekday(t){return newInterval((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7);e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e*7)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*durationMinute$1)/durationWeek$1}))}var sunday=weekday(0);var monday=weekday(1);var tuesday=weekday(2);var wednesday=weekday(3);var thursday=weekday(4);var friday=weekday(5);var saturday=weekday(6);var sundays=sunday.range;var mondays=monday.range;var tuesdays=tuesday.range;var wednesdays=wednesday.range;var thursdays=thursday.range;var fridays=friday.range;var saturdays=saturday.range;var month=newInterval((function(t){t.setDate(1);t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12}),(function(t){return t.getMonth()}));var months=month.range;var year=newInterval((function(t){t.setMonth(0,1);t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));year.every=function(t){return!isFinite(t=Math.floor(t))||!(t>0)?null:newInterval((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t);e.setMonth(0,1);e.setHours(0,0,0,0)}),(function(e,n){e.setFullYear(e.getFullYear()+n*t)}))};var years=year.range;var utcMinute=newInterval((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+e*durationMinute$1)}),(function(t,e){return(e-t)/durationMinute$1}),(function(t){return t.getUTCMinutes()}));var utcMinutes=utcMinute.range;var utcHour=newInterval((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+e*durationHour$1)}),(function(t,e){return(e-t)/durationHour$1}),(function(t){return t.getUTCHours()}));var utcHours=utcHour.range;var utcDay=newInterval((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/durationDay$1}),(function(t){return t.getUTCDate()-1}));var utcDays=utcDay.range;function utcWeekday(t){return newInterval((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7);e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e*7)}),(function(t,e){return(e-t)/durationWeek$1}))}var utcSunday=utcWeekday(0);var utcMonday=utcWeekday(1);var utcTuesday=utcWeekday(2);var utcWednesday=utcWeekday(3);var utcThursday=utcWeekday(4);var utcFriday=utcWeekday(5);var utcSaturday=utcWeekday(6);var utcSundays=utcSunday.range;var utcMondays=utcMonday.range;var utcTuesdays=utcTuesday.range;var utcWednesdays=utcWednesday.range;var utcThursdays=utcThursday.range;var utcFridays=utcFriday.range;var utcSaturdays=utcSaturday.range;var utcMonth=newInterval((function(t){t.setUTCDate(1);t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12}),(function(t){return t.getUTCMonth()}));var utcMonths=utcMonth.range;var utcYear=newInterval((function(t){t.setUTCMonth(0,1);t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));utcYear.every=function(t){return!isFinite(t=Math.floor(t))||!(t>0)?null:newInterval((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t);e.setUTCMonth(0,1);e.setUTCHours(0,0,0,0)}),(function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)}))};var utcYears=utcYear.range;function localDate(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);e.setFullYear(t.y);return e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function utcDate(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));e.setUTCFullYear(t.y);return e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function newYear(t){return{y:t,m:0,d:1,H:0,M:0,S:0,L:0}}function formatLocale(t){var e=t.dateTime,n=t.date,r=t.time,i=t.periods,a=t.days,o=t.shortDays,s=t.months,l=t.shortMonths;var u=formatRe(i),c=formatLookup(i),f=formatRe(a),h=formatLookup(a),d=formatRe(o),p=formatLookup(o),v=formatRe(s),m=formatLookup(s),g=formatRe(l),y=formatLookup(l);var _={a:N,A:P,b:L,B:F,c:null,d:formatDayOfMonth,e:formatDayOfMonth,f:formatMicroseconds,H:formatHour24,I:formatHour12,j:formatDayOfYear,L:formatMilliseconds,m:formatMonthNumber,M:formatMinutes,p:D,Q:formatUnixTimestamp,s:formatUnixTimestampSeconds,S:formatSeconds,u:formatWeekdayNumberMonday,U:formatWeekNumberSunday,V:formatWeekNumberISO,w:formatWeekdayNumberSunday,W:formatWeekNumberMonday,x:null,X:null,y:formatYear,Y:formatFullYear,Z:formatZone,"%":formatLiteralPercent};var b={a:I,A:O,b:B,B:q,c:null,d:formatUTCDayOfMonth,e:formatUTCDayOfMonth,f:formatUTCMicroseconds,H:formatUTCHour24,I:formatUTCHour12,j:formatUTCDayOfYear,L:formatUTCMilliseconds,m:formatUTCMonthNumber,M:formatUTCMinutes,p:H,Q:formatUnixTimestamp,s:formatUnixTimestampSeconds,S:formatUTCSeconds,u:formatUTCWeekdayNumberMonday,U:formatUTCWeekNumberSunday,V:formatUTCWeekNumberISO,w:formatUTCWeekdayNumberSunday,W:formatUTCWeekNumberMonday,x:null,X:null,y:formatUTCYear,Y:formatUTCFullYear,Z:formatUTCZone,"%":formatLiteralPercent};var x={a:S,A:z,b:E,B:C,c:A,d:parseDayOfMonth,e:parseDayOfMonth,f:parseMicroseconds,H:parseHour24,I:parseHour24,j:parseDayOfYear,L:parseMilliseconds,m:parseMonthNumber,M:parseMinutes,p:M,Q:parseUnixTimestamp,s:parseUnixTimestampSeconds,S:parseSeconds,u:parseWeekdayNumberMonday,U:parseWeekNumberSunday,V:parseWeekNumberISO,w:parseWeekdayNumberSunday,W:parseWeekNumberMonday,x:R,X:T,y:parseYear,Y:parseFullYear,Z:parseZone,"%":parseLiteralPercent};_.x=w(n,_);_.X=w(r,_);_.c=w(e,_);b.x=w(n,b);b.X=w(r,b);b.c=w(e,b);function w(t,e){return function(n){var r=[],i=-1,a=0,o=t.length,s,l,u;if(!(n instanceof Date))n=new Date(+n);while(++i<o){if(t.charCodeAt(i)===37){r.push(t.slice(a,i));if((l=pads[s=t.charAt(++i)])!=null)s=t.charAt(++i);else l=s==="e"?" ":"0";if(u=e[s])s=u(n,l);r.push(s);a=i+1}}r.push(t.slice(a,i));return r.join("")}}function $(t,e){return function(n){var r=newYear(1900),i=k(r,t,n+="",0),a,o;if(i!=n.length)return null;if("Q"in r)return new Date(r.Q);if("p"in r)r.H=r.H%12+r.p*12;if("V"in r){if(r.V<1||r.V>53)return null;if(!("w"in r))r.w=1;if("Z"in r){a=utcDate(newYear(r.y)),o=a.getUTCDay();a=o>4||o===0?utcMonday.ceil(a):utcMonday(a);a=utcDay.offset(a,(r.V-1)*7);r.y=a.getUTCFullYear();r.m=a.getUTCMonth();r.d=a.getUTCDate()+(r.w+6)%7}else{a=e(newYear(r.y)),o=a.getDay();a=o>4||o===0?monday.ceil(a):monday(a);a=day.offset(a,(r.V-1)*7);r.y=a.getFullYear();r.m=a.getMonth();r.d=a.getDate()+(r.w+6)%7}}else if("W"in r||"U"in r){if(!("w"in r))r.w="u"in r?r.u%7:"W"in r?1:0;o="Z"in r?utcDate(newYear(r.y)).getUTCDay():e(newYear(r.y)).getDay();r.m=0;r.d="W"in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7}if("Z"in r){r.H+=r.Z/100|0;r.M+=r.Z%100;return utcDate(r)}return e(r)}}function k(t,e,n,r){var i=0,a=e.length,o=n.length,s,l;while(i<a){if(r>=o)return-1;s=e.charCodeAt(i++);if(s===37){s=e.charAt(i++);l=x[s in pads?e.charAt(i++):s];if(!l||(r=l(t,n,r))<0)return-1}else if(s!=n.charCodeAt(r++)){return-1}}return r}function M(t,e,n){var r=u.exec(e.slice(n));return r?(t.p=c[r[0].toLowerCase()],n+r[0].length):-1}function S(t,e,n){var r=d.exec(e.slice(n));return r?(t.w=p[r[0].toLowerCase()],n+r[0].length):-1}function z(t,e,n){var r=f.exec(e.slice(n));return r?(t.w=h[r[0].toLowerCase()],n+r[0].length):-1}function E(t,e,n){var r=g.exec(e.slice(n));return r?(t.m=y[r[0].toLowerCase()],n+r[0].length):-1}function C(t,e,n){var r=v.exec(e.slice(n));return r?(t.m=m[r[0].toLowerCase()],n+r[0].length):-1}function A(t,n,r){return k(t,e,n,r)}function R(t,e,r){return k(t,n,e,r)}function T(t,e,n){return k(t,r,e,n)}function N(t){return o[t.getDay()]}function P(t){return a[t.getDay()]}function L(t){return l[t.getMonth()]}function F(t){return s[t.getMonth()]}function D(t){return i[+(t.getHours()>=12)]}function I(t){return o[t.getUTCDay()]}function O(t){return a[t.getUTCDay()]}function B(t){return l[t.getUTCMonth()]}function q(t){return s[t.getUTCMonth()]}function H(t){return i[+(t.getUTCHours()>=12)]}return{format:function(t){var e=w(t+="",_);e.toString=function(){return t};return e},parse:function(t){var e=$(t+="",localDate);e.toString=function(){return t};return e},utcFormat:function(t){var e=w(t+="",b);e.toString=function(){return t};return e},utcParse:function(t){var e=$(t,utcDate);e.toString=function(){return t};return e}}}var pads={"-":"",_:" ",0:"0"},numberRe=/^\s*\d+/,percentRe=/^%/,requoteRe=/[\\^$*+?|[\]().{}]/g;function pad(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",a=i.length;return r+(a<n?new Array(n-a+1).join(e)+i:i)}function requote(t){return t.replace(requoteRe,"\\$&")}function formatRe(t){return new RegExp("^(?:"+t.map(requote).join("|")+")","i")}function formatLookup(t){var e={},n=-1,r=t.length;while(++n<r)e[t[n].toLowerCase()]=n;return e}function parseWeekdayNumberSunday(t,e,n){var r=numberRe.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function parseWeekdayNumberMonday(t,e,n){var r=numberRe.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function parseWeekNumberSunday(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function parseWeekNumberISO(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function parseWeekNumberMonday(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function parseFullYear(t,e,n){var r=numberRe.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function parseYear(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function parseZone(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function parseMonthNumber(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function parseDayOfMonth(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function parseDayOfYear(t,e,n){var r=numberRe.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function parseHour24(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function parseMinutes(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function parseSeconds(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function parseMilliseconds(t,e,n){var r=numberRe.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function parseMicroseconds(t,e,n){var r=numberRe.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function parseLiteralPercent(t,e,n){var r=percentRe.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function parseUnixTimestamp(t,e,n){var r=numberRe.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function parseUnixTimestampSeconds(t,e,n){var r=numberRe.exec(e.slice(n));return r?(t.Q=+r[0]*1e3,n+r[0].length):-1}function formatDayOfMonth(t,e){return pad(t.getDate(),e,2)}function formatHour24(t,e){return pad(t.getHours(),e,2)}function formatHour12(t,e){return pad(t.getHours()%12||12,e,2)}function formatDayOfYear(t,e){return pad(1+day.count(year(t),t),e,3)}function formatMilliseconds(t,e){return pad(t.getMilliseconds(),e,3)}function formatMicroseconds(t,e){return formatMilliseconds(t,e)+"000"}function formatMonthNumber(t,e){return pad(t.getMonth()+1,e,2)}function formatMinutes(t,e){return pad(t.getMinutes(),e,2)}function formatSeconds(t,e){return pad(t.getSeconds(),e,2)}function formatWeekdayNumberMonday(t){var e=t.getDay();return e===0?7:e}function formatWeekNumberSunday(t,e){return pad(sunday.count(year(t),t),e,2)}function formatWeekNumberISO(t,e){var n=t.getDay();t=n>=4||n===0?thursday(t):thursday.ceil(t);return pad(thursday.count(year(t),t)+(year(t).getDay()===4),e,2)}function formatWeekdayNumberSunday(t){return t.getDay()}function formatWeekNumberMonday(t,e){return pad(monday.count(year(t),t),e,2)}function formatYear(t,e){return pad(t.getFullYear()%100,e,2)}function formatFullYear(t,e){return pad(t.getFullYear()%1e4,e,4)}function formatZone(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+pad(e/60|0,"0",2)+pad(e%60,"0",2)}function formatUTCDayOfMonth(t,e){return pad(t.getUTCDate(),e,2)}function formatUTCHour24(t,e){return pad(t.getUTCHours(),e,2)}function formatUTCHour12(t,e){return pad(t.getUTCHours()%12||12,e,2)}function formatUTCDayOfYear(t,e){return pad(1+utcDay.count(utcYear(t),t),e,3)}function formatUTCMilliseconds(t,e){return pad(t.getUTCMilliseconds(),e,3)}function formatUTCMicroseconds(t,e){return formatUTCMilliseconds(t,e)+"000"}function formatUTCMonthNumber(t,e){return pad(t.getUTCMonth()+1,e,2)}function formatUTCMinutes(t,e){return pad(t.getUTCMinutes(),e,2)}function formatUTCSeconds(t,e){return pad(t.getUTCSeconds(),e,2)}function formatUTCWeekdayNumberMonday(t){var e=t.getUTCDay();return e===0?7:e}function formatUTCWeekNumberSunday(t,e){return pad(utcSunday.count(utcYear(t),t),e,2)}function formatUTCWeekNumberISO(t,e){var n=t.getUTCDay();t=n>=4||n===0?utcThursday(t):utcThursday.ceil(t);return pad(utcThursday.count(utcYear(t),t)+(utcYear(t).getUTCDay()===4),e,2)}function formatUTCWeekdayNumberSunday(t){return t.getUTCDay()}function formatUTCWeekNumberMonday(t,e){return pad(utcMonday.count(utcYear(t),t),e,2)}function formatUTCYear(t,e){return pad(t.getUTCFullYear()%100,e,2)}function formatUTCFullYear(t,e){return pad(t.getUTCFullYear()%1e4,e,4)}function formatUTCZone(){return"+0000"}function formatLiteralPercent(){return"%"}function formatUnixTimestamp(t){return+t}function formatUnixTimestampSeconds(t){return Math.floor(+t/1e3)}var locale;var timeFormat;var timeParse;var utcFormat;var utcParse;defaultLocale({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function defaultLocale(t){locale=formatLocale(t);timeFormat=locale.format;timeParse=locale.parse;utcFormat=locale.utcFormat;utcParse=locale.utcParse;return locale}var isoSpecifier="%Y-%m-%dT%H:%M:%S.%LZ";function formatIsoNative(t){return t.toISOString()}var formatIso=Date.prototype.toISOString?formatIsoNative:utcFormat(isoSpecifier);function parseIsoNative(t){var e=new Date(t);return isNaN(e)?null:e}var parseIso=+new Date("2000-01-01T00:00:00.000Z")?parseIsoNative:utcParse(isoSpecifier);var durationSecond=1e3,durationMinute=durationSecond*60,durationHour=durationMinute*60,durationDay=durationHour*24,durationWeek=durationDay*7,durationMonth=durationDay*30,durationYear=durationDay*365;function date(t){return new Date(t)}function number(t){return t instanceof Date?+t:+new Date(+t)}function calendar(t,e,n,r,i,a,o,s,l){var u=continuous(deinterpolateLinear,reinterpolate$1),c=u.invert,f=u.domain;var h=l(".%L"),d=l(":%S"),p=l("%I:%M"),v=l("%I %p"),m=l("%a %d"),g=l("%b %d"),y=l("%B"),_=l("%Y");var b=[[o,1,durationSecond],[o,5,5*durationSecond],[o,15,15*durationSecond],[o,30,30*durationSecond],[a,1,durationMinute],[a,5,5*durationMinute],[a,15,15*durationMinute],[a,30,30*durationMinute],[i,1,durationHour],[i,3,3*durationHour],[i,6,6*durationHour],[i,12,12*durationHour],[r,1,durationDay],[r,2,2*durationDay],[n,1,durationWeek],[e,1,durationMonth],[e,3,3*durationMonth],[t,1,durationYear]];function x(s){return(o(s)<s?h:a(s)<s?d:i(s)<s?p:r(s)<s?v:e(s)<s?n(s)<s?m:g:t(s)<s?y:_)(s)}function w(e,n,r,i){if(e==null)e=10;if(typeof e==="number"){var a=Math.abs(r-n)/e,o=bisector((function(t){return t[2]})).right(b,a);if(o===b.length){i=tickStep(n/durationYear,r/durationYear,e);e=t}else if(o){o=b[a/b[o-1][2]<b[o][2]/a?o-1:o];i=o[1];e=o[0]}else{i=Math.max(tickStep(n,r,e),1);e=s}}return i==null?e:e.every(i)}u.invert=function(t){return new Date(c(t))};u.domain=function(t){return arguments.length?f(map.call(t,number)):f().map(date)};u.ticks=function(t,e){var n=f(),r=n[0],i=n[n.length-1],a=i<r,o;if(a)o=r,r=i,i=o;o=w(t,r,i,e);o=o?o.range(r,i+1):[];return a?o.reverse():o};u.tickFormat=function(t,e){return e==null?x:l(e)};u.nice=function(t,e){var n=f();return(t=w(t,n[0],n[n.length-1],e))?f(nice(n,t)):u};u.copy=function(){return copy(u,calendar(t,e,n,r,i,a,o,s,l))};return u}function time(){return calendar(year,month,sunday,day,hour,minute,second,millisecond,timeFormat).domain([new Date(2e3,0,1),new Date(2e3,0,2)])}function utcTime(){return calendar(utcYear,utcMonth,utcSunday,utcDay,utcHour,utcMinute,second,millisecond,utcFormat).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)])}function colors(t){return t.match(/.{6}/g).map((function(t){return"#"+t}))}var category10=colors("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf");var category20b=colors("393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6");var category20c=colors("3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9");var category20=colors("1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5");var cubehelix=cubehelixLong(cubehelix$3(300,.5,0),cubehelix$3(-240,.5,1));var warm=cubehelixLong(cubehelix$3(-100,.75,.35),cubehelix$3(80,1.5,.8));var cool=cubehelixLong(cubehelix$3(260,.75,.35),cubehelix$3(80,1.5,.8));var rainbow=cubehelix$3();function rainbow$1(t){if(t<0||t>1)t-=Math.floor(t);var e=Math.abs(t-.5);rainbow.h=360*t-100;rainbow.s=1.5-1.5*e;rainbow.l=.8-.9*e;return rainbow+""}function ramp(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}var viridis=ramp(colors("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"));var magma=ramp(colors("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf"));var inferno=ramp(colors("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4"));var plasma=ramp(colors("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function sequential(t){var e=0,n=1,r=false;function i(i){var a=(i-e)/(n-e);return t(r?Math.max(0,Math.min(1,a)):a)}i.domain=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]};i.clamp=function(t){return arguments.length?(r=!!t,i):r};i.interpolator=function(e){return arguments.length?(t=e,i):t};i.copy=function(){return sequential(t).domain([e,n]).clamp(r)};return linearish(i)}function constant$2(t){return function e(){return t}}var abs=Math.abs;var atan2=Math.atan2;var cos=Math.cos;var max=Math.max;var min=Math.min;var sin=Math.sin;var sqrt=Math.sqrt;var epsilon$1=1e-12;var pi=Math.PI;var halfPi=pi/2;var tau=2*pi;function acos(t){return t>1?0:t<-1?pi:Math.acos(t)}function asin(t){return t>=1?halfPi:t<=-1?-halfPi:Math.asin(t)}function arcInnerRadius(t){return t.innerRadius}function arcOuterRadius(t){return t.outerRadius}function arcStartAngle(t){return t.startAngle}function arcEndAngle(t){return t.endAngle}function arcPadAngle(t){return t&&t.padAngle}function intersect(t,e,n,r,i,a,o,s){var l=n-t,u=r-e,c=o-i,f=s-a,h=(c*(e-a)-f*(t-i))/(f*l-c*u);return[t+h*l,e+h*u]}function cornerTangents(t,e,n,r,i,a,o){var s=t-n,l=e-r,u=(o?a:-a)/sqrt(s*s+l*l),c=u*l,f=-u*s,h=t+c,d=e+f,p=n+c,v=r+f,m=(h+p)/2,g=(d+v)/2,y=p-h,_=v-d,b=y*y+_*_,x=i-a,w=h*v-p*d,$=(_<0?-1:1)*sqrt(max(0,x*x*b-w*w)),k=(w*_-y*$)/b,M=(-w*y-_*$)/b,S=(w*_+y*$)/b,z=(-w*y+_*$)/b,E=k-m,C=M-g,A=S-m,R=z-g;if(E*E+C*C>A*A+R*R)k=S,M=z;return{cx:k,cy:M,x01:-c,y01:-f,x11:k*(i/x-1),y11:M*(i/x-1)}}function arc(){var t=arcInnerRadius,e=arcOuterRadius,n=constant$2(0),r=null,i=arcStartAngle,a=arcEndAngle,o=arcPadAngle,s=null;function l(){var l,u,c=+t.apply(this,arguments),f=+e.apply(this,arguments),h=i.apply(this,arguments)-halfPi,d=a.apply(this,arguments)-halfPi,p=abs(d-h),v=d>h;if(!s)s=l=path();if(f<c)u=f,f=c,c=u;if(!(f>epsilon$1))s.moveTo(0,0);else if(p>tau-epsilon$1){s.moveTo(f*cos(h),f*sin(h));s.arc(0,0,f,h,d,!v);if(c>epsilon$1){s.moveTo(c*cos(d),c*sin(d));s.arc(0,0,c,d,h,v)}}else{var m=h,g=d,y=h,_=d,b=p,x=p,w=o.apply(this,arguments)/2,$=w>epsilon$1&&(r?+r.apply(this,arguments):sqrt(c*c+f*f)),k=min(abs(f-c)/2,+n.apply(this,arguments)),M=k,S=k,z,E;if($>epsilon$1){var C=asin($/c*sin(w)),A=asin($/f*sin(w));if((b-=C*2)>epsilon$1)C*=v?1:-1,y+=C,_-=C;else b=0,y=_=(h+d)/2;if((x-=A*2)>epsilon$1)A*=v?1:-1,m+=A,g-=A;else x=0,m=g=(h+d)/2}var R=f*cos(m),T=f*sin(m),N=c*cos(_),P=c*sin(_);if(k>epsilon$1){var L=f*cos(g),F=f*sin(g),D=c*cos(y),I=c*sin(y);if(p<pi){var O=b>epsilon$1?intersect(R,T,D,I,L,F,N,P):[N,P],B=R-O[0],q=T-O[1],H=L-O[0],U=F-O[1],j=1/sin(acos((B*H+q*U)/(sqrt(B*B+q*q)*sqrt(H*H+U*U)))/2),Y=sqrt(O[0]*O[0]+O[1]*O[1]);M=min(k,(c-Y)/(j-1));S=min(k,(f-Y)/(j+1))}}if(!(x>epsilon$1))s.moveTo(R,T);else if(S>epsilon$1){z=cornerTangents(D,I,R,T,f,S,v);E=cornerTangents(L,F,N,P,f,S,v);s.moveTo(z.cx+z.x01,z.cy+z.y01);if(S<k)s.arc(z.cx,z.cy,S,atan2(z.y01,z.x01),atan2(E.y01,E.x01),!v);else{s.arc(z.cx,z.cy,S,atan2(z.y01,z.x01),atan2(z.y11,z.x11),!v);s.arc(0,0,f,atan2(z.cy+z.y11,z.cx+z.x11),atan2(E.cy+E.y11,E.cx+E.x11),!v);s.arc(E.cx,E.cy,S,atan2(E.y11,E.x11),atan2(E.y01,E.x01),!v)}}else s.moveTo(R,T),s.arc(0,0,f,m,g,!v);if(!(c>epsilon$1)||!(b>epsilon$1))s.lineTo(N,P);else if(M>epsilon$1){z=cornerTangents(N,P,L,F,c,-M,v);E=cornerTangents(R,T,D,I,c,-M,v);s.lineTo(z.cx+z.x01,z.cy+z.y01);if(M<k)s.arc(z.cx,z.cy,M,atan2(z.y01,z.x01),atan2(E.y01,E.x01),!v);else{s.arc(z.cx,z.cy,M,atan2(z.y01,z.x01),atan2(z.y11,z.x11),!v);s.arc(0,0,c,atan2(z.cy+z.y11,z.cx+z.x11),atan2(E.cy+E.y11,E.cx+E.x11),v);s.arc(E.cx,E.cy,M,atan2(E.y11,E.x11),atan2(E.y01,E.x01),!v)}}else s.arc(0,0,c,_,y,v)}s.closePath();if(l)return s=null,l+""||null}l.centroid=function(){var n=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-pi/2;return[cos(r)*n,sin(r)*n]};l.innerRadius=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),l):t};l.outerRadius=function(t){return arguments.length?(e=typeof t==="function"?t:constant$2(+t),l):e};l.cornerRadius=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(+t),l):n};l.padRadius=function(t){return arguments.length?(r=t==null?null:typeof t==="function"?t:constant$2(+t),l):r};l.startAngle=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(+t),l):i};l.endAngle=function(t){return arguments.length?(a=typeof t==="function"?t:constant$2(+t),l):a};l.padAngle=function(t){return arguments.length?(o=typeof t==="function"?t:constant$2(+t),l):o};l.context=function(t){return arguments.length?(s=t==null?null:t,l):s};return l}function Linear(t){this._context=t}Linear.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}}};function curveLinear(t){return new Linear(t)}function x$1(t){return t[0]}function y$1(t){return t[1]}function line(){var t=x$1,e=y$1,n=constant$2(true),r=null,i=curveLinear,a=null;function o(o){var s,l=o.length,u,c=false,f;if(r==null)a=i(f=path());for(s=0;s<=l;++s){if(!(s<l&&n(u=o[s],s,o))===c){if(c=!c)a.lineStart();else a.lineEnd()}if(c)a.point(+t(u,s,o),+e(u,s,o))}if(f)return a=null,f+""||null}o.x=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),o):t};o.y=function(t){return arguments.length?(e=typeof t==="function"?t:constant$2(+t),o):e};o.defined=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(!!t),o):n};o.curve=function(t){return arguments.length?(i=t,r!=null&&(a=i(r)),o):i};o.context=function(t){return arguments.length?(t==null?r=a=null:a=i(r=t),o):r};return o}function area(){var t=x$1,e=null,n=constant$2(0),r=y$1,i=constant$2(true),a=null,o=curveLinear,s=null;function l(l){var u,c,f,h=l.length,d,p=false,v,m=new Array(h),g=new Array(h);if(a==null)s=o(v=path());for(u=0;u<=h;++u){if(!(u<h&&i(d=l[u],u,l))===p){if(p=!p){c=u;s.areaStart();s.lineStart()}else{s.lineEnd();s.lineStart();for(f=u-1;f>=c;--f){s.point(m[f],g[f])}s.lineEnd();s.areaEnd()}}if(p){m[u]=+t(d,u,l),g[u]=+n(d,u,l);s.point(e?+e(d,u,l):m[u],r?+r(d,u,l):g[u])}}if(v)return s=null,v+""||null}function u(){return line().defined(i).curve(o).context(a)}l.x=function(n){return arguments.length?(t=typeof n==="function"?n:constant$2(+n),e=null,l):t};l.x0=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),l):t};l.x1=function(t){return arguments.length?(e=t==null?null:typeof t==="function"?t:constant$2(+t),l):e};l.y=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(+t),r=null,l):n};l.y0=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(+t),l):n};l.y1=function(t){return arguments.length?(r=t==null?null:typeof t==="function"?t:constant$2(+t),l):r};l.lineX0=l.lineY0=function(){return u().x(t).y(n)};l.lineY1=function(){return u().x(t).y(r)};l.lineX1=function(){return u().x(e).y(n)};l.defined=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(!!t),l):i};l.curve=function(t){return arguments.length?(o=t,a!=null&&(s=o(a)),l):o};l.context=function(t){return arguments.length?(t==null?a=s=null:s=o(a=t),l):a};return l}function descending$1(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}function identity$2(t){return t}function pie(){var t=identity$2,e=descending$1,n=null,r=constant$2(0),i=constant$2(tau),a=constant$2(0);function o(o){var s,l=o.length,u,c,f=0,h=new Array(l),d=new Array(l),p=+r.apply(this,arguments),v=Math.min(tau,Math.max(-tau,i.apply(this,arguments)-p)),m,g=Math.min(Math.abs(v)/l,a.apply(this,arguments)),y=g*(v<0?-1:1),_;for(s=0;s<l;++s){if((_=d[h[s]=s]=+t(o[s],s,o))>0){f+=_}}if(e!=null)h.sort((function(t,n){return e(d[t],d[n])}));else if(n!=null)h.sort((function(t,e){return n(o[t],o[e])}));for(s=0,c=f?(v-l*y)/f:0;s<l;++s,p=m){u=h[s],_=d[u],m=p+(_>0?_*c:0)+y,d[u]={data:o[u],index:s,value:_,startAngle:p,endAngle:m,padAngle:g}}return d}o.value=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),o):t};o.sortValues=function(t){return arguments.length?(e=t,n=null,o):e};o.sort=function(t){return arguments.length?(n=t,e=null,o):n};o.startAngle=function(t){return arguments.length?(r=typeof t==="function"?t:constant$2(+t),o):r};o.endAngle=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(+t),o):i};o.padAngle=function(t){return arguments.length?(a=typeof t==="function"?t:constant$2(+t),o):a};return o}var curveRadialLinear=curveRadial$1(curveLinear);function Radial(t){this._curve=t}Radial.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};function curveRadial$1(t){function e(e){return new Radial(t(e))}e._curve=t;return e}function lineRadial(t){var e=t.curve;t.angle=t.x,delete t.x;t.radius=t.y,delete t.y;t.curve=function(t){return arguments.length?e(curveRadial$1(t)):e()._curve};return t}function lineRadial$1(){return lineRadial(line().curve(curveRadialLinear))}function areaRadial(){var t=area().curve(curveRadialLinear),e=t.curve,n=t.lineX0,r=t.lineX1,i=t.lineY0,a=t.lineY1;t.angle=t.x,delete t.x;t.startAngle=t.x0,delete t.x0;t.endAngle=t.x1,delete t.x1;t.radius=t.y,delete t.y;t.innerRadius=t.y0,delete t.y0;t.outerRadius=t.y1,delete t.y1;t.lineStartAngle=function(){return lineRadial(n())},delete t.lineX0;t.lineEndAngle=function(){return lineRadial(r())},delete t.lineX1;t.lineInnerRadius=function(){return lineRadial(i())},delete t.lineY0;t.lineOuterRadius=function(){return lineRadial(a())},delete t.lineY1;t.curve=function(t){return arguments.length?e(curveRadial$1(t)):e()._curve};return t}function pointRadial(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}var slice=Array.prototype.slice;function linkSource(t){return t.source}function linkTarget(t){return t.target}function link(t){var e=linkSource,n=linkTarget,r=x$1,i=y$1,a=null;function o(){var o,s=slice.call(arguments),l=e.apply(this,s),u=n.apply(this,s);if(!a)a=o=path();t(a,+r.apply(this,(s[0]=l,s)),+i.apply(this,s),+r.apply(this,(s[0]=u,s)),+i.apply(this,s));if(o)return a=null,o+""||null}o.source=function(t){return arguments.length?(e=t,o):e};o.target=function(t){return arguments.length?(n=t,o):n};o.x=function(t){return arguments.length?(r=typeof t==="function"?t:constant$2(+t),o):r};o.y=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(+t),o):i};o.context=function(t){return arguments.length?(a=t==null?null:t,o):a};return o}function curveHorizontal(t,e,n,r,i){t.moveTo(e,n);t.bezierCurveTo(e=(e+r)/2,n,e,i,r,i)}function curveVertical(t,e,n,r,i){t.moveTo(e,n);t.bezierCurveTo(e,n=(n+i)/2,r,n,r,i)}function curveRadial(t,e,n,r,i){var a=pointRadial(e,n),o=pointRadial(e,n=(n+i)/2),s=pointRadial(r,n),l=pointRadial(r,i);t.moveTo(a[0],a[1]);t.bezierCurveTo(o[0],o[1],s[0],s[1],l[0],l[1])}function linkHorizontal(){return link(curveHorizontal)}function linkVertical(){return link(curveVertical)}function linkRadial(){var t=link(curveRadial);t.angle=t.x,delete t.x;t.radius=t.y,delete t.y;return t}var circle={draw:function(t,e){var n=Math.sqrt(e/pi);t.moveTo(n,0);t.arc(0,0,n,0,tau)}};var cross={draw:function(t,e){var n=Math.sqrt(e/5)/2;t.moveTo(-3*n,-n);t.lineTo(-n,-n);t.lineTo(-n,-3*n);t.lineTo(n,-3*n);t.lineTo(n,-n);t.lineTo(3*n,-n);t.lineTo(3*n,n);t.lineTo(n,n);t.lineTo(n,3*n);t.lineTo(-n,3*n);t.lineTo(-n,n);t.lineTo(-3*n,n);t.closePath()}};var tan30=Math.sqrt(1/3),tan30_2=tan30*2;var diamond={draw:function(t,e){var n=Math.sqrt(e/tan30_2),r=n*tan30;t.moveTo(0,-n);t.lineTo(r,0);t.lineTo(0,n);t.lineTo(-r,0);t.closePath()}};var ka=.8908130915292852,kr=Math.sin(pi/10)/Math.sin(7*pi/10),kx=Math.sin(tau/10)*kr,ky=-Math.cos(tau/10)*kr;var star={draw:function(t,e){var n=Math.sqrt(e*ka),r=kx*n,i=ky*n;t.moveTo(0,-n);t.lineTo(r,i);for(var a=1;a<5;++a){var o=tau*a/5,s=Math.cos(o),l=Math.sin(o);t.lineTo(l*n,-s*n);t.lineTo(s*r-l*i,l*r+s*i)}t.closePath()}};var square={draw:function(t,e){var n=Math.sqrt(e),r=-n/2;t.rect(r,r,n,n)}};var sqrt3=Math.sqrt(3);var triangle={draw:function(t,e){var n=-Math.sqrt(e/(sqrt3*3));t.moveTo(0,n*2);t.lineTo(-sqrt3*n,-n);t.lineTo(sqrt3*n,-n);t.closePath()}};var c=-.5,s=Math.sqrt(3)/2,k=1/Math.sqrt(12),a=(k/2+1)*3;var wye={draw:function(t,e){var n=Math.sqrt(e/a),r=n/2,i=n*k,o=r,l=n*k+n,u=-o,f=l;t.moveTo(r,i);t.lineTo(o,l);t.lineTo(u,f);t.lineTo(c*r-s*i,s*r+c*i);t.lineTo(c*o-s*l,s*o+c*l);t.lineTo(c*u-s*f,s*u+c*f);t.lineTo(c*r+s*i,c*i-s*r);t.lineTo(c*o+s*l,c*l-s*o);t.lineTo(c*u+s*f,c*f-s*u);t.closePath()}};var symbols=[circle,cross,diamond,square,star,triangle,wye];function symbol(){var t=constant$2(circle),e=constant$2(64),n=null;function r(){var r;if(!n)n=r=path();t.apply(this,arguments).draw(n,+e.apply(this,arguments));if(r)return n=null,r+""||null}r.type=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(e),r):t};r.size=function(t){return arguments.length?(e=typeof t==="function"?t:constant$2(+t),r):e};r.context=function(t){return arguments.length?(n=t==null?null:t,r):n};return r}function noop(){}function point$3(t,e,n){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+n)/6)}function Basis(t){this._context=t}Basis.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN;this._point=0},lineEnd:function(){switch(this._point){case 3:point$3(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:point$3(this,t,e);break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e}};function basis(t){return new Basis(t)}function BasisClosed(t){this._context=t}BasisClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN;this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2);this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3);this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3);this._context.closePath();break}case 3:{this.point(this._x2,this._y2);this.point(this._x3,this._y3);this.point(this._x4,this._y4);break}}},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._x2=t,this._y2=e;break;case 1:this._point=2;this._x3=t,this._y3=e;break;case 2:this._point=3;this._x4=t,this._y4=e;this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:point$3(this,t,e);break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e}};function basisClosed(t){return new BasisClosed(t)}function BasisOpen(t){this._context=t}BasisOpen.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN;this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:point$3(this,t,e);break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e}};function basisOpen(t){return new BasisOpen(t)}function Bundle(t,e){this._basis=new Basis(t);this._beta=e}Bundle.prototype={lineStart:function(){this._x=[];this._y=[];this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,n=t.length-1;if(n>0){var r=t[0],i=e[0],a=t[n]-r,o=e[n]-i,s=-1,l;while(++s<=n){l=s/n;this._basis.point(this._beta*t[s]+(1-this._beta)*(r+l*a),this._beta*e[s]+(1-this._beta)*(i+l*o))}}this._x=this._y=null;this._basis.lineEnd()},point:function(t,e){this._x.push(+t);this._y.push(+e)}};var bundle=function t(e){function n(t){return e===1?new Basis(t):new Bundle(t,e)}n.beta=function(e){return t(+e)};return n}(.85);function point$2(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function Cardinal(t,e){this._context=t;this._k=(1-e)/6}Cardinal.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:point$2(this,this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;this._x1=t,this._y1=e;break;case 2:this._point=3;default:point$2(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var cardinal=function t(e){function n(t){return new Cardinal(t,e)}n.tension=function(e){return t(+e)};return n}(0);function CardinalClosed(t,e){this._context=t;this._k=(1-e)/6}CardinalClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN;this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3);this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3);this._context.closePath();break}case 3:{this.point(this._x3,this._y3);this.point(this._x4,this._y4);this.point(this._x5,this._y5);break}}},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._x3=t,this._y3=e;break;case 1:this._point=2;this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3;this._x5=t,this._y5=e;break;default:point$2(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var cardinalClosed=function t(e){function n(t){return new CardinalClosed(t,e)}n.tension=function(e){return t(+e)};return n}(0);function CardinalOpen(t,e){this._context=t;this._k=(1-e)/6}CardinalOpen.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:point$2(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var cardinalOpen=function t(e){function n(t){return new CardinalOpen(t,e)}n.tension=function(e){return t(+e)};return n}(0);function point$1(t,e,n){var r=t._x1,i=t._y1,a=t._x2,o=t._y2;if(t._l01_a>epsilon$1){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l;i=(i*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>epsilon$1){var u=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,c=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*u+t._x1*t._l23_2a-e*t._l12_2a)/c;o=(o*u+t._y1*t._l23_2a-n*t._l12_2a)/c}t._context.bezierCurveTo(r,i,a,o,t._x2,t._y2)}function CatmullRom(t,e){this._context=t;this._alpha=e}CatmullRom.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;if(this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:point$1(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a;this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a;this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var catmullRom=function t(e){function n(t){return e?new CatmullRom(t,e):new Cardinal(t,0)}n.alpha=function(e){return t(+e)};return n}(.5);function CatmullRomClosed(t,e){this._context=t;this._alpha=e}CatmullRomClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN;this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3);this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3);this._context.closePath();break}case 3:{this.point(this._x3,this._y3);this.point(this._x4,this._y4);this.point(this._x5,this._y5);break}}},point:function(t,e){t=+t,e=+e;if(this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;this._x3=t,this._y3=e;break;case 1:this._point=2;this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3;this._x5=t,this._y5=e;break;default:point$1(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a;this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a;this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var catmullRomClosed=function t(e){function n(t){return e?new CatmullRomClosed(t,e):new CardinalClosed(t,0)}n.alpha=function(e){return t(+e)};return n}(.5);function CatmullRomOpen(t,e){this._context=t;this._alpha=e}CatmullRomOpen.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;if(this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:point$1(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a;this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a;this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var catmullRomOpen=function t(e){function n(t){return e?new CatmullRomOpen(t,e):new CardinalOpen(t,0)}n.alpha=function(e){return t(+e)};return n}(.5);function LinearClosed(t){this._context=t}LinearClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._point=0},lineEnd:function(){if(this._point)this._context.closePath()},point:function(t,e){t=+t,e=+e;if(this._point)this._context.lineTo(t,e);else this._point=1,this._context.moveTo(t,e)}};function linearClosed(t){return new LinearClosed(t)}function sign(t){return t<0?-1:1}function slope3(t,e,n){var r=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(r||i<0&&-0),o=(n-t._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(sign(a)+sign(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function slope2(t,e){var n=t._x1-t._x0;return n?(3*(t._y1-t._y0)/n-e)/2:e}function point(t,e,n){var r=t._x0,i=t._y0,a=t._x1,o=t._y1,s=(a-r)/3;t._context.bezierCurveTo(r+s,i+s*e,a-s,o-s*n,a,o)}function MonotoneX(t){this._context=t}MonotoneX.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN;this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:point(this,this._t0,slope2(this,this._t0));break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){var n=NaN;t=+t,e=+e;if(t===this._x1&&e===this._y1)return;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;point(this,slope2(this,n=slope3(this,t,e)),n);break;default:point(this,this._t0,n=slope3(this,t,e));break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e;this._t0=n}};function MonotoneY(t){this._context=new ReflectContext(t)}(MonotoneY.prototype=Object.create(MonotoneX.prototype)).point=function(t,e){MonotoneX.prototype.point.call(this,e,t)};function ReflectContext(t){this._context=t}ReflectContext.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,n,r,i,a){this._context.bezierCurveTo(e,t,r,n,a,i)}};function monotoneX(t){return new MonotoneX(t)}function monotoneY(t){return new MonotoneY(t)}function Natural(t){this._context=t}Natural.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[];this._y=[]},lineEnd:function(){var t=this._x,e=this._y,n=t.length;if(n){this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]);if(n===2){this._context.lineTo(t[1],e[1])}else{var r=controlPoints(t),i=controlPoints(e);for(var a=0,o=1;o<n;++a,++o){this._context.bezierCurveTo(r[0][a],i[0][a],r[1][a],i[1][a],t[o],e[o])}}}if(this._line||this._line!==0&&n===1)this._context.closePath();this._line=1-this._line;this._x=this._y=null},point:function(t,e){this._x.push(+t);this._y.push(+e)}};function controlPoints(t){var e,n=t.length-1,r,i=new Array(n),a=new Array(n),o=new Array(n);i[0]=0,a[0]=2,o[0]=t[0]+2*t[1];for(e=1;e<n-1;++e)i[e]=1,a[e]=4,o[e]=4*t[e]+2*t[e+1];i[n-1]=2,a[n-1]=7,o[n-1]=8*t[n-1]+t[n];for(e=1;e<n;++e)r=i[e]/a[e-1],a[e]-=r,o[e]-=r*o[e-1];i[n-1]=o[n-1]/a[n-1];for(e=n-2;e>=0;--e)i[e]=(o[e]-i[e+1])/a[e];a[n-1]=(t[n]+i[n-1])/2;for(e=0;e<n-1;++e)a[e]=2*t[e+1]-i[e+1];return[i,a]}function natural(t){return new Natural(t)}function Step(t,e){this._context=t;this._t=e}Step.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN;this._point=0},lineEnd:function(){if(0<this._t&&this._t<1&&this._point===2)this._context.lineTo(this._x,this._y);if(this._line||this._line!==0&&this._point===1)this._context.closePath();if(this._line>=0)this._t=1-this._t,this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0){this._context.lineTo(this._x,e);this._context.lineTo(t,e)}else{var n=this._x*(1-this._t)+t*this._t;this._context.lineTo(n,this._y);this._context.lineTo(n,e)}break}}this._x=t,this._y=e}};function step(t){return new Step(t,.5)}function stepBefore(t){return new Step(t,0)}function stepAfter(t){return new Step(t,1)}function none$1(t,e){if(!((o=t.length)>1))return;for(var n=1,r,i,a=t[e[0]],o,s=a.length;n<o;++n){i=a,a=t[e[n]];for(r=0;r<s;++r){a[r][1]+=a[r][0]=isNaN(i[r][1])?i[r][0]:i[r][1]}}}function none(t){var e=t.length,n=new Array(e);while(--e>=0)n[e]=e;return n}function stackValue(t,e){return t[e]}function stack(){var t=constant$2([]),e=none,n=none$1,r=stackValue;function i(i){var a=t.apply(this,arguments),o,s=i.length,l=a.length,u=new Array(l),c;for(o=0;o<l;++o){for(var f=a[o],h=u[o]=new Array(s),d=0,p;d<s;++d){h[d]=p=[0,+r(i[d],f,d,i)];p.data=i[d]}h.key=f}for(o=0,c=e(u);o<l;++o){u[c[o]].index=o}n(u,c);return u}i.keys=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(slice.call(e)),i):t};i.value=function(t){return arguments.length?(r=typeof t==="function"?t:constant$2(+t),i):r};i.order=function(t){return arguments.length?(e=t==null?none:typeof t==="function"?t:constant$2(slice.call(t)),i):e};i.offset=function(t){return arguments.length?(n=t==null?none$1:t,i):n};return i}function expand(t,e){if(!((r=t.length)>0))return;for(var n,r,i=0,a=t[0].length,o;i<a;++i){for(o=n=0;n<r;++n)o+=t[n][i][1]||0;if(o)for(n=0;n<r;++n)t[n][i][1]/=o}none$1(t,e)}function diverging(t,e){if(!((l=t.length)>1))return;for(var n,r=0,i,a,o,s,l,u=t[e[0]].length;r<u;++r){for(o=s=0,n=0;n<l;++n){if((a=(i=t[e[n]][r])[1]-i[0])>=0){i[0]=o,i[1]=o+=a}else if(a<0){i[1]=s,i[0]=s+=a}else{i[0]=o}}}}function silhouette(t,e){if(!((i=t.length)>0))return;for(var n=0,r=t[e[0]],i,a=r.length;n<a;++n){for(var o=0,s=0;o<i;++o)s+=t[o][n][1]||0;r[n][1]+=r[n][0]=-s/2}none$1(t,e)}function wiggle(t,e){if(!((o=t.length)>0)||!((a=(i=t[e[0]]).length)>0))return;for(var n=0,r=1,i,a,o;r<a;++r){for(var s=0,l=0,u=0;s<o;++s){var c=t[e[s]],f=c[r][1]||0,h=c[r-1][1]||0,d=(f-h)/2;for(var p=0;p<s;++p){var v=t[e[p]],m=v[r][1]||0,g=v[r-1][1]||0;d+=m-g}l+=f,u+=d*f}i[r-1][1]+=i[r-1][0]=n;if(l)n-=u/l}i[r-1][1]+=i[r-1][0]=n;none$1(t,e)}function ascending(t){var e=t.map(sum);return none(t).sort((function(t,n){return e[t]-e[n]}))}function sum(t){var e=0,n=-1,r=t.length,i;while(++n<r)if(i=+t[n][1])e+=i;return e}function descending(t){return ascending(t).reverse()}function insideOut(t){var e=t.length,n,r,i=t.map(sum),a=none(t).sort((function(t,e){return i[e]-i[t]})),o=0,s=0,l=[],u=[];for(n=0;n<e;++n){r=a[n];if(o<s){o+=i[r];l.push(r)}else{s+=i[r];u.push(r)}}return u.reverse().concat(l)}function reverse$1(t){return none(t).reverse()}function constant$1(t){return function(){return t}}function x(t){return t[0]}function y(t){return t[1]}function RedBlackTree(){this._=null}function RedBlackNode(t){t.U=t.C=t.L=t.R=t.P=t.N=null}RedBlackTree.prototype={constructor:RedBlackTree,insert:function(t,e){var n,r,i;if(t){e.P=t;e.N=t.N;if(t.N)t.N.P=e;t.N=e;if(t.R){t=t.R;while(t.L)t=t.L;t.L=e}else{t.R=e}n=t}else if(this._){t=RedBlackFirst(this._);e.P=null;e.N=t;t.P=t.L=e;n=t}else{e.P=e.N=null;this._=e;n=null}e.L=e.R=null;e.U=n;e.C=true;t=e;while(n&&n.C){r=n.U;if(n===r.L){i=r.R;if(i&&i.C){n.C=i.C=false;r.C=true;t=r}else{if(t===n.R){RedBlackRotateLeft(this,n);t=n;n=t.U}n.C=false;r.C=true;RedBlackRotateRight(this,r)}}else{i=r.L;if(i&&i.C){n.C=i.C=false;r.C=true;t=r}else{if(t===n.L){RedBlackRotateRight(this,n);t=n;n=t.U}n.C=false;r.C=true;RedBlackRotateLeft(this,r)}}n=t.U}this._.C=false},remove:function(t){if(t.N)t.N.P=t.P;if(t.P)t.P.N=t.N;t.N=t.P=null;var e=t.U,n,r=t.L,i=t.R,a,o;if(!r)a=i;else if(!i)a=r;else a=RedBlackFirst(i);if(e){if(e.L===t)e.L=a;else e.R=a}else{this._=a}if(r&&i){o=a.C;a.C=t.C;a.L=r;r.U=a;if(a!==i){e=a.U;a.U=t.U;t=a.R;e.L=t;a.R=i;i.U=a}else{a.U=e;e=a;t=a.R}}else{o=t.C;t=a}if(t)t.U=e;if(o)return;if(t&&t.C){t.C=false;return}do{if(t===this._)break;if(t===e.L){n=e.R;if(n.C){n.C=false;e.C=true;RedBlackRotateLeft(this,e);n=e.R}if(n.L&&n.L.C||n.R&&n.R.C){if(!n.R||!n.R.C){n.L.C=false;n.C=true;RedBlackRotateRight(this,n);n=e.R}n.C=e.C;e.C=n.R.C=false;RedBlackRotateLeft(this,e);t=this._;break}}else{n=e.L;if(n.C){n.C=false;e.C=true;RedBlackRotateRight(this,e);n=e.L}if(n.L&&n.L.C||n.R&&n.R.C){if(!n.L||!n.L.C){n.R.C=false;n.C=true;RedBlackRotateLeft(this,n);n=e.L}n.C=e.C;e.C=n.L.C=false;RedBlackRotateRight(this,e);t=this._;break}}n.C=true;t=e;e=e.U}while(!t.C);if(t)t.C=false}};function RedBlackRotateLeft(t,e){var n=e,r=e.R,i=n.U;if(i){if(i.L===n)i.L=r;else i.R=r}else{t._=r}r.U=i;n.U=r;n.R=r.L;if(n.R)n.R.U=n;r.L=n}function RedBlackRotateRight(t,e){var n=e,r=e.L,i=n.U;if(i){if(i.L===n)i.L=r;else i.R=r}else{t._=r}r.U=i;n.U=r;n.L=r.R;if(n.L)n.L.U=n;r.R=n}function RedBlackFirst(t){while(t.L)t=t.L;return t}function createEdge(t,e,n,r){var i=[null,null],a=edges.push(i)-1;i.left=t;i.right=e;if(n)setEdgeEnd(i,t,e,n);if(r)setEdgeEnd(i,e,t,r);cells[t.index].halfedges.push(a);cells[e.index].halfedges.push(a);return i}function createBorderEdge(t,e,n){var r=[e,n];r.left=t;return r}function setEdgeEnd(t,e,n,r){if(!t[0]&&!t[1]){t[0]=r;t.left=e;t.right=n}else if(t.left===n){t[1]=r}else{t[0]=r}}function clipEdge(t,e,n,r,i){var a=t[0],o=t[1],s=a[0],l=a[1],u=o[0],c=o[1],f=0,h=1,d=u-s,p=c-l,v;v=e-s;if(!d&&v>0)return;v/=d;if(d<0){if(v<f)return;if(v<h)h=v}else if(d>0){if(v>h)return;if(v>f)f=v}v=r-s;if(!d&&v<0)return;v/=d;if(d<0){if(v>h)return;if(v>f)f=v}else if(d>0){if(v<f)return;if(v<h)h=v}v=n-l;if(!p&&v>0)return;v/=p;if(p<0){if(v<f)return;if(v<h)h=v}else if(p>0){if(v>h)return;if(v>f)f=v}v=i-l;if(!p&&v<0)return;v/=p;if(p<0){if(v>h)return;if(v>f)f=v}else if(p>0){if(v<f)return;if(v<h)h=v}if(!(f>0)&&!(h<1))return true;if(f>0)t[0]=[s+f*d,l+f*p];if(h<1)t[1]=[s+h*d,l+h*p];return true}function connectEdge(t,e,n,r,i){var a=t[1];if(a)return true;var o=t[0],s=t.left,l=t.right,u=s[0],c=s[1],f=l[0],h=l[1],d=(u+f)/2,p=(c+h)/2,v,m;if(h===c){if(d<e||d>=r)return;if(u>f){if(!o)o=[d,n];else if(o[1]>=i)return;a=[d,i]}else{if(!o)o=[d,i];else if(o[1]<n)return;a=[d,n]}}else{v=(u-f)/(h-c);m=p-v*d;if(v<-1||v>1){if(u>f){if(!o)o=[(n-m)/v,n];else if(o[1]>=i)return;a=[(i-m)/v,i]}else{if(!o)o=[(i-m)/v,i];else if(o[1]<n)return;a=[(n-m)/v,n]}}else{if(c<h){if(!o)o=[e,v*e+m];else if(o[0]>=r)return;a=[r,v*r+m]}else{if(!o)o=[r,v*r+m];else if(o[0]<e)return;a=[e,v*e+m]}}}t[0]=o;t[1]=a;return true}function clipEdges(t,e,n,r){var i=edges.length,a;while(i--){if(!connectEdge(a=edges[i],t,e,n,r)||!clipEdge(a,t,e,n,r)||!(Math.abs(a[0][0]-a[1][0])>epsilon||Math.abs(a[0][1]-a[1][1])>epsilon)){delete edges[i]}}}function createCell(t){return cells[t.index]={site:t,halfedges:[]}}function cellHalfedgeAngle(t,e){var n=t.site,r=e.left,i=e.right;if(n===i)i=r,r=n;if(i)return Math.atan2(i[1]-r[1],i[0]-r[0]);if(n===r)r=e[1],i=e[0];else r=e[0],i=e[1];return Math.atan2(r[0]-i[0],i[1]-r[1])}function cellHalfedgeStart(t,e){return e[+(e.left!==t.site)]}function cellHalfedgeEnd(t,e){return e[+(e.left===t.site)]}function sortCellHalfedges(){for(var t=0,e=cells.length,n,r,i,a;t<e;++t){if((n=cells[t])&&(a=(r=n.halfedges).length)){var o=new Array(a),s=new Array(a);for(i=0;i<a;++i)o[i]=i,s[i]=cellHalfedgeAngle(n,edges[r[i]]);o.sort((function(t,e){return s[e]-s[t]}));for(i=0;i<a;++i)s[i]=r[o[i]];for(i=0;i<a;++i)r[i]=s[i]}}}function clipCells(t,e,n,r){var i=cells.length,a,o,s,l,u,c,f,h,d,p,v,m,g=true;for(a=0;a<i;++a){if(o=cells[a]){s=o.site;u=o.halfedges;l=u.length;while(l--){if(!edges[u[l]]){u.splice(l,1)}}l=0,c=u.length;while(l<c){p=cellHalfedgeEnd(o,edges[u[l]]),v=p[0],m=p[1];f=cellHalfedgeStart(o,edges[u[++l%c]]),h=f[0],d=f[1];if(Math.abs(v-h)>epsilon||Math.abs(m-d)>epsilon){u.splice(l,0,edges.push(createBorderEdge(s,p,Math.abs(v-t)<epsilon&&r-m>epsilon?[t,Math.abs(h-t)<epsilon?d:r]:Math.abs(m-r)<epsilon&&n-v>epsilon?[Math.abs(d-r)<epsilon?h:n,r]:Math.abs(v-n)<epsilon&&m-e>epsilon?[n,Math.abs(h-n)<epsilon?d:e]:Math.abs(m-e)<epsilon&&v-t>epsilon?[Math.abs(d-e)<epsilon?h:t,e]:null))-1);++c}}if(c)g=false}}if(g){var y,_,b,x=Infinity;for(a=0,g=null;a<i;++a){if(o=cells[a]){s=o.site;y=s[0]-t;_=s[1]-e;b=y*y+_*_;if(b<x)x=b,g=o}}if(g){var w=[t,e],$=[t,r],k=[n,r],M=[n,e];g.halfedges.push(edges.push(createBorderEdge(s=g.site,w,$))-1,edges.push(createBorderEdge(s,$,k))-1,edges.push(createBorderEdge(s,k,M))-1,edges.push(createBorderEdge(s,M,w))-1)}}for(a=0;a<i;++a){if(o=cells[a]){if(!o.halfedges.length){delete cells[a]}}}}var circlePool=[];var firstCircle;function Circle(){RedBlackNode(this);this.x=this.y=this.arc=this.site=this.cy=null}function attachCircle(t){var e=t.P,n=t.N;if(!e||!n)return;var r=e.site,i=t.site,a=n.site;if(r===a)return;var o=i[0],s=i[1],l=r[0]-o,u=r[1]-s,c=a[0]-o,f=a[1]-s;var h=2*(l*f-u*c);if(h>=-epsilon2)return;var d=l*l+u*u,p=c*c+f*f,v=(f*d-u*p)/h,m=(l*p-c*d)/h;var g=circlePool.pop()||new Circle;g.arc=t;g.site=i;g.x=v+o;g.y=(g.cy=m+s)+Math.sqrt(v*v+m*m);t.circle=g;var y=null,_=circles._;while(_){if(g.y<_.y||g.y===_.y&&g.x<=_.x){if(_.L)_=_.L;else{y=_.P;break}}else{if(_.R)_=_.R;else{y=_;break}}}circles.insert(y,g);if(!y)firstCircle=g}function detachCircle(t){var e=t.circle;if(e){if(!e.P)firstCircle=e.N;circles.remove(e);circlePool.push(e);RedBlackNode(e);t.circle=null}}var beachPool=[];function Beach(){RedBlackNode(this);this.edge=this.site=this.circle=null}function createBeach(t){var e=beachPool.pop()||new Beach;e.site=t;return e}function detachBeach(t){detachCircle(t);beaches.remove(t);beachPool.push(t);RedBlackNode(t)}function removeBeach(t){var e=t.circle,n=e.x,r=e.cy,i=[n,r],a=t.P,o=t.N,s=[t];detachBeach(t);var l=a;while(l.circle&&Math.abs(n-l.circle.x)<epsilon&&Math.abs(r-l.circle.cy)<epsilon){a=l.P;s.unshift(l);detachBeach(l);l=a}s.unshift(l);detachCircle(l);var u=o;while(u.circle&&Math.abs(n-u.circle.x)<epsilon&&Math.abs(r-u.circle.cy)<epsilon){o=u.N;s.push(u);detachBeach(u);u=o}s.push(u);detachCircle(u);var c=s.length,f;for(f=1;f<c;++f){u=s[f];l=s[f-1];setEdgeEnd(u.edge,l.site,u.site,i)}l=s[0];u=s[c-1];u.edge=createEdge(l.site,u.site,null,i);attachCircle(l);attachCircle(u)}function addBeach(t){var e=t[0],n=t[1],r,i,a,o,s=beaches._;while(s){a=leftBreakPoint(s,n)-e;if(a>epsilon)s=s.L;else{o=e-rightBreakPoint(s,n);if(o>epsilon){if(!s.R){r=s;break}s=s.R}else{if(a>-epsilon){r=s.P;i=s}else if(o>-epsilon){r=s;i=s.N}else{r=i=s}break}}}createCell(t);var l=createBeach(t);beaches.insert(r,l);if(!r&&!i)return;if(r===i){detachCircle(r);i=createBeach(r.site);beaches.insert(l,i);l.edge=i.edge=createEdge(r.site,l.site);attachCircle(r);attachCircle(i);return}if(!i){l.edge=createEdge(r.site,l.site);return}detachCircle(r);detachCircle(i);var u=r.site,c=u[0],f=u[1],h=t[0]-c,d=t[1]-f,p=i.site,v=p[0]-c,m=p[1]-f,g=2*(h*m-d*v),y=h*h+d*d,_=v*v+m*m,b=[(m*y-d*_)/g+c,(h*_-v*y)/g+f];setEdgeEnd(i.edge,u,p,b);l.edge=createEdge(u,t,null,b);i.edge=createEdge(t,p,null,b);attachCircle(r);attachCircle(i)}function leftBreakPoint(t,e){var n=t.site,r=n[0],i=n[1],a=i-e;if(!a)return r;var o=t.P;if(!o)return-Infinity;n=o.site;var s=n[0],l=n[1],u=l-e;if(!u)return s;var c=s-r,f=1/a-1/u,h=c/u;if(f)return(-h+Math.sqrt(h*h-2*f*(c*c/(-2*u)-l+u/2+i-a/2)))/f+r;return(r+s)/2}function rightBreakPoint(t,e){var n=t.N;if(n)return leftBreakPoint(n,e);var r=t.site;return r[1]===e?r[0]:Infinity}var epsilon=1e-6;var epsilon2=1e-12;var beaches;var cells;var circles;var edges;function triangleArea(t,e,n){return(t[0]-n[0])*(e[1]-t[1])-(t[0]-e[0])*(n[1]-t[1])}function lexicographic(t,e){return e[1]-t[1]||e[0]-t[0]}function Diagram(t,e){var n=t.sort(lexicographic).pop(),r,i,a;edges=[];cells=new Array(t.length);beaches=new RedBlackTree;circles=new RedBlackTree;while(true){a=firstCircle;if(n&&(!a||n[1]<a.y||n[1]===a.y&&n[0]<a.x)){if(n[0]!==r||n[1]!==i){addBeach(n);r=n[0],i=n[1]}n=t.pop()}else if(a){removeBeach(a.arc)}else{break}}sortCellHalfedges();if(e){var o=+e[0][0],s=+e[0][1],l=+e[1][0],u=+e[1][1];clipEdges(o,s,l,u);clipCells(o,s,l,u)}this.edges=edges;this.cells=cells;beaches=circles=edges=cells=null}Diagram.prototype={constructor:Diagram,polygons:function(){var t=this.edges;return this.cells.map((function(e){var n=e.halfedges.map((function(n){return cellHalfedgeStart(e,t[n])}));n.data=e.site.data;return n}))},triangles:function(){var t=[],e=this.edges;this.cells.forEach((function(n,r){if(!(s=(a=n.halfedges).length))return;var i=n.site,a,o=-1,s,l,u=e[a[s-1]],c=u.left===i?u.right:u.left;while(++o<s){l=c;u=e[a[o]];c=u.left===i?u.right:u.left;if(l&&c&&r<l.index&&r<c.index&&triangleArea(i,l,c)<0){t.push([i.data,l.data,c.data])}}}));return t},links:function(){return this.edges.filter((function(t){return t.right})).map((function(t){return{source:t.left.data,target:t.right.data}}))},find:function(t,e,n){var r=this,i,a=r._found||0,o=r.cells.length,s;while(!(s=r.cells[a]))if(++a>=o)return null;var l=t-s.site[0],u=e-s.site[1],c=l*l+u*u;do{s=r.cells[i=a],a=null;s.halfedges.forEach((function(n){var i=r.edges[n],o=i.left;if((o===s.site||!o)&&!(o=i.right))return;var l=t-o[0],u=e-o[1],f=l*l+u*u;if(f<c)c=f,a=o.index}))}while(a!==null);r._found=i;return n==null||c<=n*n?s.site:null}};function voronoi(){var t=x,e=y,n=null;function r(r){return new Diagram(r.map((function(n,i){var a=[Math.round(t(n,i,r)/epsilon)*epsilon,Math.round(e(n,i,r)/epsilon)*epsilon];a.index=i;a.data=n;return a})),n)}r.polygons=function(t){return r(t).polygons()};r.links=function(t){return r(t).links()};r.triangles=function(t){return r(t).triangles()};r.x=function(e){return arguments.length?(t=typeof e==="function"?e:constant$1(+e),r):t};r.y=function(t){return arguments.length?(e=typeof t==="function"?t:constant$1(+t),r):e};r.extent=function(t){return arguments.length?(n=t==null?null:[[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]],r):n&&[[n[0][0],n[0][1]],[n[1][0],n[1][1]]]};r.size=function(t){return arguments.length?(n=t==null?null:[[0,0],[+t[0],+t[1]]],r):n&&[n[1][0]-n[0][0],n[1][1]-n[0][1]]};return r}function constant(t){return function(){return t}}function ZoomEvent(t,e,n){this.target=t;this.type=e;this.transform=n}function Transform(t,e,n){this.k=t;this.x=e;this.y=n}Transform.prototype={constructor:Transform,scale:function(t){return t===1?this:new Transform(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Transform(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var identity$1=new Transform(1,0,0);transform$1.prototype=Transform.prototype;function transform$1(t){return t.__zoom||identity$1}function nopropagation(){event.stopImmediatePropagation()}function noevent(){event.preventDefault();event.stopImmediatePropagation()}function defaultFilter(){return!event.button}function defaultExtent(){var t=this,e,n;if(t instanceof SVGElement){t=t.ownerSVGElement||t;e=t.width.baseVal.value;n=t.height.baseVal.value}else{e=t.clientWidth;n=t.clientHeight}return[[0,0],[e,n]]}function defaultTransform(){return this.__zoom||identity$1}function defaultWheelDelta(){return-event.deltaY*(event.deltaMode?120:1)/500}function defaultTouchable(){return"ontouchstart"in this}function defaultConstrain(t,e,n){var r=t.invertX(e[0][0])-n[0][0],i=t.invertX(e[1][0])-n[1][0],a=t.invertY(e[0][1])-n[0][1],o=t.invertY(e[1][1])-n[1][1];return t.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function zoom(){var t=defaultFilter,e=defaultExtent,n=defaultConstrain,r=defaultWheelDelta,i=defaultTouchable,a=[0,Infinity],o=[[-Infinity,-Infinity],[Infinity,Infinity]],s=250,l=interpolateZoom,u=[],c=dispatch("start","zoom","end"),f,h,d=500,p=150,v=0;function m(t){t.property("__zoom",defaultTransform).on("wheel.zoom",$).on("mousedown.zoom",k).on("dblclick.zoom",M).filter(i).on("touchstart.zoom",S).on("touchmove.zoom",z).on("touchend.zoom touchcancel.zoom",E).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}m.transform=function(t,e){var n=t.selection?t.selection():t;n.property("__zoom",defaultTransform);if(t!==n){b(t,e)}else{n.interrupt().each((function(){x(this,arguments).start().zoom(null,typeof e==="function"?e.apply(this,arguments):e).end()}))}};m.scaleBy=function(t,e){m.scaleTo(t,(function(){var t=this.__zoom.k,n=typeof e==="function"?e.apply(this,arguments):e;return t*n}))};m.scaleTo=function(t,r){m.transform(t,(function(){var t=e.apply(this,arguments),i=this.__zoom,a=_(t),s=i.invert(a),l=typeof r==="function"?r.apply(this,arguments):r;return n(y(g(i,l),a,s),t,o)}))};m.translateBy=function(t,r,i){m.transform(t,(function(){return n(this.__zoom.translate(typeof r==="function"?r.apply(this,arguments):r,typeof i==="function"?i.apply(this,arguments):i),e.apply(this,arguments),o)}))};m.translateTo=function(t,r,i){m.transform(t,(function(){var t=e.apply(this,arguments),a=this.__zoom,s=_(t);return n(identity$1.translate(s[0],s[1]).scale(a.k).translate(typeof r==="function"?-r.apply(this,arguments):-r,typeof i==="function"?-i.apply(this,arguments):-i),t,o)}))};function g(t,e){e=Math.max(a[0],Math.min(a[1],e));return e===t.k?t:new Transform(e,t.x,t.y)}function y(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new Transform(t.k,r,i)}function _(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function b(t,n,r){t.on("start.zoom",(function(){x(this,arguments).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).end()})).tween("zoom",(function(){var t=this,i=arguments,a=x(t,i),o=e.apply(t,i),s=r||_(o),u=Math.max(o[1][0]-o[0][0],o[1][1]-o[0][1]),c=t.__zoom,f=typeof n==="function"?n.apply(t,i):n,h=l(c.invert(s).concat(u/c.k),f.invert(s).concat(u/f.k));return function(t){if(t===1)t=f;else{var e=h(t),n=u/e[2];t=new Transform(n,s[0]-e[0]*n,s[1]-e[1]*n)}a.zoom(null,t)}}))}function x(t,e){for(var n=0,r=u.length,i;n<r;++n){if((i=u[n]).that===t){return i}}return new w(t,e)}function w(t,n){this.that=t;this.args=n;this.index=-1;this.active=0;this.extent=e.apply(t,n)}w.prototype={start:function(){if(++this.active===1){this.index=u.push(this)-1;this.emit("start")}return this},zoom:function(t,e){if(this.mouse&&t!=="mouse")this.mouse[1]=e.invert(this.mouse[0]);if(this.touch0&&t!=="touch")this.touch0[1]=e.invert(this.touch0[0]);if(this.touch1&&t!=="touch")this.touch1[1]=e.invert(this.touch1[0]);this.that.__zoom=e;this.emit("zoom");return this},end:function(){if(--this.active===0){u.splice(this.index,1);this.index=-1;this.emit("end")}return this},emit:function(t){customEvent(new ZoomEvent(m,t,this.that.__zoom),c.apply,c,[t,this.that,this.args])}};function $(){if(!t.apply(this,arguments))return;var e=x(this,arguments),i=this.__zoom,s=Math.max(a[0],Math.min(a[1],i.k*Math.pow(2,r.apply(this,arguments)))),l=mouse(this);if(e.wheel){if(e.mouse[0][0]!==l[0]||e.mouse[0][1]!==l[1]){e.mouse[1]=i.invert(e.mouse[0]=l)}clearTimeout(e.wheel)}else if(i.k===s)return;else{e.mouse=[l,i.invert(l)];interrupt(this);e.start()}noevent();e.wheel=setTimeout(u,p);e.zoom("mouse",n(y(g(i,s),e.mouse[0],e.mouse[1]),e.extent,o));function u(){e.wheel=null;e.end()}}function k(){if(h||!t.apply(this,arguments))return;var e=x(this,arguments),r=select(event.view).on("mousemove.zoom",l,true).on("mouseup.zoom",u,true),i=mouse(this),a=event.clientX,s=event.clientY;dragDisable(event.view);nopropagation();e.mouse=[i,this.__zoom.invert(i)];interrupt(this);e.start();function l(){noevent();if(!e.moved){var t=event.clientX-a,r=event.clientY-s;e.moved=t*t+r*r>v}e.zoom("mouse",n(y(e.that.__zoom,e.mouse[0]=mouse(e.that),e.mouse[1]),e.extent,o))}function u(){r.on("mousemove.zoom mouseup.zoom",null);yesdrag(event.view,e.moved);noevent();e.end()}}function M(){if(!t.apply(this,arguments))return;var r=this.__zoom,i=mouse(this),a=r.invert(i),l=r.k*(event.shiftKey?.5:2),u=n(y(g(r,l),i,a),e.apply(this,arguments),o);noevent();if(s>0)select(this).transition().duration(s).call(b,u,i);else select(this).call(m.transform,u)}function S(){if(!t.apply(this,arguments))return;var e=x(this,arguments),n=event.changedTouches,r,i=n.length,a,o,s;nopropagation();for(a=0;a<i;++a){o=n[a],s=touch(this,n,o.identifier);s=[s,this.__zoom.invert(s),o.identifier];if(!e.touch0)e.touch0=s,r=true;else if(!e.touch1)e.touch1=s}if(f){f=clearTimeout(f);if(!e.touch1){e.end();s=select(this).on("dblclick.zoom");if(s)s.apply(this,arguments);return}}if(r){f=setTimeout((function(){f=null}),d);interrupt(this);e.start()}}function z(){var t=x(this,arguments),e=event.changedTouches,r=e.length,i,a,s,l;noevent();if(f)f=clearTimeout(f);for(i=0;i<r;++i){a=e[i],s=touch(this,e,a.identifier);if(t.touch0&&t.touch0[2]===a.identifier)t.touch0[0]=s;else if(t.touch1&&t.touch1[2]===a.identifier)t.touch1[0]=s}a=t.that.__zoom;if(t.touch1){var u=t.touch0[0],c=t.touch0[1],h=t.touch1[0],d=t.touch1[1],p=(p=h[0]-u[0])*p+(p=h[1]-u[1])*p,v=(v=d[0]-c[0])*v+(v=d[1]-c[1])*v;a=g(a,Math.sqrt(p/v));s=[(u[0]+h[0])/2,(u[1]+h[1])/2];l=[(c[0]+d[0])/2,(c[1]+d[1])/2]}else if(t.touch0)s=t.touch0[0],l=t.touch0[1];else return;t.zoom("touch",n(y(a,s,l),t.extent,o))}function E(){var t=x(this,arguments),e=event.changedTouches,n=e.length,r,i;nopropagation();if(h)clearTimeout(h);h=setTimeout((function(){h=null}),d);for(r=0;r<n;++r){i=e[r];if(t.touch0&&t.touch0[2]===i.identifier)delete t.touch0;else if(t.touch1&&t.touch1[2]===i.identifier)delete t.touch1}if(t.touch1&&!t.touch0)t.touch0=t.touch1,delete t.touch1;if(t.touch0)t.touch0[1]=this.__zoom.invert(t.touch0[0]);else t.end()}m.wheelDelta=function(t){return arguments.length?(r=typeof t==="function"?t:constant(+t),m):r};m.filter=function(e){return arguments.length?(t=typeof e==="function"?e:constant(!!e),m):t};m.touchable=function(t){return arguments.length?(i=typeof t==="function"?t:constant(!!t),m):i};m.extent=function(t){return arguments.length?(e=typeof t==="function"?t:constant([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),m):e};m.scaleExtent=function(t){return arguments.length?(a[0]=+t[0],a[1]=+t[1],m):[a[0],a[1]]};m.translateExtent=function(t){return arguments.length?(o[0][0]=+t[0][0],o[1][0]=+t[1][0],o[0][1]=+t[0][1],o[1][1]=+t[1][1],m):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]};m.constrain=function(t){return arguments.length?(n=t,m):n};m.duration=function(t){return arguments.length?(s=+t,m):s};m.interpolate=function(t){return arguments.length?(l=t,m):l};m.on=function(){var t=c.on.apply(c,arguments);return t===c?m:t};m.clickDistance=function(t){return arguments.length?(v=(t=+t)*t,m):Math.sqrt(v)};return m}var d3=Object.freeze({__proto__:null,version:version,bisect:bisectRight,bisectRight:bisectRight,bisectLeft:bisectLeft,ascending:ascending$2,bisector:bisector,cross:cross$2,descending:descending$2,deviation:deviation,extent:extent$1,histogram:histogram,thresholdFreedmanDiaconis:freedmanDiaconis,thresholdScott:scott,thresholdSturges:sturges,max:max$2,mean:mean,median:median,merge:merge$1,min:min$1,pairs:pairs,permute:permute,quantile:threshold$1,range:sequence,scan:scan,shuffle:shuffle$1,sum:sum$2,ticks:ticks,tickIncrement:tickIncrement,tickStep:tickStep,transpose:transpose,variance:variance,zip:zip,axisTop:axisTop,axisRight:axisRight,axisBottom:axisBottom,axisLeft:axisLeft,brush:brush,brushX:brushX,brushY:brushY,brushSelection:brushSelection,chord:chord,ribbon:ribbon,nest:nest,set:set,map:map$1,keys:keys,values:values,entries:entries,color:color,rgb:rgb,hsl:hsl$2,lab:lab$1,hcl:hcl$2,cubehelix:cubehelix$3,dispatch:dispatch,drag:drag,dragDisable:dragDisable,dragEnable:yesdrag,dsvFormat:dsv$1,csvParse:csvParse,csvParseRows:csvParseRows,csvFormat:csvFormat,csvFormatRows:csvFormatRows,tsvParse:tsvParse,tsvParseRows:tsvParseRows,tsvFormat:tsvFormat,tsvFormatRows:tsvFormatRows,easeLinear:linear$1,easeQuad:quadInOut,easeQuadIn:quadIn,easeQuadOut:quadOut,easeQuadInOut:quadInOut,easeCubic:cubicInOut,easeCubicIn:cubicIn,easeCubicOut:cubicOut,easeCubicInOut:cubicInOut,easePoly:polyInOut,easePolyIn:polyIn,easePolyOut:polyOut,easePolyInOut:polyInOut,easeSin:sinInOut,easeSinIn:sinIn,easeSinOut:sinOut,easeSinInOut:sinInOut,easeExp:expInOut,easeExpIn:expIn,easeExpOut:expOut,easeExpInOut:expInOut,easeCircle:circleInOut,easeCircleIn:circleIn,easeCircleOut:circleOut,easeCircleInOut:circleInOut,easeBounce:bounceOut,easeBounceIn:bounceIn,easeBounceOut:bounceOut,easeBounceInOut:bounceInOut,easeBack:backInOut,easeBackIn:backIn,easeBackOut:backOut,easeBackInOut:backInOut,easeElastic:elasticOut,easeElasticIn:elasticIn,easeElasticOut:elasticOut,easeElasticInOut:elasticInOut,forceCenter:center,forceCollide:collide,forceLink:link$2,forceManyBody:manyBody,forceRadial:radial,forceSimulation:simulation,forceX:x$2,forceY:y$2,formatDefaultLocale:defaultLocale$1,get format(){return format},get formatPrefix(){return formatPrefix},formatLocale:formatLocale$1,formatSpecifier:formatSpecifier,precisionFixed:precisionFixed,precisionPrefix:precisionPrefix,precisionRound:precisionRound,geoArea:area$2,geoBounds:bounds,geoCentroid:centroid$1,geoCircle:circle$2,geoClipAntimeridian:clipAntimeridian,geoClipCircle:clipCircle,geoClipExtent:extent,geoClipRectangle:clipRectangle,geoContains:contains$1,geoDistance:distance,geoGraticule:graticule,geoGraticule10:graticule10,geoInterpolate:interpolate,geoLength:length$1,geoPath:index$2,geoAlbers:albers,geoAlbersUsa:albersUsa,geoAzimuthalEqualArea:azimuthalEqualArea,geoAzimuthalEqualAreaRaw:azimuthalEqualAreaRaw,geoAzimuthalEquidistant:azimuthalEquidistant,geoAzimuthalEquidistantRaw:azimuthalEquidistantRaw,geoConicConformal:conicConformal,geoConicConformalRaw:conicConformalRaw,geoConicEqualArea:conicEqualArea,geoConicEqualAreaRaw:conicEqualAreaRaw,geoConicEquidistant:conicEquidistant,geoConicEquidistantRaw:conicEquidistantRaw,geoEquirectangular:equirectangular,geoEquirectangularRaw:equirectangularRaw,geoGnomonic:gnomonic,geoGnomonicRaw:gnomonicRaw,geoIdentity:identity$4,geoProjection:projection,geoProjectionMutator:projectionMutator,geoMercator:mercator,geoMercatorRaw:mercatorRaw,geoNaturalEarth1:naturalEarth1,geoNaturalEarth1Raw:naturalEarth1Raw,geoOrthographic:orthographic,geoOrthographicRaw:orthographicRaw,geoStereographic:stereographic,geoStereographicRaw:stereographicRaw,geoTransverseMercator:transverseMercator,geoTransverseMercatorRaw:transverseMercatorRaw,geoRotation:rotation,geoStream:geoStream,geoTransform:transform$2,cluster:cluster,hierarchy:hierarchy,pack:index$1,packSiblings:siblings,packEnclose:enclose,partition:partition,stratify:stratify,tree:tree,treemap:index,treemapBinary:binary,treemapDice:treemapDice,treemapSlice:treemapSlice,treemapSliceDice:sliceDice,treemapSquarify:squarify,treemapResquarify:resquarify,interpolate:interpolateValue,interpolateArray:array$1,interpolateBasis:basis$2,interpolateBasisClosed:basisClosed$1,interpolateDate:date$1,interpolateNumber:reinterpolate$1,interpolateObject:object$2,interpolateRound:interpolateRound,interpolateString:interpolateString,interpolateTransformCss:interpolateTransformCss,interpolateTransformSvg:interpolateTransformSvg,interpolateZoom:interpolateZoom,interpolateRgb:interpolateRgb,interpolateRgbBasis:rgbBasis,interpolateRgbBasisClosed:rgbBasisClosed,interpolateHsl:hsl$1,interpolateHslLong:hslLong,interpolateLab:lab,interpolateHcl:hcl$1,interpolateHclLong:hclLong,interpolateCubehelix:cubehelix$2,interpolateCubehelixLong:cubehelixLong,quantize:quantize$2,path:path,polygonArea:area$1,polygonCentroid:centroid,polygonHull:hull,polygonContains:contains,polygonLength:length,quadtree:quadtree,queue:queue,randomUniform:uniform,randomNormal:normal,randomLogNormal:logNormal,randomBates:bates,randomIrwinHall:irwinHall,randomExponential:exponential,request:request,html:html,json:json,text:text,xml:xml,csv:csv,tsv:tsv,scaleBand:band,scalePoint:point$4,scaleIdentity:identity$3,scaleLinear:linear,scaleLog:log,scaleOrdinal:ordinal,scaleImplicit:implicit,scalePow:pow,scaleSqrt:sqrt$1,scaleQuantile:quantile,scaleQuantize:quantize$1,scaleThreshold:threshold,scaleTime:time,scaleUtc:utcTime,schemeCategory10:category10,schemeCategory20b:category20b,schemeCategory20c:category20c,schemeCategory20:category20,interpolateCubehelixDefault:cubehelix,interpolateRainbow:rainbow$1,interpolateWarm:warm,interpolateCool:cool,interpolateViridis:viridis,interpolateMagma:magma,interpolateInferno:inferno,interpolatePlasma:plasma,scaleSequential:sequential,create:create$1,creator:creator,local:local$1,matcher:matcher$1,mouse:mouse,namespace:namespace,namespaces:namespaces,clientPoint:point$5,select:select,selectAll:selectAll,selection:selection,selector:selector,selectorAll:selectorAll,style:styleValue,touch:touch,touches:touches,window:defaultView,get event(){return event},customEvent:customEvent,arc:arc,area:area,line:line,pie:pie,areaRadial:areaRadial,radialArea:areaRadial,lineRadial:lineRadial$1,radialLine:lineRadial$1,pointRadial:pointRadial,linkHorizontal:linkHorizontal,linkVertical:linkVertical,linkRadial:linkRadial,symbol:symbol,symbols:symbols,symbolCircle:circle,symbolCross:cross,symbolDiamond:diamond,symbolSquare:square,symbolStar:star,symbolTriangle:triangle,symbolWye:wye,curveBasisClosed:basisClosed,curveBasisOpen:basisOpen,curveBasis:basis,curveBundle:bundle,curveCardinalClosed:cardinalClosed,curveCardinalOpen:cardinalOpen,curveCardinal:cardinal,curveCatmullRomClosed:catmullRomClosed,curveCatmullRomOpen:catmullRomOpen,curveCatmullRom:catmullRom,curveLinearClosed:linearClosed,curveLinear:curveLinear,curveMonotoneX:monotoneX,curveMonotoneY:monotoneY,curveNatural:natural,curveStep:step,curveStepAfter:stepAfter,curveStepBefore:stepBefore,stack:stack,stackOffsetExpand:expand,stackOffsetDiverging:diverging,stackOffsetNone:none$1,stackOffsetSilhouette:silhouette,stackOffsetWiggle:wiggle,stackOrderAscending:ascending,stackOrderDescending:descending,stackOrderInsideOut:insideOut,stackOrderNone:none,stackOrderReverse:reverse$1,timeInterval:newInterval,timeMillisecond:millisecond,timeMilliseconds:milliseconds,utcMillisecond:millisecond,utcMilliseconds:milliseconds,timeSecond:second,timeSeconds:seconds,utcSecond:second,utcSeconds:seconds,timeMinute:minute,timeMinutes:minutes,timeHour:hour,timeHours:hours,timeDay:day,timeDays:days,timeWeek:sunday,timeWeeks:sundays,timeSunday:sunday,timeSundays:sundays,timeMonday:monday,timeMondays:mondays,timeTuesday:tuesday,timeTuesdays:tuesdays,timeWednesday:wednesday,timeWednesdays:wednesdays,timeThursday:thursday,timeThursdays:thursdays,timeFriday:friday,timeFridays:fridays,timeSaturday:saturday,timeSaturdays:saturdays,timeMonth:month,timeMonths:months,timeYear:year,timeYears:years,utcMinute:utcMinute,utcMinutes:utcMinutes,utcHour:utcHour,utcHours:utcHours,utcDay:utcDay,utcDays:utcDays,utcWeek:utcSunday,utcWeeks:utcSundays,utcSunday:utcSunday,utcSundays:utcSundays,utcMonday:utcMonday,utcMondays:utcMondays,utcTuesday:utcTuesday,utcTuesdays:utcTuesdays,utcWednesday:utcWednesday,utcWednesdays:utcWednesdays,utcThursday:utcThursday,utcThursdays:utcThursdays,utcFriday:utcFriday,utcFridays:utcFridays,utcSaturday:utcSaturday,utcSaturdays:utcSaturdays,utcMonth:utcMonth,utcMonths:utcMonths,utcYear:utcYear,utcYears:utcYears,timeFormatDefaultLocale:defaultLocale,get timeFormat(){return timeFormat},get timeParse(){return timeParse},get utcFormat(){return utcFormat},get utcParse(){return utcParse},timeFormatLocale:formatLocale,isoFormat:formatIso,isoParse:parseIso,now:now,timer:timer,timerFlush:timerFlush,timeout:timeout,interval:interval,transition:transition,active:active,interrupt:interrupt,voronoi:voronoi,zoom:zoom,zoomTransform:transform$1,zoomIdentity:identity$1});var require$$0=getAugmentedNamespace(d3);var sszvis=createCommonjsModule((function(t,e){
2
- /*! sszvis v2.1.1, Copyright 2014-present Statistik Stadt Zürich */
3
- (function(t,n){n(e,require$$0)})(commonjsGlobal,(function(t,e){e.selection.prototype.selectDiv=function(t){var e=this.selectAll('[data-d3-selectdiv="'+t+'"]').data((function(t){return[t]}));var n=e.enter().append("div").attr("data-d3-selectdiv",t).style("position","absolute");return e.merge(n)};e.selection.prototype.selectGroup=function(t){var e=this.selectAll('[data-d3-selectgroup="'+t+'"]').data((function(t){return[t]}));var n=e.enter().append("g").attr("data-d3-selectgroup",t);return e.merge(n)};(function(){if(typeof window==="undefined"){return}var t=function t(e,n){var r=e.nodeType;if(r==3){n.push(e.textContent.replace(/&/,"&amp;").replace(/</,"&lt;").replace(">","&gt;"))}else if(r==1){n.push("<",e.tagName);if(e.hasAttributes()){var i=e.attributes;for(var a=0,o=i.length;a<o;++a){var s=i.item(a);n.push(" ",s.name,"='",s.value,"'")}}if(e.hasChildNodes()){n.push(">");var l=e.childNodes;for(var a=0,o=l.length;a<o;++a){t(l.item(a),n)}n.push("</",e.tagName,">")}else{n.push("/>")}}else if(r==8){n.push("\x3c!--",e.nodeValue,"--\x3e")}else{throw"Error serializing XML. Unhandled node of type: "+r}};Object.defineProperty(SVGElement.prototype,"innerHTML",{get:function e(){var n=[];var r=this.firstChild;while(r){t(r,n);r=r.nextSibling}return n.join("")},set:function t(e){while(this.firstChild){this.removeChild(this.firstChild)}try{var n=new DOMParser;n.async=false;var r="<svg xmlns='http://www.w3.org/2000/svg'>"+e+"</svg>";var i=n.parseFromString(r,"text/xml").documentElement;var a=i.firstChild;while(a){this.appendChild(this.ownerDocument.importNode(a,true));a=a.nextSibling}}catch(o){throw new Error("Error parsing XML string")}}});Object.defineProperty(SVGElement.prototype,"innerSVG",{get:function t(){return this.innerHTML},set:function t(e){this.innerHTML=e}})})();var n=function t(e){return e};var r=function t(e){return Object.prototype.toString.call(e)==="[object String]"};var i=function t(n){return n instanceof e.selection};var a=function t(e,n){switch(e){case 0:return function(){return n.call(this)};case 1:return function(t){return n.call(this,t)};case 2:return function(t,e){return n.call(this,t,e)};case 3:return function(t,e,r){return n.call(this,t,e,r)};case 4:return function(t,e,r,i){return n.call(this,t,e,r,i)};case 5:return function(t,e,r,i,a){return n.call(this,t,e,r,i,a)};case 6:return function(t,e,r,i,a,o){return n.call(this,t,e,r,i,a,o)};case 7:return function(t,e,r,i,a,o,s){return n.call(this,t,e,r,i,a,o,s)};case 8:return function(t,e,r,i,a,o,s,l){return n.call(this,t,e,r,i,a,o,s,l)};case 9:return function(t,e,r,i,a,o,s,l,u){return n.call(this,t,e,r,i,a,o,s,l,u)};case 10:return function(t,e,r,i,a,o,s,l,u,c){return n.call(this,t,e,r,i,a,o,s,l,u,c)};default:return n}};var o=function t(){var e=arguments,n=arguments.length-1;return function(){var t=n;var r=e[t].apply(this,arguments);while(t--){r=e[t].call(this,r)}return r}};var s=function t(e,n){return e.indexOf(n)>=0};var l=function t(e){return typeof e!=="undefined"&&e!=null};var u=function t(e,r){r||(r=n);var i=[],a,o,s=[];for(var l=0,u=e.length;l<u;++l){a=e[l];o=r(a,l,e);if(i.indexOf(o)<0){i.push(o);s.push(a)}}return s};var c=function t(e,n){for(var r=0;r<n.length;r++){if(!e(n[r])){return false}}return true};var f=function t(e,n){var r=new Array(e);for(var i=0;i<e;++i){r[i]=n}return r};var h=function t(e,n){for(var r=0;r<n.length;r++){if(e(n[r])){return n[r]}}return undefined};var d=function t(e){return e[0]};var p=function t(e){return Array.prototype.concat.apply([],e)};var v=function t(e){if(e.touches&&e.touches.length){return e.touches[0]}else if(e.changedTouches&&e.changedTouches.length){return e.changedTouches[0]}return null};var m=function t(e,n){var r=n[e];if(typeof r==="function"){return r()}throw new Error("[foldPattern] No definition provided for key: "+e)};var g=function t(e,r){r||(r=n);var i={},a,o=[];for(var s=0,l=e.length;s<l;++s){a=r(e[s],s,e);if(!i[a]){i[a]=true;o.push(a)}}return o};var y=function t(e){return typeof e=="function"};var _=function t(e){return e===null};var b=function t(e){return Object.prototype.toString.call(e)==="[object Number]"};var x=function t(e){return Object(e)===e};var w=function t(e){return e[e.length-1]};var $=function t(e){return function(){return!e.apply(this,arguments)}};var k=function t(e){return function(t){return t[e]}};var M=function t(e,n){return function(t){var r=t!==undefined?t[e]:undefined;return r!==undefined?r:n}};var S=function t(e,r){r||(r=n);return e.reduce((function(t,n,i){var a=r(n,i,e);return t.indexOf(a)<0?t.concat(a):t}),[])};var z=function t(e,n){for(var r=0;r<n.length;r++){if(e(n[r])){return true}}return false};var E=function t(e,n){return e.toString()===n.toString()};var C=function t(e){return typeof e==="function"?e:function(){return e}};var A=function t(n,r){if(typeof n!="function"||r!=null&&typeof r!="function"){throw new TypeError("Expected a function")}var i=function t(){var e=arguments,i=r?r.apply(this,e):e[0],a=t.cache;if(a.has(i)){return a.get(i)}var o=n.apply(this,e);t.cache=a.set(i,o)||a;return o};i.cache=e.map();return i};function R(t,e,n){var r=T(t).selectAll(e+"#"+n).data([0]);var i=r.enter().append(e).attr("id",n);return r.merge(i)}function T(t){var e=t.selectAll("defs").data([0]);var n=e.enter().append("defs");return e.merge(n)}var N=.6;function P(t){return function(){var n=e.scaleOrdinal().range(t.map(lt));return at(n)}}var L=P(["#5182B3","#B8CFE6","#60BF97","#B8E6D2","#94BF69","#CFE6B8","#E6CF73","#FAEBAF","#E67D73","#F2CEC2","#CC6788","#E6B7C7"]);var F=P(["#5182B3","#60BF97","#94BF69","#E6CF73","#E67D73","#CC6788"]);var D=P(["#5182B3","#B8CFE6","#60BF97","#B8E6D2","#94BF69","#CFE6B8"]);var I=P(["#E6CF73","#FAEBAF","#E67D73","#F2CEC2","#CC6788","#E6B7C7"]);function O(t){return function(){var n=e.scaleLinear().range(t.map(lt));return ot(n)}}var B=O(["#DDE9FE","#3B76B3","#343F4D"]);var q=O(["#FEECEC","#CC6171","#4D353A"]);var H=O(["#D2DFDE","#4A807C","#2C3C3F"]);var U=O(["#E9DFD6","#A67D5A","#4C3735"]);function j(t){return function(){var n=e.scaleLinear().range(t.map(lt));return ot(n)}}var Y=j(["#CC6171","#FFFFFF","#3B76B3"]);var W=j(["#CC6171","#F3F3F3","#3B76B3"]);var G=j(["#A67D5A","#FFFFFF","#4A807C"]);var X=j(["#A67D5A","#F3F3F3","#4A807C"]);function V(t){return function(){var n=e.scaleOrdinal().range(t.map(lt));return ot(n)}}var Z=V(["#FAFAFA"]);var Q=V(["#EAEAEA"]);var J=V(["#D6D6D6"]);var K=V(["#B8B8B8"]);var tt=V(["#7C7C7C"]);var et=V(["#545454"]);var nt=function t(n){return e.hsl(n).darker(.4)};var rt=function t(n){return e.hsl(n).darker(.7)};var it=function t(n,r){var i=e.rgb(n);return"rgba("+i.r+","+i.g+","+i.b+","+r+")"};function at(t){t.darker=function(){return at(t.copy().range(t.range().map(ut("darker",N))))};t.brighter=function(){return at(t.copy().range(t.range().map(ut("brighter",N))))};t.reverse=function(){return at(t.copy().range(t.range().reverse()))};return t}function ot(t){t=st(t);t.reverse=function(){return ot(t.copy().range(t.range().reverse()))};return t}function st(t){var n=t.domain;t.domain=function(t){if(arguments.length===1){var r=[t[0],e.mean(t),t[1]];return n.call(this,r)}else{return n.apply(this,arguments)}};return t}function lt(t){return e.lab(t)}function ut(t){var e=Array.prototype.slice.call(arguments,1);return function(n){return n[t].apply(n,e)}}var ct=function t(e){var n=Z(),r="#A4A4A4",i=.035,a=.35,o=.65;e.attr("patternUnits","objectBoundingBox").attr("patternContentUnits","objectBoundingBox").attr("x",0).attr("y",0).attr("width",1).attr("height",1);e.append("rect").attr("x",0).attr("y",0).attr("width",1).attr("height",1).attr("fill",n);e.append("line").attr("x1",a).attr("y1",a).attr("x2",o).attr("y2",o).attr("stroke-width",i).attr("stroke",r);e.append("line").attr("x1",o).attr("y1",a).attr("x2",a).attr("y2",o).attr("stroke-width",i).attr("stroke",r)};var ft=function t(e){var n=14,r=14,i="#FAFAFA",a="#CCCCCC";e.attr("patternUnits","userSpaceOnUse").attr("patternContentUnits","userSpaceOnUse").attr("x",0).attr("y",0).attr("width",n).attr("height",r);e.append("rect").attr("x",0).attr("y",0).attr("width",n).attr("height",r).attr("fill",i);e.append("line").attr("x1",1).attr("y1",10).attr("x2",5).attr("y2",14).attr("stroke",a);e.append("line").attr("x1",5).attr("y1",10).attr("x2",1).attr("y2",14).attr("stroke",a);e.append("line").attr("x1",8).attr("y1",3).attr("x2",12).attr("y2",7).attr("stroke",a);e.append("line").attr("x1",12).attr("y1",3).attr("x2",8).attr("y2",7).attr("stroke",a)};var ht=function t(e){var n=6;var r=6;var i=.5;e.attr("patternUnits","userSpaceOnUse").attr("patternContentUnits","userSpaceOnUse").attr("x",0).attr("y",0).attr("width",n).attr("height",r);e.append("rect").attr("x",0).attr("y",0).attr("width",n).attr("height",r).attr("fill","#fff");e.append("line").attr("x1",0).attr("y1",r*i).attr("x2",n*i).attr("y2",0).attr("stroke","#ddd").attr("stroke-linecap","square");e.append("line").attr("x1",n*i).attr("y1",r).attr("x2",n).attr("y2",r*i).attr("stroke","#ddd").attr("stroke-linecap","square")};var dt=function t(e){e.attr("x1",0).attr("y1",0).attr("x2",.55).attr("y2",1).attr("id","lake-fade-gradient");e.append("stop").attr("offset",.74).attr("stop-color","white").attr("stop-opacity",1);e.append("stop").attr("offset",.97).attr("stop-color","white").attr("stop-opacity",0)};var pt=function t(e){e.attr("maskContentUnits","objectBoundingBox");e.append("rect").attr("fill","url(#lake-fade-gradient)").attr("width",1).attr("height",1)};var vt=function t(e){var n=6;var r=6;var i=.5;e.attr("patternUnits","userSpaceOnUse").attr("patternContentUnits","userSpaceOnUse").attr("x",0).attr("y",0).attr("width",n).attr("height",r);e.append("line").attr("x1",0).attr("y1",r*i).attr("x2",n*i).attr("y2",0).attr("stroke","#e6e6e6").attr("stroke-width",1.1);e.append("line").attr("x1",n*i).attr("y1",r).attr("x2",n).attr("y2",r*i).attr("stroke","#e6e6e6").attr("stroke-width",1.1)};function mt(){var t={};var e=null;var n=yt;function r(r){if(e){r.props=function(){return bt(t)};e.apply(r,_t(arguments))}r.each((function(){this.__props__=bt(t);n.apply(this,_t(arguments))}))}r.prop=function(e,n){n||(n=yt);r[e]=gt(t,e,n.bind(r)).bind(r);return r};r.delegate=function(t,e){r[t]=function(){var n=e[t].apply(e,_t(arguments));return arguments.length===0?n:r};return r};r.renderSelection=function(t){e=t;return r};r.render=function(t){n=t;return r};return r}e.selection.prototype.props=function(){if(arguments.length)throw new Error("selection.props() does not accept any arguments");if(this.size()!=1)throw new Error("only one group is supported");if(this._groups[0].length!=1)throw new Error("only one node is supported");var t=this._groups[0];var e=t[0];return e.__props__||{}};function gt(t,e,n){n||(n=yt);return function(){if(!arguments.length)return t[e];t[e]=n.apply(null,_t(arguments));return this}}function yt(t){return t}function _t(t){return Array.prototype.slice.call(t)}function bt(t){var e={};for(var n in t){if({}.hasOwnProperty.call(t,n))e[n]=t[n]}return e}function xt(){return mt().prop("x",C).prop("y",C).prop("r",C).prop("dx",C).prop("dy",C).prop("caption",C).render((function(t){var n=e.select(this);var r=n.props();R(n,"pattern","data-area-pattern").call(vt);var i=n.selectAll(".sszvis-dataareacircle").data(t);var a=i.enter().append("circle").classed("sszvis-dataareacircle",true);i=i.merge(a);i.attr("cx",r.x).attr("cy",r.y).attr("r",r.r).attr("fill","url(#data-area-pattern)");if(r.caption){var o=n.selectAll(".sszvis-dataareacircle__caption").data(t);var s=o.enter().append("text").classed("sszvis-dataareacircle__caption",true);o=o.merge(s);o.attr("x",r.x).attr("y",r.y).attr("dx",r.dx).attr("dy",r.dy).text(r.caption)}}))}function wt(){return mt().prop("x1").prop("x2").prop("y1").prop("y2").prop("xScale").prop("yScale").prop("dx",C).dx(0).prop("dy",C).dy(0).prop("caption",C).render((function(t){var n=e.select(this);var r=n.props();var i=r.xScale(r.x1);var a=r.yScale(r.y1);var o=r.xScale(r.x2);var s=r.yScale(r.y2);var l=n.selectAll(".sszvis-referenceline").data(t);l.exit().remove();var u=l.enter().append("line").classed("sszvis-referenceline",true);l=l.merge(u);l.attr("x1",i).attr("y1",a).attr("x2",o).attr("y2",s);if(r.caption){var c=n.selectAll(".sszvis-referenceline__caption").data([0]);c.exit().remove();var f=c.enter().append("text").classed("sszvis-referenceline__caption",true);c=c.merge(f);c.attr("transform",(function(){var t=o-i;var e=s-a;var n=Math.atan2(e,t)*180/Math.PI;return"translate("+(i+o)/2+","+(a+s)/2+") rotate("+n+")"})).attr("dx",r.dx).attr("dy",r.dy).text(r.caption)}}))}var $t=function t(e){return Math.floor(e)+.5};var kt=function t(e){var n=o(Math.floor,Number);return e.replace(/(translate\()\s*([0-9., ]+)\s*(\))/i,(function(t,e,r,i){var a=r.replace(","," ").replace(/\s+/," ").split(" ").map(n).join(",");return e+a+i}))};var Mt=function t(e){var n=o(Math.floor,Number);var r=e.match(/(translate\()\s*([0-9.,\- ]+)\s*(\))/i);var i=r[2].replace(","," ").replace(/\s+/," ").split(" ").map(Number);if(i.length===1)i.push([0]);var a=i.map(n);return[i[0]-a[0],i[1]-a[1]]};function St(t,e){return"translate("+t+","+e+")"}function zt(){return mt().prop("position").position(C([0,0])).prop("debug").render((function(n){var r=e.select(this);var i=r.props();var a=r.selectAll("[data-tooltip-anchor]").data(n);var s=a.enter().append("rect").attr("height",1).attr("width",1).attr("fill","none").attr("stroke","none").attr("visibility","none").attr("data-tooltip-anchor","");a.exit().remove();a=a.merge(s);a.attr("transform",o(t,i.position));if(i.debug){var l=r.selectAll("[data-tooltip-anchor-debug]").data(n);var u=l.enter().append("circle").attr("data-tooltip-anchor-debug","");l.exit().remove();l=l.merge(u);l.attr("r",2).attr("fill","#fff").attr("stroke","#f00").attr("stroke-width",1.5).attr("transform",o(t,i.position))}}));function t(t){return St.apply(null,t)}}function Et(){return mt().prop("x",C).prop("y0",C).prop("y1",C).render((function(t){var n=e.select(this);var r=n.props();var i=o($t,r.x);var a=o($t,r.y0);var s=o($t,r.y1);n.selectAll(".sszvis-rangeFlag__mark.bottom").data(t).call(Ct("bottom",i,a));n.selectAll(".sszvis-rangeFlag__mark.top").data(t).call(Ct("top",i,s));var l=zt().position((function(t){return[i(t),$t((r.y0(t)+r.y1(t))/2)]}));n.call(l)}))}function Ct(t,e,n){return function(r){var i=r.enter().append("circle").classed("sszvis-rangeFlag__mark",true).classed(t,true);r.exit().remove();r=r.merge(i);r.attr("r",3.5).attr("cx",e).attr("cy",n)}}var At={decimal:".",thousands:" ",grouping:[3],currency:["CHF ",""],dateTime:"%a. %e. %B %X %Y",date:"%d.%m.%Y",time:"%H:%M:%S",periods:[],days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],shortDays:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],shortMonths:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"]};var Rt=e.timeFormatLocale(At).format;var Tt=e.formatLocale(At).format;var Nt=function t(e){return String(Math.round(e))};var Pt=function t(e){var n=[[".%L",function(t){return t.getMilliseconds()}],[":%S",function(t){return t.getSeconds()}],["%H:%M",function(t){return t.getMinutes()}],["%H Uhr",function(t){return t.getHours()}],["%a., %d.",function(t){return t.getDay()&&t.getDate()!=1}],["%e. %b",function(t){return t.getDate()!=1}],["%B",function(t){return t.getMonth()}],["%Y",function(){return true}]];for(var r=0;r<n.length;++r){if(n[r][1](e)){return Rt(n[r][0])(e)}}};var Lt=o((function(t){return t.toUpperCase()}),Rt("%b"));var Ft=Rt("%Y");var Dt=function t(){return""};var It=function t(e){var n;var r=Math.abs(e);if(e==null||isNaN(e)){return"–"}else if(r>=1e4){return Tt(",.0f")(e)}else if(r>=100){n=Math.min(1,Ut(e));return jt(Tt("."+n+"f")(e))}else if(r>0){n=Math.min(2,Ut(e));return jt(Tt("."+n+"f")(e))}else{return Tt(".0f")(0)}};var Ot=function t(e,n){if(arguments.length>1)return t(e)(n);return function(t){var n=Math.abs(t);if(n>=100&&n<1e4){return Tt("."+e+"f")(t)}else{return Tt(",."+e+"f")(t)}}};var Bt=function t(e){return It(e)+" %"};var qt=function t(e){return It(e*100)+" %"};var Ht=function t(e){return String(e)};function Ut(t){return(String(Math.abs(t)).split(".")[1]||"").length}function jt(t){return t.replace(/(\.[0-9]*[1-9])0+$|\.0*$/,"$1")}function Yt(){return mt().prop("x",C).prop("y0",C).prop("y1",C).prop("top").prop("bottom").prop("label").label(C("")).prop("total").prop("flip",C).flip(false).render((function(t){var n=e.select(this);var r=n.props();var i=o($t,r.x);var a=o($t,r.y0);var s=o($t,r.y1);var l=function t(e){return $t((r.y0(e)+r.y1(e))/2)};var u=1.5;var c=n.selectAll(".sszvis-rangeRuler__rule").data([0]);var f=c.enter().append("line").classed("sszvis-rangeRuler__rule",true);c.exit().remove();c=c.merge(f);c.attr("x1",i).attr("y1",r.top).attr("x2",i).attr("y2",r.bottom);var h=n.selectAll(".sszvis-rangeRuler--mark").data(t);var d=h.enter().append("g").classed("sszvis-rangeRuler--mark",true);h.exit().remove();h=h.merge(d);d.append("circle").classed("sszvis-rangeRuler__p1",true);d.append("circle").classed("sszvis-rangeRuler__p2",true);d.append("text").classed("sszvis-rangeRuler__label",true);h.selectAll(".sszvis-rangeRuler__p1").data((function(t){return[t]})).attr("cx",i).attr("cy",a).attr("r",u);h.selectAll(".sszvis-rangeRuler__p2").data((function(t){return[t]})).attr("cx",i).attr("cy",s).attr("r",u);h.selectAll(".sszvis-rangeRuler__label").data((function(t){return[t]})).attr("x",(function(t){var e=r.flip(t)?-10:10;return i(t)+e})).attr("y",l).attr("dy","0.35em").style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).text(o(It,r.label));var p=n.selectAll(".sszvis-rangeRuler__total").data([w(t)]);var v=p.enter().append("text").classed("sszvis-rangeRuler__total",true);p.exit().remove();p=p.merge(v);p.attr("x",(function(t){var e=r.flip(t)?-10:10;return i(t)+e})).attr("y",r.top-10).style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).text("Total "+It(r.total))}))}function Wt(){return mt().prop("x",C).prop("y",C).prop("width",C).prop("height",C).prop("dx",C).prop("dy",C).prop("caption",C).render((function(t){var n=e.select(this);var r=n.props();R(n,"pattern","data-area-pattern").call(vt);var i=n.selectAll(".sszvis-dataarearectangle").data(t);var a=i.enter().append("rect").classed("sszvis-dataarearectangle",true);i=i.merge(a);i.attr("x",r.x).attr("y",r.y).attr("width",r.width).attr("height",r.height).attr("fill","url(#data-area-pattern)");if(r.caption){var o=n.selectAll(".sszvis-dataarearectangle__caption").data(t);var s=o.enter().append("text").classed("sszvis-dataarearectangle__caption",true);o=o.merge(s);o.attr("x",(function(t,e){return r.x(t,e)+r.width(t,e)/2})).attr("y",(function(t,e){return r.y(t,e)+r.height(t,e)/2})).attr("dx",r.dx).attr("dy",r.dy).text(r.caption)}}))}function Gt(){return mt().prop("top").prop("bottom").prop("x",C).prop("y",C).prop("label").label(C("")).prop("color").prop("flip",C).flip(false).prop("labelId",C).prop("reduceOverlap").reduceOverlap(true).render((function(t){var n=e.select(this);var r=n.props();var i=r.labelId||function(t){return r.x(t)+"_"+r.y(t)};var a=n.selectAll(".sszvis-ruler__rule").data(t,i);var s=a.enter().append("line").classed("sszvis-ruler__rule",true);a.exit().remove();a=a.merge(s);a.attr("x1",o($t,r.x)).attr("y1",r.y).attr("x2",o($t,r.x)).attr("y2",r.bottom);var l=n.selectAll(".sszvis-ruler__dot").data(t,i);var u=l.enter().append("circle").classed("sszvis-ruler__dot",true);l.exit().remove();l=l.merge(u);l.attr("cx",o($t,r.x)).attr("cy",o($t,r.y)).attr("r",3.5).attr("fill",r.color);var c=n.selectAll(".sszvis-ruler__label-outline").data(t,i);var f=c.enter().append("text").classed("sszvis-ruler__label-outline",true);c.exit().remove();c=c.merge(f);var h=n.selectAll(".sszvis-ruler__label").data(t,i);var d=h.enter().append("text").classed("sszvis-ruler__label",true);h.exit().remove();h=h.merge(d);var p=o($t,r.x);var v=o($t,r.y);var m=n.selectAll(".sszvis-ruler__label, .sszvis-ruler__label-outline").attr("transform",(function(t){var e=p(t);var n=v(t);var i=r.flip(t)?-10:10;var a=n<r.top+a?2*a:n>r.bottom-a?0:5;return St(e+i,n+a)})).style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).html(r.label);if(r.reduceOverlap){var g=2;var y=10;var _=[];var b={};m.attr("y","");h.each((function(t){var e=this.getBoundingClientRect();var n={top:e.top,bottom:e.bottom,dy:0};_.push(n);b[i(t)]=n}));_.sort((function(t,n){return e.ascending(t.top,n.top)}));while(y--){_.forEach((function(t,e){_.slice(e+1).forEach((function(e){var n=t.bottom-e.top;if(n>=g){var r=n/2;t.bottom-=r;t.top-=r;t.dy-=r;e.bottom+=r;e.top+=r;e.dy+=r}}))}))}m.attr("y",(function(t){var e=b[i(t)];return e.dy}))}}))}var Xt=3;var Vt=4;var Zt=6;var Qt=5;function Jt(){var t=Kt();return mt().delegate("header",t).delegate("body",t).delegate("orientation",t).delegate("dx",t).delegate("dy",t).delegate("opacity",t).prop("renderInto").prop("visible",C).visible(false).renderSelection((function(e){var n=e.props();var r=n.renderInto.node().getBoundingClientRect();var i=[];e.each((function(t){if(n.visible(t)){var e=this.getBoundingClientRect();var a=[e.left-r.left,e.top-r.top];i.push({datum:t,x:a[0],y:a[1]})}}));n.renderInto.datum(i).call(t)}))}var Kt=function t(){return mt().prop("header").prop("body").prop("orientation",C).orientation("bottom").prop("dx",C).dx(1).prop("dy",C).dy(1).prop("opacity",C).opacity(1).renderSelection((function(t){var n=t.datum();var r=t.props();var i=l;var a=i(r.header)&&!i(r.body)||!i(r.header)&&i(r.body);var o=t.selectAll(".sszvis-tooltip").data(n);o.exit().remove();var s=o.enter().append("div");o=o.merge(s);o.style("pointer-events","none").style("opacity",r.opacity).style("padding-top",(function(t){return r.orientation(t)==="top"?Zt+"px":null})).style("padding-right",(function(t){return r.orientation(t)==="right"?Zt+"px":null})).style("padding-bottom",(function(t){return r.orientation(t)==="bottom"?Zt+"px":null})).style("padding-left",(function(t){return r.orientation(t)==="left"?Zt+"px":null})).classed("sszvis-tooltip",true);var u=s.append("svg").attr("class","sszvis-tooltip__background").attr("height",0).attr("width",0);var c=u.append("path");if(ne()){var f=u.append("filter").attr("id","sszvisTooltipShadowFilter").attr("height","150%");f.append("feGaussianBlur").attr("in","SourceAlpha").attr("stdDeviation",2);f.append("feComponentTransfer").append("feFuncA").attr("type","linear").attr("slope",.2);var h=f.append("feMerge");h.append("feMergeNode");h.append("feMergeNode").attr("in","SourceGraphic");c.attr("filter","url(#sszvisTooltipShadowFilter)")}else{u.classed("sszvis-tooltip__background--fallback",true)}var d=s.append("div").classed("sszvis-tooltip__content",true);d.append("div").classed("sszvis-tooltip__header",true);d.append("div").classed("sszvis-tooltip__body",true);o.select(".sszvis-tooltip__header").datum(k("datum")).html(r.header||C(""));o.select(".sszvis-tooltip__body").datum(k("datum")).html((function(t){var e=r.body?C(r.body)(t):"";return Array.isArray(e)?te(e):e}));t.selectAll(".sszvis-tooltip").classed("sszvis-tooltip--small",a).each((function(t){var n=e.select(this);var i=n.node().getBoundingClientRect();var o=r.orientation.apply(this,arguments);switch(o){case"top":n.style("left",t.x-i.width/2+"px").style("top",t.y+r.dy(t)+"px");break;case"bottom":n.style("left",t.x-i.width/2+"px").style("top",t.y-r.dy(t)-i.height+"px");break;case"left":n.style("left",t.x+r.dx(t)+"px").style("top",t.y-i.height/2+"px");break;case"right":n.style("left",t.x-r.dx(t)-i.width+"px").style("top",t.y-i.height/2+"px");break}var s=i.height+2*Qt;var l=i.width+2*Qt;n.select(".sszvis-tooltip__background").attr("height",s).attr("width",l).style("left",-Qt+"px").style("top",-Qt+"px").select("path").attr("d",ee([Qt,Qt],[l-Qt,s-Qt],o,a?Xt:Vt))}))}))};function te(t){var e=t.map((function(t){return"<tr>"+t.map((function(t){return"<td>"+t+"</td>"})).join("")+"</tr>"})).join("");return'<table class="sszvis-tooltip__body__table">'+e+"</table>"}function ee(t,e,n,r){switch(n){case"top":t[1]=t[1]+Zt;break;case"bottom":e[1]=e[1]-Zt;break;case"left":t[0]=t[0]+Zt;break;case"right":e[0]=e[0]-Zt;break}function i(t){return t[0]}function a(t){return t[1]}function o(t,e,n,r,i,a,o){var s=n+(i-n)/2;var l=r+(a-r)/2;var u=["Q",t,e,n,r];var c=[];if(o&&r===a){if(n<i){c=["L",s-Zt,l,"L",s,l-Zt,"L",s+Zt,l]}else{c=["L",s+Zt,l,"L",s,l+Zt,"L",s-Zt,l]}}else if(o&&n===i){if(r<a){c=["L",s,l-Zt,"L",s+Zt,l,"L",s,l+Zt]}else{c=["L",s,l+Zt,"L",s-Zt,l,"L",s,l-Zt]}}var f=["L",i,a];return[].concat(u,c,f)}return[["M",i(t),a(t)+r],o(i(t),a(t),i(t)+r,a(t),i(e)-r,a(t),n==="top"),o(i(e),a(t),i(e),a(t)+r,i(e),a(e)-r,n==="right"),o(i(e),a(e),i(e)-r,a(e),i(t)+r,a(e),n==="bottom"),o(i(t),a(e),i(t),a(e)-r,i(t),a(t)+r,n==="left")].map((function(t){return t.join(" ")})).join(" ")}function ne(){return window["SVGFEColorMatrixElement"]!==undefined&&SVGFEColorMatrixElement.SVG_FECOLORMATRIX_TYPE_SATURATE==2}function re(t,e){var n=Math.min(e.innerWidth*1/4,100);var r=Math.max(e.innerWidth*3/4,e.innerWidth-100);return function(e){var i=e.x;return i>r?"right":i<n?"left":t}}function ie(t,e){var n=he(e);return h((function(t){return oe(t,n)}),t)}function ae(t,e){var n=function t(n){return n.name===e};return h(n,t)}function oe(t,e){var n=t.measurement;var r=he(e);return r.width<=n.width&&r.screenHeight<=n.screenHeight}function se(t,e){var n=he(e);return t.filter((function(t){return oe(t,n)}))}function le(t){return t.map(de).concat(de({name:"_"}))}var ue=function(){var t=le([{name:"palm",width:540},{name:"lap",width:749}]);return function(){return t}}();var ce=pe("palm");var fe=pe("lap");function he(t){var e=M("width",Infinity);var n=M("screenHeight",Infinity);return{width:e(t),screenHeight:n(t)}}function de(t){var e;if(l(t.measurement)){e=he(t.measurement)}else{e=he({width:t.width,screenHeight:t.screenHeight})}return{name:t.name,measurement:e}}function pe(t){return function(e){return oe(ae(ue(),t),e)}}function ve(t,e){var n=t/e;return function(t){return t/n}}var me=ve(4,3);var ge=ve(16,10);var ye=500;var _e=function t(e){return Math.min(ve(12,5)(e),ye)};_e.MAX_HEIGHT=ye;var be=420;var xe=function t(e){return Math.min(ve(1,1)(e),be)};xe.MAX_HEIGHT=be;var we=600;var $e=function t(e){return Math.min(ve(4,5)(e),we)};$e.MAX_HEIGHT=we;var ke={palm:me,lap:ge,_:_e};var Me=function t(e){var n=ie(ue(),e);var r=ke[n.name];return r(e.width)};var Se=Ee("warn");var ze=Ee("error");function Ee(t){return function(){if(console&&console[t]){Ce(arguments).forEach((function(e){console[t](e)}))}}}function Ce(t){return Array.prototype.slice.call(t)}var Ae=function t(e){return e.rangeExtent?e.rangeExtent():Re(e.range())};function Re(t){var e=t[0],n=t[t.length-1];return e<n?[e,n]:[n,e]}function Te(t,n,r,i){r=r||5;i=(i||5)-2;var a=n;n=n-r*2;var o=[];t.each((function(){var t=e.select(this);var s=t.text().split(/[ \f\n\r\t\v]+/).reverse();var l;var u=[];var c=0;var f=1.1;var h;var d=t.attr("y");var p=parseFloat(t.attr("dy"));var v=1;var m=t.style("text-anchor")||"start";if(isNaN(p))p=0;var g=e.select(t.node().parentNode).classed("tick");if(g){switch(m){case"start":h=-n/2;break;case"middle":h=0;break;case"end":h=n/2;break}}else{switch(m){case"start":h=r;break;case"middle":h=a/2;break;case"end":h=a-r;break}}d=+(null===d?i:d);var y=t.text(null).append("tspan").attr("x",h).attr("y",d).attr("dy",p+"em");while(s.length>0){l=s.pop();u.push(l);y.text(u.join(" "));if(y.node().getComputedTextLength()>n&&u.length>1){u.pop();y.text(u.join(" "));u=[l];y=t.append("tspan").attr("x",h).attr("y",d).attr("dy",++c*f+p+"em").text(l);++v}}o.push(v)}));return o}var Ne=8;var Pe=12;var Le=10;var Fe=function t(){var n=mt().prop("scale").prop("orient").prop("ticks").prop("tickValues").prop("tickSize").prop("tickSizeInner").prop("tickSizeOuter").prop("tickPadding").prop("tickFormat").prop("_scale").prop("orient").orient("bottom").prop("alignOuterLabels").alignOuterLabels(false).prop("contour").prop("hideBorderTickThreshold").hideBorderTickThreshold(Ne).prop("hideLabelThreshold").hideLabelThreshold(Le).prop("highlightTick",C).prop("showZeroY").showZeroY(false).prop("slant").prop("textWrap").prop("tickLength").prop("title").prop("titleAnchor").prop("titleCenter").prop("dxTitle").prop("dyTitle").prop("titleVertical").prop("vertical").vertical(false).prop("yOffset").yOffset(0).render((function(){var t=e.select(this);var n=t.props();var r=!n.vertical&&n.orient==="bottom";var i=function(){switch(n.orient){case"bottom":return e.axisBottom();case"top":return e.axisTop();case"left":return e.axisLeft();case"right":return e.axisRight()}}();["scale","ticks","tickValues","tickSizeInner","tickSizeOuter","tickPadding","tickFormat","tickSize"].forEach((function(t){if(n[t]!==undefined){if(i[t]===undefined){throw new Error('axis: "'+t+'" not available')}i[t](n[t])}}));if(n._scale){i.scale(n._scale)}var a=t.selectGroup("sszvis-axis").classed("sszvis-axis",true).classed("sszvis-axis--top",!n.vertical&&n.orient==="top").classed("sszvis-axis--bottom",r).classed("sszvis-axis--vertical",n.vertical).attr("transform",St(0,n.yOffset)).call(i);a.attr("fill",null).attr("font-size",null).attr("font-family",null);var o=i.scale();var s=a.selectAll("g.tick");var u=s.selectAll("text");s.each((function(){var t=Mt(this.getAttribute("transform"));var n=$t(0)-t[0];var i=$t(r?2:0)+t[1];e.select(this).select("line").attr("transform",St(n,i))}));u.each((function(){if(n.orient==="top"||n.orient==="bottom"){e.select(this).attr("dx","-0.5")}if(n.orient==="left"||n.orient==="right"){e.select(this).attr("y","-0.5")}}));a.selectAll("path.domain");var c=Ae(o);s.selectAll("line").each((function(t){var r=o(t),i=e.select(this);i.classed("hidden",!i.classed("sszvis-axis__longtick")&&(Be(r,c[0])<n.hideBorderTickThreshold||Be(r,c[1])<n.hideBorderTickThreshold))}));if(l(n.tickLength)){var f=e.extent(o.domain());var h=s.filter((function(t){return!E(t,f[0])&&!E(t,f[1])}));var d=n.orient;var p=2;if(d==="left"||d==="right"){h.selectAll("text").each((function(){p=Math.max(this.getBoundingClientRect().width,p)}));p+=2}var v=h.selectAll("line.sszvis-axis__longtick").data([0]);if(n.tickLength>p){var m=v.enter().append("line").classed("sszvis-axis__longtick",true);v=v.merge(m);if(d==="top"){v.attr("y1",p).attr("y2",n.tickLength)}else if(d==="bottom"){v.attr("y1",-p).attr("y2",-n.tickLength)}else if(d==="left"){v.attr("x1",-p).attr("x2",-n.tickLength)}else if(d==="right"){v.attr("x1",p).attr("x2",n.tickLength)}}else{v.remove()}}if(n.alignOuterLabels){var g=Ae(o);var y=g[0];var _=g[1];u.style("text-anchor",(function(t){var e=o(t);if(Be(e,y)<Pe){return"start"}else if(Be(e,_)<Pe){return"end"}return"middle"}))}if(l(n.textWrap)){u.call(Te,n.textWrap)}if(n.slant){u.call(He[n.orient][n.slant])}if(n.highlightTick){var b=[];var x=[];u.classed("hidden",false).classed("active",n.highlightTick);if(n.hideLabelThreshold>0&&!n.slant){u.each((function(t){var e=this.getBoundingClientRect();var r={node:this,bounds:{top:e.top,right:e.right,bottom:e.bottom,left:e.left}};if(n.highlightTick(t)){r.bounds.left-=n.hideLabelThreshold;r.bounds.right+=n.hideLabelThreshold;b.push(r)}else{x.push(r)}}));b.forEach((function(t){x.forEach((function(n){e.select(n.node).classed("hidden",qe(n.bounds,t.bounds))}))}))}}if(n.title){var w=a.selectAll(".sszvis-axis__title").data([n.title]);var $=w.enter().append("text").classed("sszvis-axis__title",true);w.exit().remove();w.merge($).text((function(t){return t})).attr("transform",(function(){var t=n.orient,e=Ae(o),r;if(n.titleCenter){r={left:t==="left"||t==="right"?0:t==="top"||t==="bottom"?(e[0]+e[1])/2:0,top:t==="left"||t==="right"?(e[0]+e[1])/2:t==="top"?0:t==="bottom"?32:0}}else{r={left:t==="left"||t==="right"||t==="top"?0:t==="bottom"?e[1]:0,top:t==="left"||t==="right"||t==="top"?0:t==="bottom"?32:0}}r.vertical=!!n.titleVertical;r.left+=n.dxTitle||0;r.top+=n.dyTitle||0;return"translate("+r.left+", "+r.top+") rotate("+(r.vertical?"-90":"0")+")"})).style("text-anchor",(function(){var t=n.orient;if(typeof n.titleAnchor!=="undefined"){return n.titleAnchor}else if(t==="left"){return"end"}else if(t==="right"){return"start"}else if(t==="top"||t==="bottom"){return"end"}}))}if(n.contour&&n.slant){Se("Can't apply contour to slanted labels")}else if(n.contour){s.each((function(){var t=e.select(this);var n=t.select("text").node();var r=t.select(".sszvis-axis__label-contour");if(r.empty()){r=e.select(n.cloneNode()).classed("sszvis-axis__label-contour",true);this.insertBefore(r.node(),n)}r.text(n.textContent)}))}}));return n};var De=function t(e){var n=this.scale().domain(),r=[],i=Math.round(n.length/e);if(typeof n[0]!=="undefined")r.push(n[0]);for(var a=i,o=n.length;a<o-1;a+=i){if(typeof n[a]!=="undefined")r.push(n[a])}if(typeof n[n.length-1]!=="undefined")r.push(n[n.length-1]);this.tickValues(r);return e};var Ie=function t(){return Fe().yOffset(2).ticks(3).tickSizeInner(4).tickSizeOuter(6.5).tickPadding(6).tickFormat(a(1,It))};Ie.time=function(){return Ie().tickFormat(Pt).alignOuterLabels(true)};Ie.ordinal=function(){return Ie().prop("ticks",De).tickFormat(Ht)};Ie.pyramid=function(){return Ie().ticks(10).prop("scale",(function(t){var e=t.copy(),n=e.domain(),r=e.range();e.domain([-n[1],n[1]]).range([r[0]-r[1],r[0]+r[1]]);this._scale(e);return e})).tickFormat((function(t){return It(Math.abs(t))}))};var Oe=function t(){var e=Fe().ticks(6).tickSize(0,0).tickPadding(0).tickFormat((function(t){return 0===t&&!e.showZeroY()?null:It(t)})).vertical(true);return e};Oe.time=function(){return Oe().tickFormat(Pt)};Oe.ordinal=function(){return Oe().prop("ticks",De).tickFormat(Ht)};function Be(t,e){return Math.abs(t-e)}function qe(t,e){return!(e.left>t.right||e.right<t.left||e.top>t.bottom||e.bottom<t.top)}var He={top:{horizontal:function t(e){e.style("text-anchor","middle").attr("dx","-0.5").attr("dy","0.71em").attr("transform",null)},vertical:function t(e){e.style("text-anchor","start").attr("dx","0em").attr("dy","0.35em").attr("transform","rotate(-90)")},diagonal:function t(e){e.style("text-anchor","start").attr("dx","0.1em").attr("dy","0.1em").attr("transform","translate(-0.5) rotate(-45)")}},bottom:{horizontal:function t(e){e.style("text-anchor","middle").attr("dx","-0.5").attr("dy","0.71em").attr("transform",null)},vertical:function t(e){e.style("text-anchor","end").attr("dx","-1em").attr("dy","-0.75em").attr("transform","rotate(-90)")},diagonal:function t(e){e.style("text-anchor","end").attr("dx","-0.8em").attr("dy","0em").attr("transform","rotate(-45)")}}};function Ue(){var t=e.dispatch("start","move","drag","end");var n=mt().prop("debug").prop("xScale").prop("yScale").prop("draggable").prop("cancelScrolling",C).cancelScrolling(false).prop("fireOnPanOnly",C).fireOnPanOnly(false).prop("padding",(function(t){var e={top:0,left:0,bottom:0,right:0};for(var n in t){e[n]=t[n]}return e})).padding({}).render((function(){var n=e.select(this);var r=n.props();var i=Ae(r.xScale).sort(e.ascending);var a=Ae(r.yScale).sort(e.ascending);i[0]-=r.padding.left;i[1]+=r.padding.right;a[0]-=r.padding.top;a[1]+=r.padding.bottom;var o=n.selectAll("[data-sszvis-behavior-move]").data([0]);var s=o.enter().append("rect").attr("data-sszvis-behavior-move","").attr("class","sszvis-interactive");o=o.merge(s);if(r.draggable){o.classed("sszvis-interactive--draggable",true)}o.attr("x",i[0]).attr("y",a[0]).attr("width",i[1]-i[0]).attr("height",a[1]-a[0]).attr("fill","transparent").on("mouseover",(function(){t.apply("start",this,arguments)})).on("mousedown",(function(){var n=this;var i=e.select(document);var a=e.select(window);var o=function i(){var a=e.mouse(n);var o=je(r.xScale,a[0]);var s=je(r.yScale,a[1]);e.event.preventDefault();t.apply("drag",this,[o,s])};var s=function t(){n.__dragging__=true;o()};var l=function e(){n.__dragging__=false;a.on("mouseup.sszvis-behavior-move",null);a.on("mousemove.sszvis-behavior-move",null);i.on("mouseout.sszvis-behavior-move",null);t.apply("end",this,arguments)};a.on("mousemove.sszvis-behavior-move",o);a.on("mouseup.sszvis-behavior-move",l);i.on("mouseout.sszvis-behavior-move",(function(){var t=e.event.relatedTarget||e.event.toElement;if(!t||t.nodeName==="HTML"){l()}}));s()})).on("mousemove",(function(){var n=this;var i=e.mouse(this);var a=je(r.xScale,i[0]);var o=je(r.yScale,i[1]);if(!n.__dragging__){t.apply("move",this,[a,o])}})).on("mouseout",(function(){t.apply("end",this,[])})).on("touchstart",(function(){var n=d(e.touches(this));var i=je(r.xScale,n[0]);var a=je(r.yScale,n[1]);var o=r.cancelScrolling(i,a);if(o){e.event.preventDefault()}if(!r.fireOnPanOnly()||o){t.apply("start",this,[i,a]);t.apply("drag",this,[i,a]);t.apply("move",this,[i,a]);var s=function n(){var i=d(e.touches(this));var a=je(r.xScale,i[0]);var o=je(r.yScale,i[1]);var s=r.cancelScrolling(a,o);if(s){e.event.preventDefault()}if(!r.fireOnPanOnly()||s){t.apply("drag",this,[a,o]);t.apply("move",this,[a,o])}else{t.apply("end",this,[])}};var l=function n(){t.apply("end",this,[]);e.select(this).on("touchmove",null).on("touchend",null)};e.select(this).on("touchmove",s).on("touchend",l)}}));if(r.debug){o.attr("fill","rgba(255,0,0,0.2)")}}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function je(t,e){var n=t.invert?"Linear":t.paddingInner?"Band":"Point";switch(n){case"Linear":{return t.invert(e)}case"Band":return Ye(t,e);case"Point":return We(t,e);default:{throw new Error("Unknown scale type, could not invert")}}}function Ye(t,e){var n=t.step();var r=t.paddingOuter()*n;var i=t.paddingInner()*n;var a=t.bandwidth();var o=t.range();var s=t.domain();if(s.length===1){if(o[0]<=e&&o[1]>=e){return s[0]}return null}var l=s.map((function(t,e){if(e===0){return[o[0],o[0]+r+a+i/2]}else if(e===s.length-1){return[o[1]-(r+a+i/2),o[1]]}else{return[o[0]+r+e*n-i/2,o[0]+r+(e+1)*n-i/2]}}));for(var u=0,c=l.length;u<c;u++){if(l[u][0]<e&&e<=l[u][1]){return s[u]}}return null}function We(t,e){var n=t.step();var r=t.padding()*n;var i=t.range();var a=t.domain();if(a.length===1){if(i[0]<=e&&i[1]>=e){return a[0]}return null}var o=a.map((function(t,e){if(e===0){return[i[0],i[0]+r+n/2]}else if(e===a.length-1){return[i[1]-(r+n/2),i[1]]}else{return[i[0]+r+e*n-n/2,i[0]+r+e*n+n/2]}}));for(var s=0,l=o.length;s<l;s++){if(o[s][0]<e&&e<=o[s][1]){return a[s]}}return null}var Ge=function t(e){if(!_(e)&&l(e)){return document.elementFromPoint(e.clientX,e.clientY)}return null};var Xe=function t(n){if(!_(n)){var r=e.select(n);if(!_(r.attr("data-sszvis-behavior-pannable"))){var i=r.datum();if(l(i)){return i}}}return null};var Ve=function t(e){return Xe(Ge(e))};function Ze(){var t=e.dispatch("start","pan","end");var n=mt().prop("elementSelector").render((function(){var n=e.select(this);var r=n.props();var i=n.selectAll(r.elementSelector);i.attr("data-sszvis-behavior-pannable","").classed("sszvis-interactive",true).on("mouseenter",(function(){t.apply("start",this,arguments)})).on("mousemove",(function(){t.apply("pan",this,arguments)})).on("mouseleave",(function(){t.apply("end",this,arguments)})).on("touchstart",(function(){e.event.preventDefault();t.apply("start",this,arguments)})).on("touchmove",(function(){e.event.preventDefault();var n=Ve(v(e.event));if(n!==null){t.apply("pan",this,arguments)}else{t.apply("end",this,arguments)}})).on("touchend",(function(){t.apply("end",this,arguments)}))}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function Qe(){var t=e.dispatch("over","out");var n=mt().prop("x").prop("y").prop("bounds").prop("debug").render((function(n){var r=e.select(this);var i=r.props();if(!i.bounds){ze("behavior.voronoi - requires bounds");return false}var a=e.voronoi().x(i.x).y(i.y).extent(i.bounds);var o=r.selectAll("[data-sszvis-behavior-voronoi]").data(a.polygons(n));var s=o.enter().append("path").attr("data-sszvis-behavior-voronoi","").attr("data-sszvis-behavior-pannable","").attr("class","sszvis-interactive");o.exit().remove();o=o.merge(s);o.attr("d",(function(t){return"M"+t.join("L")+"Z"})).attr("fill","transparent").on("mouseover",(function(n){var r=this.parentNode.getBoundingClientRect();if(Ke(e.event,[r.left+i.x(n.data),r.top+i.y(n.data)])){t.apply("over",this,[n.data])}})).on("mousemove",(function(n){var r=this.parentNode.getBoundingClientRect();if(Ke(e.event,[r.left+i.x(n.data),r.top+i.y(n.data)])){t.apply("over",this,[n.data])}else{t.apply("out",this,[])}})).on("mouseout",(function(){t.apply("out",this,[])})).on("touchstart",(function(n){var r=this.parentNode.getBoundingClientRect();if(Ke(v(e.event),[r.left+i.x(n.data),r.top+i.y(n.data)])){e.event.preventDefault();t.apply("over",this,[n.data]);var a=function n(){var r=v(e.event);var a=Ge(r);var o=Xe(a);if(o!==null){var s=a.parentNode.getBoundingClientRect();if(Ke(r,[s.left+i.x(o.data),s.top+i.y(o.data)])){if(e.event.cancelable){e.event.preventDefault()}t.apply("over",this,[o.data])}else{t.apply("out",this,[])}}else{t.apply("out",this,[])}};var o=function n(){t.apply("out",this,[]);e.select(this).on("touchmove",null).on("touchend",null)};e.select(this).on("touchmove",a).on("touchend",o)}}));if(i.debug){o.attr("stroke","#f00")}}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}var Je=Math.pow(15,2);function Ke(t,e){var n=t.clientX-e[0];var r=t.clientY-e[1];return n*n+r*r<Je}var tn=function t(n){var a;if(r(n)){a=e.select(n).node()}else if(i(n)){a=n.node()}else{a=n}return{width:a?a.getBoundingClientRect().width:undefined,screenWidth:window.innerWidth,screenHeight:window.innerHeight}};var en=function(){var t=document.createElement("canvas");var e=t.getContext("2d");var n={};return function(t,r,i){var a=[t,r,i].join("-");e.font=t+"px "+r;return n[a]||(n[a]=e.measureText(i).width)}}();var nn=function t(e){return en(10,"Arial, sans-serif",e)};var rn=function t(e){return en(12,"Arial, sans-serif",e)};var an=516;function on(t,n){var r=null,a=null;if(arguments.length===0){r={}}else if(arguments.length===1){if(x(t)){r=t}else if(i(t)){r={};a=t}else{r={};a=e.select(t)}}else{r=t;if(i(n)){a=n}else{a=e.select(n)}}var o={top:ln(r.top,0),right:ln(r.right,1),bottom:ln(r.bottom,0),left:ln(r.left,1)};var s=l(a)?tn(a):{width:an};var u=ln(r.width,s.width);var c=Me(s);var f=ln(r.height,c+o.top+o.bottom);return{innerHeight:f-o.top-o.bottom,innerWidth:u-o.left-o.right,padding:o,height:f,width:u,screenWidth:s.screenWidth,screenHeight:s.screenHeight}}var sn=16/9;function ln(t,e){return typeof t==="undefined"?e:t}function un(t,e){var n={},r;for(var i=0,a=t.length,o;i<a;++i){o=t[i];r=e(o);n[r]?n[r].push(o):n[r]=[o]}return n}function cn(t,e){for(var n in t){e(t[n],n)}}function fn(t,e){for(var n=0,r=t.length;n<r;++n){e(t[n],n)}}function hn(){var t={},e=[],n=[],r;function i(t,a){if(a>=e.length){if(r)t.sort(r);return t}var o=n[a];var s=e[a++];var l=un(t,s.func);if(s.type==="obj"){var u={};cn(l,(function(t,e){u[e]=i(t,a)}));return u}else if(s.type==="arr"){var c=[];if(o){var f=Object.keys(l).sort(o);fn(f,(function(t){c.push(i(l[t],a))}))}else{cn(l,(function(t){c.push(i(t,a))}))}return c}}t.apply=function(t){return i(t,0)};t.objectBy=function(n){e.push({type:"obj",func:n});return t};t.arrayBy=function(r,i){e.push({type:"arr",func:r});if(i)n[e.length-1]=i;return t};t.sort=function(e){r=e;return t};return t}var dn=e.easePolyOut;var pn=function t(){return e.transition().ease(dn).duration(300)};var vn=function t(){return e.transition().ease(dn).duration(50)};var mn=function t(){return e.transition().ease(dn).duration(500)};function gn(t){return isNaN(t)?0:t}function yn(){return mt().prop("x",C).prop("y",C).prop("width",C).prop("height",C).prop("fill",C).prop("stroke",C).prop("centerTooltip").prop("tooltipAnchor").prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=o(gn,r.x);var a=o(gn,r.y);var s=o(gn,r.width);var l=o(gn,r.height);var u=n.selectAll(".sszvis-bar").data(t);u.exit().remove();u.enter().append("rect").classed("sszvis-bar",true).attr("x",i).attr("y",a).attr("width",s).attr("height",l).merge(u).attr("fill",r.fill).attr("stroke",r.stroke);if(r.transition){u=u.transition(pn())}u.attr("x",i).attr("y",a).attr("width",s).attr("height",l);var c;if(r.centerTooltip){c=function t(e){return[i(e)+s(e)/2,a(e)+l(e)/2]}}else if(r.tooltipAnchor){var f=r.tooltipAnchor.map(parseFloat);c=function t(e){return[i(e)+f[0]*s(e),a(e)+f[1]*l(e)]}}else{c=function t(e){return[i(e)+s(e)/2,a(e)]}}var h=zt().position(c);n.call(h)}))}function _n(){return mt().prop("x",C).prop("y",C).prop("radius").prop("stroke").prop("fill").prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=n.selectAll(".sszvis-circle").data(t);i.exit().remove();i.enter().append("circle").classed("sszvis-circle",true).attr("cx",r.x).attr("cy",r.y).attr("r",r.radius).merge(i).attr("stroke",r.stroke).attr("fill",r.fill);if(r.transition){i=i.transition(pn())}i.attr("cx",r.x).attr("cy",r.y).attr("r",r.radius);var a=zt().position((function(t){return[r.x(t),r.y(t)]}));n.call(a)}))}function bn(){return mt().prop("groupScale").prop("groupSize").prop("groupWidth").prop("groupSpace").groupSpace(.05).prop("y",C).prop("height").prop("fill").prop("stroke").prop("defined",C).defined(true).render((function(t){var n=e.select(this);var r=n.props();var i=e.scaleBand().domain(e.range(r.groupSize)).padding(r.groupSpace).paddingOuter(0).rangeRound([0,r.groupWidth]);var a=n.selectAll("g.sszvis-bargroup").data(t);var o=a.enter().append("g").classed("sszvis-bargroup",true);a.exit().remove();a=a.merge(o);var s=a.selectAll("g.sszvis-barunit").data((function(t){return t}));var l=s.enter().append("g").classed("sszvis-barunit",true);s.exit().remove();s=s.merge(l);s.each((function(t,e){t.__sszvisGroupedBarIndex__=e}));var u=s.filter(r.defined);u.selectAll("*").remove();u.attr("transform",(function(){return St(0,0)}));u.append("rect").classed("sszvis-bar",true).attr("fill",r.fill).attr("x",(function(t){return r.groupScale(t)+i(t.__sszvisGroupedBarIndex__)})).attr("y",r.y).attr("width",i.bandwidth()).attr("height",r.height);var c=s.filter($(r.defined));c.selectAll("*").remove();c.attr("transform",(function(t,e){return St(r.groupScale(t)+i(t.__sszvisGroupedBarIndex__)+i.bandwidth()/2,r.y(t,e))}));c.append("line").classed("sszvis-bar--missing line1",true).attr("x1",-4).attr("y1",-4).attr("x2",4).attr("y2",4);c.append("line").classed("sszvis-bar--missing line2",true).attr("x1",4).attr("y1",-4).attr("x2",-4).attr("y2",4);var f=zt().position((function(t){var e=0;var n=Infinity;t.forEach((function(t,a){e+=r.groupScale(t)+i(t.__sszvisGroupedBarIndex__)+i.bandwidth()/2;n=Math.min(n,r.y(t,a))}));var a=e/t.length;return[a,n]}));n.call(f)}))}function xn(){return mt().prop("x").prop("y").prop("stroke").prop("strokeWidth").prop("defined").prop("key").key((function(t,e){return e})).prop("valuesAccessor").valuesAccessor(n).prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=e.line().defined(r.defined!==undefined?r.defined:o($(isNaN),r.y)).x(r.x).y(r.y);var a=n.selectAll(".sszvis-line").data(t,r.key);var s=a.enter().append("path").classed("sszvis-line",true).style("stroke",r.stroke);a=a.merge(s);a.exit().remove();a.order();if(r.transition){a=a.transition(pn())}a.attr("d",o(i,r.valuesAccessor)).style("stroke",r.stroke).style("stroke-width",r.strokeWidth)}))}function wn(){return mt().prop("radius").prop("fill").prop("stroke").prop("angle",C).render((function(t){var n=e.select(this);var r=n.props();var i=0;t.forEach((function(t){t._a0=i;if(isNaN(t.a0))t.a0=i;i+=r.angle(t);t._a1=i;if(isNaN(t.a1))t.a1=i}));var a=e.arc().innerRadius(4).outerRadius(r.radius).startAngle((function(t){return t.a0})).endAngle((function(t){return t.a1}));var o=n.selectAll(".sszvis-path").each((function(e,n){if(t[n]){t[n].a0=e.a0;t[n].a1=e.a1}})).data(t);var s=o.enter().append("path").classed("sszvis-path",true).attr("transform","translate("+r.radius+","+r.radius+")").attr("fill",r.fill).attr("stroke",r.stroke);o.exit().remove();o=o.merge(s);o.transition(pn()).attr("transform","translate("+r.radius+","+r.radius+")").attrTween("d",(function(t){var n=e.interpolate(t.a0,t._a0);var r=e.interpolate(t.a1,t._a1);return function(e){t.a0=n(e);t.a1=r(e);return a(t)}})).attr("fill",r.fill).attr("stroke",r.stroke);var l=zt().position((function(t){var e=t.a0+Math.abs(t.a1-t.a0)/2-Math.PI/2;var n=r.radius*2/3;return[r.radius+Math.cos(e)*n,r.radius+Math.sin(e)*n]}));n.datum(t).call(l)}))}var $n=.5;function kn(){return mt().prop("barHeight",C).prop("barWidth",C).prop("barPosition",C).prop("barFill",C).barFill("#000").prop("tooltipAnchor").tooltipAnchor([.5,.5]).prop("leftAccessor").prop("rightAccessor").prop("leftRefAccessor").prop("rightRefAccessor").render((function(t){var n=e.select(this);var r=n.props();var i=yn().x((function(t){return-$n-r.barWidth(t)})).y(r.barPosition).height(r.barHeight).width(r.barWidth).fill(r.barFill).tooltipAnchor(r.tooltipAnchor);var a=yn().x($n).y(r.barPosition).height(r.barHeight).width(r.barWidth).fill(r.barFill).tooltipAnchor(r.tooltipAnchor);var o=Mn().barPosition(r.barPosition).barWidth(r.barWidth).mirror(true);var s=Mn().barPosition(r.barPosition).barWidth(r.barWidth);n.selectGroup("left").datum(r.leftAccessor(t)).call(i);n.selectGroup("right").datum(r.rightAccessor(t)).call(a);n.selectGroup("leftReference").datum(r.leftRefAccessor?[r.leftRefAccessor(t)]:[]).call(o);n.selectGroup("rightReference").datum(r.rightRefAccessor?[r.rightRefAccessor(t)]:[]).call(s)}))}function Mn(){return mt().prop("barPosition").prop("barWidth").prop("mirror").mirror(false).render((function(t){var n=e.select(this);var r=n.props();var i=e.line().x(r.barWidth).y(r.barPosition);var a=n.selectAll(".sszvis-pyramid__referenceline").data(t);a.exit().remove();var o=a.enter().append("path").attr("class","sszvis-pyramid__referenceline");a=a.merge(o);a.attr("transform",r.mirror?"scale(-1, 1)":"").transition(pn()).attr("d",i)}))}function Sn(){return mt().prop("sizeScale").prop("columnPosition").prop("nodeThickness").prop("nodePadding").prop("columnPadding",C).prop("columnLabel",C).columnLabel("").prop("columnLabelOffset",C).columnLabelOffset(0).prop("linkCurvature").linkCurvature(.5).prop("nodeColor",C).prop("linkColor",C).prop("linkSort",C).linkSort((function(t,e){return t.value-e.value})).prop("labelSide",C).labelSide("left").prop("labelSideSwitch").prop("labelOpacity",C).labelOpacity(1).prop("labelHitBoxSize").labelHitBoxSize(0).prop("nameLabel").nameLabel(n).prop("linkSourceLabels").linkSourceLabels([]).prop("linkTargetLabels").linkTargetLabels([]).prop("linkLabel",C).render((function(t){var n=e.select(this);var r=n.props();var i=k("id");var a=function t(e){return Math.floor(r.columnPadding(e.columnIndex)+r.sizeScale(e.valueOffset)+r.nodePadding*e.nodeIndex)};var o=function t(e){return r.columnPosition(e.columnIndex)};var s=function t(e){return a(e)};var l=function t(){return Math.max(r.nodeThickness,1)};var u=function t(e){return Math.ceil(Math.max(r.sizeScale(e.value),1))};var c=function t(e,n,r,i,a,o){return"M"+e+","+a+"C"+n+","+a+" "+r+","+o+" "+i+","+o};var f=function t(e,n,r,i){return[e,n,r,i]};var h=1;var d=yn().x(o).y(s).width(l).height(u).fill(r.nodeColor);var p=n.selectGroup("nodes").datum(t.nodes);p.call(d);var v=zt().position((function(t){return[o(t)+l()/2,s(t)+u(t)/2]}));p.call(v);var m=function t(e){return r.columnPosition(e)+r.nodeThickness/2};var g=-24;var y=p.selectAll(".sszvis-sankey-column-label").data(t.columnLengths);var _=y.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-weak-label sszvis-sankey-column-label");y=y.merge(_);y.exit().remove();y.attr("transform",(function(t,e){return St(m(e)+r.columnLabelOffset(t,e),g)})).text((function(t,e){return r.columnLabel(e)}));var b=p.selectAll(".sszvis-sankey-column-label-tick").data(t.columnLengths);var x=b.enter().append("line").attr("class","sszvis-sankey-column-label-tick");b=b.merge(x);b.exit().remove();b.attr("x1",(function(t,e){return $t(m(e))})).attr("x2",(function(t,e){return $t(m(e))})).attr("y1",$t(g+8)).attr("y2",$t(g+12));var w=function t(e){var n=r.columnPosition(e.src.columnIndex)+r.nodeThickness+h,i=r.columnPosition(e.tgt.columnIndex)-h,o=a(e.src)+r.sizeScale(e.srcOffset)+r.sizeScale(e.value)/2,s=a(e.tgt)+r.sizeScale(e.tgtOffset)+r.sizeScale(e.value)/2;return[n,i,o,s]};var $=function t(n){var i=w(n),a=e.interpolateNumber(i[0],i[1]),o=a(r.linkCurvature),s=a(1-r.linkCurvature);return c(i[0],o,s,i[1],i[2],i[3])};var M=function t(e){var n=w(e);return f(n[0],n[1],n[2],n[3])};var S=function t(e){return Math.max(r.sizeScale(e.value),1)};var z=n.selectGroup("links");var E=z.selectAll(".sszvis-link").data(t.links,i);var C=E.enter().append("path").attr("class","sszvis-link");E=E.merge(C);E.exit().remove();E.attr("fill","none").attr("d",$).attr("stroke-width",S).attr("stroke",r.linkColor).sort(r.linkSort);z.datum(t.links);var A=zt().position((function(t){var e=M(t);return[(e[0]+e[1])/2,(e[2]+e[3])/2]}));z.call(A);var R=n.selectGroup("linklabels");var T=R.selectAll(".sszvis-sankey-link-source-label").data(r.linkSourceLabels);var N=T.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-strong-label sszvis-sankey-link-source-label");T=T.merge(N);T.exit().remove();T.attr("transform",(function(t){var e=M(t);return St(e[0]+6,e[2])})).text(r.linkLabel);var P=R.selectAll(".sszvis-sankey-link-target-label").data(r.linkTargetLabels);var L=P.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-strong-label sszvis-sankey-link-target-label");P=P.merge(L);P.exit().remove();P.attr("transform",(function(t){var e=M(t);return St(e[1]-6,e[3])})).text(r.linkLabel);var F=function t(e){var n=r.labelSide(e);if(r.labelSideSwitch){n=n==="left"?"right":"left"}return n};var D=n.selectGroup("nodelabels");var I=D.selectAll(".sszvis-sankey-node-label").data(t.nodes);var O=I.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-weak-label sszvis-sankey-node-label");I=I.merge(O);I.exit().remove();I.text((function(t){return r.nameLabel(t.id)})).attr("text-align","middle").attr("text-anchor",(function(t){return F(t.columnIndex)==="left"?"end":"start"})).attr("x",(function(t){return F(t.columnIndex)==="left"?o(t)-6:o(t)+r.nodeThickness+6})).attr("y",(function(t){return s(t)+u(t)/2})).style("opacity",r.labelOpacity);var B=D.selectAll(".sszvis-sankey-hitbox").data(t.nodes);var q=B.enter().append("rect").attr("class","sszvis-sankey-hitbox");B=B.merge(q);B.exit().remove();B.attr("fill","transparent").attr("x",(function(t){return o(t)+(F(t.columnIndex)==="left"?-r.labelHitBoxSize:0)})).attr("y",(function(t){return s(t)-r.nodePadding/2})).attr("width",r.labelHitBoxSize+r.nodeThickness).attr("height",(function(t){return u(t)+r.nodePadding}))}))}function zn(){return mt().prop("x").prop("y0").prop("y1").prop("fill").prop("stroke").prop("defined").prop("key").key((function(t,e){return e})).prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=function t(){return o($(isNaN),r.y0)&&o($(isNaN),r.y1)};var a=e.area().defined(r.defined!==undefined?r.defined:i).x(r.x).y0(r.y0).y1(r.y1);var s=n.selectAll("path.sszvis-path").data(t,r.key);var l=s.enter().append("path").classed("sszvis-path",true);s.exit().remove();s=s.merge(l);if(r.transition){s=s.transition(pn())}s.attr("d",a).attr("fill",r.fill).attr("stroke",r.stroke)}))}function En(){return mt().prop("x").prop("y0").prop("y1").prop("fill").prop("stroke").prop("defined").prop("key").key((function(t,e){return e})).prop("valuesAccessor").valuesAccessor(n).prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();t=t.slice().reverse();var i=function t(){return o($(isNaN),r.y0)&&o($(isNaN),r.y1)};var a=e.area().defined(r.defined!==undefined?r.defined:i).x(r.x).y0(r.y0).y1(r.y1);var s=n.selectAll("path.sszvis-path").data(t,r.key);var l=s.enter().append("path").classed("sszvis-path",true);s.exit().remove();s=l.merge(s);if(r.transition){s=s.transition(pn())}s.attr("d",o(a,r.valuesAccessor)).attr("fill",r.fill).attr("stroke",r.stroke)}))}var Cn=k("stack");var An=k("0");var Rn=k("1");function Tn(t){return function(n,r,i){return function(a){var o=hn().arrayBy(n).objectBy(r).apply(a);var s=o.reduce((function(t,e){return S(t.concat(Object.keys(e)))}),[]);var l=e.stack().keys(s).value((function(t,e){return i(t[e][0])})).order(t)(o);l.forEach((function(t){t.forEach((function(e){e.series=t.key;e.data=e.data[t.key][0];e.stack=n(e.data)}))}));l.keys=s;l.maxValue=e.max(l,(function(t){return e.max(t,(function(t){return t[1]}))}));return l}}}var Nn=Tn(e.stackOrderNone);var Pn=Tn(e.stackOrderReverse);function Ln(t){return mt().prop("xScale",C).prop("width",C).prop("yScale",C).prop("height",C).prop("fill").prop("stroke").render((function(n){var r=e.select(this);var i=r.props();var a=yn().x(t.x(i)).y(t.y(i)).width(t.width(i)).height(t.height(i)).fill(i.fill).stroke(i.stroke);var o=r.selectAll(".sszvis-stack").data(n);var s=o.enter().append("g").classed("sszvis-stack",true);o.exit().remove();o=o.merge(s);o.call(a)}))}var Fn={x:function t(e){return o(e.xScale,An)},y:function t(e){return o(e.yScale,Cn)},width:function t(e){return function(t){return e.xScale(t[1])-e.xScale(t[0])}},height:function t(e){return e.height}};var Dn=function t(){return Ln(Fn)};var In={x:function t(e){return o(e.xScale,Cn)},y:function t(e){return o(e.yScale,Rn)},width:function t(e){return e.width},height:function t(e){return function(t){return e.yScale(t[0])-e.yScale(t[1])}}};var On=function t(){return Ln(In)};var Bn=.5;var qn=k("data");var Hn=k("row");function Un(t,n,r,i){return function(a){var o=hn().arrayBy(t).arrayBy(n).objectBy(r).apply(a).map((function(n){var r=Object.keys(n[0]);var a=t(n[0][r[0]][0]);var o=e.stack().keys(r).value((function(t,e){return i(t[e][0])}))(n);o.forEach((function(t,e){t.forEach((function(t,n){t.data=t.data[r[e]][0];t.series=r[e];t.side=a;t.row=n;t.value=i(t.data);return t}))}));return o}));o.maxValue=e.max(o,(function(t){return e.max(t,(function(t){return e.max(t,(function(t){return t[1]}))}))}));return o}}function jn(){return mt().prop("barHeight",C).prop("barWidth",C).prop("barPosition",C).prop("barFill",C).barFill("#000").prop("tooltipAnchor").tooltipAnchor([.5,.5]).prop("leftAccessor").prop("rightAccessor").prop("leftRefAccessor").prop("rightRefAccessor").render((function(t){var n=e.select(this);var r=n.props();var i=yn().x((function(t){return-Bn-r.barWidth(t[1])})).y(o(r.barPosition,Hn)).height(r.barHeight).width((function(t){return r.barWidth(t[1])-r.barWidth(t[0])})).fill(o(r.barFill,qn)).tooltipAnchor(r.tooltipAnchor);var a=yn().x((function(t){return Bn+r.barWidth(t[0])})).y(o(r.barPosition,Hn)).height(r.barHeight).width((function(t){return r.barWidth(t[1])-r.barWidth(t[0])})).fill(o(r.barFill,qn)).tooltipAnchor(r.tooltipAnchor);var s=Yn().stackElement(i);var l=Yn().stackElement(a);var u=Wn().barPosition(r.barPosition).barWidth(r.barWidth).mirror(true);var c=Wn().barPosition(r.barPosition).barWidth(r.barWidth);n.selectGroup("leftStack").datum(r.leftAccessor(t)).call(s);n.selectGroup("rightStack").datum(r.rightAccessor(t)).call(l);n.selectGroup("leftReference").datum(r.leftRefAccessor?[r.leftRefAccessor(t)]:[]).call(u);n.selectGroup("rightReference").datum(r.rightRefAccessor?[r.rightRefAccessor(t)]:[]).call(c)}))}function Yn(){return mt().prop("stackElement").renderSelection((function(t){var n=t.datum();var r=t.props();var i=t.selectAll("[data-sszvis-stack]").data(n);var a=i.enter().append("g").attr("data-sszvis-stack","");i.exit().remove();i=i.merge(a);i.each((function(t){e.select(this).datum(t).call(r.stackElement)}))}))}function Wn(){return mt().prop("barPosition").prop("barWidth").prop("mirror").mirror(false).render((function(t){var n=e.select(this);var r=n.props();var i=e.line().x(r.barWidth).y(r.barPosition);var a=n.selectAll(".sszvis-path").data(t);a.exit().remove();var o=a.enter().append("path").attr("class","sszvis-path").attr("fill","none").attr("stroke","#aaa").attr("stroke-width",2).attr("stroke-dasharray","3 3");a=a.merge(o);a.attr("transform",r.mirror?"scale(-1, 1)":"").transition(pn()).attr("d",i)}))}var Gn=2*Math.PI;function Xn(){return mt().prop("angleScale").angleScale(e.scaleLinear().range([0,2*Math.PI])).prop("radiusScale").prop("centerRadius").prop("fill").prop("stroke").stroke("white").render((function(t){var n=e.select(this);var r=n.props();function i(t){if(t.data.isSunburstRoot){return"transparent"}else if(!t.parent){Se("Data passed to sszvis.component.sunburst does not have the expected tree structure. You should prepare it using sszvis.format.sunburst.prepareData");return e.hsl(r.fill(t.data.key))}else if(t.parent.data.isSunburstRoot){return e.hsl(r.fill(t.data.key))}else{var n=i(t.parent);n.l*=1.15;return n}}var a=function t(e){return Math.max(0,Math.min(Gn,r.angleScale(e.x0)))};var o=function t(e){return Math.max(0,Math.min(Gn,r.angleScale(e.x1)))};var s=function t(e){return r.centerRadius+Math.max(0,r.radiusScale(e.y0))};var l=function t(e){return r.centerRadius+Math.max(0,r.radiusScale(e.y1))};var u=e.arc().startAngle(a).endAngle(o).innerRadius(s).outerRadius(l);t.forEach((function(t){t._x0=t.x0;t._x1=t.x1}));var c=n.selectAll(".sszvis-sunburst-arc").each((function(e,n){if(t[n]){t[n].x0=e.x0;t[n].x1=e.x1}})).data(t);var f=c.enter().append("path").attr("class","sszvis-sunburst-arc");c.exit().remove();c=c.merge(f);c.attr("stroke",r.stroke).attr("fill",i);c.transition(pn()).attrTween("d",(function(t){var n=e.interpolate(t.x0,t._x0);var r=e.interpolate(t.x1,t._x1);return function(e){t.x0=n(e);t.x1=r(e);return u(t)}}));var h=zt().position((function(t){var e=a(t);var n=o(t);var r=e+Math.abs(n-e)/2-Math.PI/2;var i=(s(t)+l(t))/2;return[Math.cos(r)*i,Math.sin(r)*i]}));n.call(h)}))}function Vn(){return mt().prop("values").prop("current").prop("width").width(300).prop("change").change(n).render((function(){var t=e.select(this);var n=t.props();var r=n.width/n.values.length;var i=t.selectAll(".sszvis-control-optionSelectable").data(["sszvis-control-buttonGroup"],(function(t){return t}));var a=i.enter().append("div").classed("sszvis-control-optionSelectable",true).classed("sszvis-control-buttonGroup",true);i.exit().remove();i=i.merge(a);i.style("width",n.width+"px");var o=i.selectAll(".sszvis-control-buttonGroup__item").data(n.values);var s=o.enter().append("div").classed("sszvis-control-buttonGroup__item",true);o.exit().remove();o=o.merge(s);o.style("width",r+"px").classed("selected",(function(t){return t===n.current})).text((function(t){return t})).on("click",n.change)}))}function Zn(){return mt().prop("x",C).prop("y",C).prop("top").prop("bottom").prop("label").label(C("")).prop("color").prop("flip",C).flip(false).render((function(t){var n=e.select(this);var r=n.props();var i=o($t,r.x);var a=o($t,r.y);var s=r.bottom-4;var l=10;var u=24;var c=r.top-u;var f=n.selectAll(".sszvis-handleRuler__group").data([0]);var h=f.enter().append("g").classed("sszvis-handleRuler__group",true);f.exit().remove();f=f.merge(h);h.append("line").classed("sszvis-ruler__rule",true);h.append("rect").classed("sszvis-handleRuler__handle",true);h.append("line").classed("sszvis-handleRuler__handle-mark",true);f.selectAll(".sszvis-ruler__rule").attr("x1",i).attr("y1",$t(r.top)).attr("x2",i).attr("y2",$t(s));f.selectAll(".sszvis-handleRuler__handle").attr("x",(function(t){return i(t)-l/2})).attr("y",$t(c)).attr("width",l).attr("height",u).attr("rx",2).attr("ry",2);f.selectAll(".sszvis-handleRuler__handle-mark").attr("x1",i).attr("y1",$t(c+u*.15)).attr("x2",i).attr("y2",$t(c+u*.85));var d=f.selectAll(".sszvis-ruler__dot").data(t);var p=d.enter().append("circle").classed("sszvis-ruler__dot",true);d.exit().remove();d=d.merge(p);d.attr("cx",i).attr("cy",a).attr("r",3.5).attr("fill",r.color);var v=n.selectAll(".sszvis-ruler__label-outline").data(t);var m=v.enter().append("text").classed("sszvis-ruler__label-outline",true);v.exit().remove();v=v.merge(m);var g=n.selectAll(".sszvis-ruler__label").data(t);var y=g.enter().append("text").classed("sszvis-ruler__label",true);g.exit().remove();g=g.merge(y);n.selectAll(".sszvis-ruler__label, .sszvis-ruler__label-outline").attr("transform",(function(t){var e=o($t,r.x)(t);var n=o($t,r.y)(t);var i=r.flip(t)?-10:10;var a=n<r.top+a?2*a:n>r.bottom-a?0:5;return St(e+i,n+a)})).style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).html(r.label)}))}function Qn(){return mt().prop("values").prop("current").prop("width").width(300).prop("change").change(n).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-control-optionSelectable").data(["sszvis-control-select"],(function(t){return t}));var i=r.enter().append("div").classed("sszvis-control-optionSelectable",true).classed("sszvis-control-select",true);r.exit().remove();r=r.merge(i);r.style("width",n.width+"px");var a=r.selectDiv("selectMetrics").classed("sszvis-control-select__metrics",true);var o=r.selectAll(".sszvis-control-select__element").data([1]);var s=o.enter().append("select").classed("sszvis-control-select__element",true).on("change",(function(){var t=e.select(this).property("value");n.change(n.values[t]);setTimeout((function(){window.focus()}),0)}));o=o.merge(s);o.style("width",n.width+30+"px");var l=o.selectAll("option").data(n.values);var u=l.enter().append("option");l.exit().remove();l.merge(u).attr("selected",(function(t){return t===n.current?"selected":null})).attr("value",(function(t,e){return e})).text((function(t){return Jn(a,n.width-40,t)}))}))}function Jn(t,e,n){var r=1e3;var i=function n(i,a){t.text(i);var o=Math.ceil(t.node().clientWidth);if(a<r&&o>e){return n(i.slice(0,i.length-2)+"…",a+1)}else{return i}};return i(n,0)}function Kn(t,e){return e.indexOf(t)>=0}function tr(){return mt().prop("scale").prop("value").prop("onchange").prop("minorTicks").minorTicks([]).prop("majorTicks").majorTicks([]).prop("tickLabels",C).tickLabels(n).prop("label",C).label(n).render((function(){var t=e.select(this);var n=t.props();var r=28;var i=12;var a=$t(18);var s=10;var l=23;var u=6;var c=u/2;var f=s/2+.5;var h=n.scale.domain();var d=Ae(n.scale);var p=n.scale.copy().range([d[0]+f,d[1]-f]);var v=t.selectAll("g.sszvis-control-slider__backgroundgroup").data([1]);var m=v.enter().append("g").classed("sszvis-control-slider__backgroundgroup",true);v=v.merge(m);v.exit().remove();var g=Ie().scale(p).orient("bottom").hideBorderTickThreshold(0).tickSize(i).tickPadding(6).tickValues(S([].concat(n.majorTicks,n.minorTicks))).tickFormat((function(t){return Kn(t,n.majorTicks)?n.tickLabels(t):""}));var y=v.selectAll("g.sszvis-axisGroup").data([1]);var _=y.enter().append("g").classed("sszvis-axisGroup sszvis-axis sszvis-axis--bottom sszvis-axis--slider",true);y=y.merge(_);y.attr("transform",St(0,r)).call(g);y.selectAll(".tick line").filter((function(t){return!Kn(t,n.majorTicks)})).attr("y2",4);var b=y.selectAll(".tick text").filter((function(t){return Kn(t,n.majorTicks)}));var x=b.size();b.style("text-anchor",(function(t,e){return e===0?"start":e===x-1?"end":"middle"}));var w=v.selectAll("g.sszvis-slider__background").data([1]);var $=w.enter().append("g").classed("sszvis-slider__background",true);w=w.merge($);w.attr("transform",St(0,a));var k=w.selectAll(".sszvis-slider__background__bg1").data([1]);var M=k.enter().append("line").classed("sszvis-slider__background__bg1",true).style("stroke-width",u).style("stroke","#888").style("stroke-linecap","round");k=k.merge(M);k.attr("x1",Math.ceil(d[0]+c)).attr("x2",Math.floor(d[1]-c));var z=w.selectAll(".sszvis-slider__background__bg2").data([1]);var C=z.enter().append("line").classed("sszvis-slider__background__bg2",true).style("stroke-width",u-1).style("stroke","#fff").style("stroke-linecap","round");z=z.merge(C);z.attr("x1",Math.ceil(d[0]+c)).attr("x2",Math.floor(d[1]-c));var A=w.selectAll(".sszvis-slider__backgroundshadow").data([n.value]);var R=A.enter().append("line").attr("class","sszvis-slider__backgroundshadow").attr("stroke-width",u-1).style("stroke","#E0E0E0").style("stroke-linecap","round");A=A.merge(R);A.attr("x1",Math.ceil(d[0]+c)).attr("x2",o(Math.floor,p));var T=t.selectAll("g.sszvis-control-slider__handle").data([n.value]);T.exit().remove();var N=T.enter().append("g").classed("sszvis-control-slider__handle",true);T=T.merge(N);T.attr("transform",(function(t){return St($t(p(t)),.5)}));N.append("text").classed("sszvis-control-slider--label",true);T.selectAll(".sszvis-control-slider--label").data((function(t){return[t]})).text(n.label).style("text-anchor",(function(t){return E(t,h[0])?"start":E(t,h[1])?"end":"middle"})).attr("dx",(function(t){return E(t,h[0])?-(s/2):E(t,h[1])?s/2:0}));N.append("rect").classed("sszvis-control-slider__handlebox",true).attr("x",-(s/2)).attr("y",a-l/2).attr("width",s).attr("height",l).attr("rx",2).attr("ry",2);var P=l/2-4;N.append("line").classed("sszvis-control-slider__handleline",true).attr("y1",a-P).attr("y2",a+P);var L=Ue().xScale(n.scale).yScale(e.scaleLinear().range([-11,r+i])).draggable(true).on("drag",n.onchange);t.selectGroup("sliderInteraction").classed("sszvis-control-slider--interactionLayer",true).attr("transform",St(0,4)).call(L)}))}function er(t,n,r){n||(n=on());r||(r={});var a=r.key||"default";var o="data-sszvis-html-"+a;var s=i(t)?t:e.select(t);s.classed("sszvis-outer-container",true);var l=s.selectAll("[data-sszvis-html-layer]["+o+"]").data([0]);var u=l.enter().append("div").classed("sszvis-html-layer",true).attr("data-sszvis-html-layer","").attr(o,"");l=l.merge(u);l.style("position","absolute").style("left",n.padding.left+"px").style("top",n.padding.top+"px");return l}function nr(t,n,r){n||(n=on());r||(r={});var a=r.key||"default";var o="data-sszvis-svg-"+a;var s=r.title||"";var l=r.description||"";var u=i(t)?t:e.select(t);var c=u.selectAll("svg["+o+"]").data([0]);var f=c.enter().append("svg");f.classed("sszvis-svg-layer",true).attr(o,"").attr("role","img").attr("aria-label",s+" – "+l);f.append("title").text(s);f.append("desc").text(l).classed("sszvis-svg-layer",true).attr(o,"").attr("role","img");c.merge(f).attr("height",n.height).attr("width",n.width);var h=c.merge(f).selectAll("[data-sszvis-svg-layer]").data((function(){return[0]}));var d=h.enter().append("g").attr("data-sszvis-svg-layer","");h.merge(d).attr("transform","translate("+n.padding.left+","+n.padding.top+")");return h.merge(d)}var rr=function t(){var e=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect;return!e};var ir=function t(){var e=!!document.createElement("canvas").getContext;return!e};var ar=function t(n,r){r||(r={});r.src||(r.src="fallback.png");var a=i(n)?n:e.select(n);a.append("img").attr("class","sszvis-fallback-image").attr("src",r.src)};var or=21;function sr(){return mt().prop("scale").prop("rowHeight").rowHeight(or).prop("columnWidth").columnWidth(200).prop("rows").rows(3).prop("columns").columns(3).prop("verticallyCentered").verticallyCentered(false).prop("orientation").prop("reverse").reverse(false).prop("rightAlign").rightAlign(false).prop("horizontalFloat").horizontalFloat(false).prop("floatPadding").floatPadding(20).prop("floatWidth").floatWidth(600).render((function(){var t=e.select(this);var n=t.props();var r=n.scale.domain();if(n.reverse){r=r.slice().reverse()}var i,a;if(n.orientation==="horizontal"){a=Math.ceil(n.columns);i=Math.ceil(r.length/a)}else if(n.orientation==="vertical"){i=Math.ceil(n.rows);a=Math.ceil(r.length/i)}var o=t.selectAll(".sszvis-legend--entry").data(r);var s=o.enter().append("g").classed("sszvis-legend--entry",true);o.exit().remove();var l=o.merge(s).selectAll(".sszvis-legend__mark").data((function(t){return[t]}));var u=l.enter().append("circle").classed("sszvis-legend__mark",true);l.exit().remove();l.merge(u).attr("cx",n.rightAlign?-6:6).attr("cy",$t(n.rowHeight/2)).attr("r",5).attr("fill",(function(t){return n.scale(t)})).attr("stroke",(function(t){return n.scale(t)})).attr("stroke-width",1);var c=o.merge(s).selectAll(".sszvis-legend__label").data((function(t){return[t]}));var f=c.enter().append("text").classed("sszvis-legend__label",true);c.exit().remove();c.merge(f).text((function(t){return t})).attr("dy","0.35em").style("text-anchor",(function(){return n.rightAlign?"end":"start"})).attr("transform",(function(){var t=n.rightAlign?-18:18;var e=$t(n.rowHeight/2);return St(t,e)}));var h="";if(n.verticallyCentered){h="translate(0,"+String(-(r.length*n.rowHeight/2))+") "}if(n.horizontalFloat){var d=0,p=0;o.merge(s).attr("transform",(function(){var t=this.getBoundingClientRect().width;if(p+t>n.floatWidth){d+=n.rowHeight;p=0}var e=St(p,d);p+=t+n.floatPadding;return h+e}))}else{o.merge(s).attr("transform",(function(t,e){if(n.orientation==="horizontal"){return h+"translate("+e%a*n.columnWidth+","+Math.floor(e/a)*n.rowHeight+")"}else if(n.orientation==="vertical"){return h+"translate("+Math.floor(e/i)*n.columnWidth+","+e%i*n.rowHeight+")"}}))}}))}var lr=2;var ur=40;function cr(t,e){var n=t.legendLabels,r=t.axisLabels,i=r===void 0?[]:r,a=t.slant,o=a===void 0?"horizontal":a;var s=tn(e).width;var l=fr(n,s);var u=n.length>6?L().domain(n):F().domain(n);var c=sr().scale(u).horizontalFloat(l.horizontalFloat).rows(l.rows).columnWidth(l.columnWidth).orientation(l.orientation);var f=hr(o,i);var h=l.rows*or;return{axisLabelPadding:f,legendPadding:h,bottomPadding:f+h,legendWidth:l.legendWidth,legend:c,scale:u}}function fr(t,n){var r=t.length;var i=e.max(t,dr);var a=e.sum(t,dr);var o=r<=4?1:pr(n,i,lr);var s=o===1&&a<=n;return{columns:o,rows:s?1:Math.ceil(r/o),columnWidth:o===1?null:i,legendWidth:o*i,horizontalFloat:s,orientation:s?null:"vertical"}}function hr(t,n){switch(t){case"vertical":return 40+e.max(n,nn);case"diagonal":return 40+Math.sqrt(2*Math.pow(e.max(n,nn)/2,2));default:return 60}}function dr(t){return rn(t)+ur}function pr(t,e,n){return n<=1?1:e<=t/n?n:pr(t,e,n-1)}function vr(t,e,n,r,i){i||(i={});i.top||(i.top=0);i.right||(i.right=0);i.bottom||(i.bottom=0);i.left||(i.left=0);var a=30,o=t-i.left-i.right,s=Math.min((o-e*(n-1))/n,a),l=s+e,u=1-s/l,c=n*l-e,f=r*l-e;return{side:s,paddedSide:l,padRatio:u,width:c,height:f,centeredOffset:Math.max((o-c)/2,0)}}function mr(t){var e=24,n=20,r=e,i=t-1,a=n,o=1-r/(r+a),s=r*t+a*i,l=0;return{barHeight:r,padHeight:a,padRatio:o,outerRatio:l,axisOffset:-(r/2)-10,barGroupHeight:s,totalHeight:s+l*(r+a)*2}}function gr(t,e){var n=480;var r=2;var i=Math.min($e(t),n);var a=1;var o=e-1;var s=a*o;var l=Math.round((i-s)/e);l=Math.max(l,r);var u=e*l+s;var c=u-l,f=l+a,h=[];while(c>=0){h.push(c);c-=f}var d=Math.min(t/2,$e.MAX_HEIGHT*(4/5)/2);var p=Math.max((t-2*d)/2,1);return{barHeight:l,padding:a,totalHeight:u,positions:h,maxBarLength:d,chartPadding:p}}var yr=function(){var t=0;return function(){return++t}}();var _r=function t(){var r=n;var i=n;var a=n;var o=[];var s=k("value");var l=function t(n,r){return e.ascending(s(n),s(r))};var u=function t(n,r){return e.descending(s(n),s(r))};var c=u;var h=function t(n){var l=o.reduce((function(t,e,n){e.forEach((function(e){if(t.has(e)){Se("Duplicate column member id passed to sszvis.layout.sankey.prepareData.column:",e,"The existing value will be overwritten")}var r={id:e,columnIndex:n,nodeIndex:0,value:0,valueOffset:0,linksFrom:[],linksTo:[]};t.set(e,r)}));return t}),e.map());var h=n.map((function(t){var e=r(t);var n=i(t);var o=+a(t)||0;var s=l.get(e);var u=l.get(n);if(!s){Se("Found invalid source column id:",e);return null}if(!u){Se("Found invalid target column id:",n);return null}var c={id:yr(),value:o,src:s,srcOffset:0,tgt:u,tgtOffset:0};s.linksFrom.push(c);u.linksTo.push(c);return c}));var d=l.values();var p=d.reduce((function(t,n){var r=e.sum(n.linksFrom,s);var i=e.sum(n.linksTo,s);n.value=Math.max(0,r,i);t[n.columnIndex]+=n.value;return t}),f(o.length,0));var v=o.map((function(t){return t.length}));d.sort(c);h.sort(u);d.reduce((function(t,e){e.valueOffset=t[0][e.columnIndex];e.nodeIndex=t[1][e.columnIndex];t[0][e.columnIndex]+=e.value;t[1][e.columnIndex]+=1;return t}),[f(o.length,0),f(o.length,0)]);d.forEach((function(t){t.linksFrom.sort((function(t,e){return t.tgt.nodeIndex-e.tgt.nodeIndex}));t.linksTo.sort((function(t,e){return t.src.nodeIndex-e.src.nodeIndex}));t.linksFrom.reduce((function(t,e){e.srcOffset=t;return t+s(e)}),0);t.linksTo.reduce((function(t,e){e.tgtOffset=t;return t+s(e)}),0)}));return{nodes:d,links:h,columnTotals:p,columnLengths:v}};h.apply=function(t){return h(t)};h.source=function(t){r=t;return h};h.target=function(t){i=t;return h};h.value=function(t){a=t;return h};h.descendingSort=function(){c=u;return h};h.ascendingSort=function(){c=l;return h};h.idLists=function(t){o=t;return h};return h};var br=function t(n,r,i,a){var o=.15;var s=12;var l=50;var u=1;var c=e.min(n.map((function(t){var e=i*o/(t-1);return Math.max(s,Math.min(l,e))})));var f=e.min(n.map((function(t,e){var n=Math.max(u,i-(t-1)*c);return n/r[e]})));var h=c/f;var d=c;var p=e.max(r);var v=n.map((function(t,e){return r[e]*f+(t-1)*d}));var m=e.max(v);var g=n.map((function(t,e){return(m-v[e])/2}));var y=[0,p];var _=[0,p*f];var b=20;var x=n.length;var w=(a-b)/(x-1);var $=[0,1];var k=[0,w];return{valuePadding:h,nodePadding:d,columnPaddings:g,valueDomain:y,valueRange:_,nodeThickness:b,columnDomain:$,columnRange:k}};function xr(){return mt().prop("width").prop("height").prop("paddingX").prop("paddingY").prop("rows").prop("cols").render((function(t){var n=e.select(this);var r=n.props();var i=(r.width-r.paddingX*(r.cols-1))/r.cols;var a=(r.height-r.paddingY*(r.rows-1))/r.rows;var o=i/2;var s=a/2;var l=n.selectAll("g.sszvis-multiple").data(t);var u=l.enter().append("g").classed("sszvis-g sszvis-multiple",true);l.exit().remove();l=l.merge(u);var c=l.selectAll("g.sszvis-multiple-chart").data((function(t){return[t.values]}));var f=c.enter().append("g").classed("sszvis-multiple-chart",true);c.exit().remove();c=c.merge(f);l.datum((function(t,e){t.gx=e%r.cols*(i+r.paddingX);t.gw=i;t.cx=o;t.gy=Math.floor(e/r.cols)*(a+r.paddingY);t.gh=a;t.cy=s;return t})).attr("transform",(function(t){return"translate("+t.gx+","+t.gy+")"}))}))}function wr(t,e,n){n||(n=.1);var r=t/(e-n),i=r*(1-n),a=i,o=[];while(a-t<1){o.push(a);a+=r}return{range:o,bandHeight:i,padHeight:r*n}}var $r=function t(){var r=e.nest();var i=n;var a=function t(){return 0};function o(t){r.rollup(d);var n=e.hierarchy({isSunburstRoot:true,values:r.entries(t)},k("values")).sort(a).sum((function(t){return t.value?i(t.value):0}));e.partition()(n);function o(t){return[].concat.apply([t],(t.children||[]).map(o))}return o(n).filter((function(t){return!t.data.isSunburstRoot}))}o.calculate=function(t){return o(t)};o.layer=function(t){r.key(t);return o};o.value=function(t){i=t;return o};o.sort=function(t){a=t;return o};return o};var kr=60;var Mr=kr;var Sr=10;var zr=Sr;var Er=function t(e,n){var r=n/2;var i=r/3;var a=Math.max(zr,Math.min(Mr,(r-i)/e));return{centerRadius:i,numLayers:e,ringWidth:a}};var Cr=function t(n){return[e.min(n,(function(t){return t.y0})),e.max(n,(function(t){return t.y1}))]};function Ar(t,e){var n=48,r=2,i=100,a=.7,o=1-a,s=e-1,l=t*o/(o*s+a*e),u=(t-l*s)/e;if(u>n){u=n;l=(t-u*e)/s}if(l<r)l=r;if(l>i)l=i;var c=1-u/(u+l),f=u*e+l*s,h=(t-f)/2/(u+l);return{barWidth:u,padWidth:l,padRatio:c,outerRatio:h,barGroupWidth:f,totalWidth:t}}function Rr(){return mt().prop("scale").prop("displayValues").prop("endpoints").prop("width").width(200).prop("labelFormat").labelFormat(n).render((function(){var t=e.select(this);var n=t.props();if(!n.scale)return ze("legend.binnedColorScale - a scale must be specified.");if(!n.displayValues)return ze("legend.binnedColorScale - display values must be specified.");if(!n.endpoints)return ze("legend.binnedColorScale - endpoints must be specified");var r=10;var i=r/2;var a=[0,n.width-2*i];var o=e.scaleLinear().domain(n.endpoints).range(a);var s=0;var l=[];var u=n.endpoints[0];n.displayValues.forEach((function(t){var e=o(t)-s;var r=s%1;l.push({x:Math.floor(i+s),w:e+r,c:n.scale(u),p:t});s+=e;u=t}));l.push({x:Math.floor(i+s),w:a[1]-s,c:n.scale(u)});var c=t.selectAll("circle.sszvis-legend__circle").data(n.endpoints);var f=c.enter().append("circle").classed("sszvis-legend__circle",true);c=c.merge(f);c.exit().remove();c.attr("r",i).attr("cy",i).attr("cx",(function(t,e){return e===0?i:n.width-i})).attr("fill",n.scale);var h=t.selectAll("rect.sszvis-legend__crispmark").data(l);var d=h.enter().append("rect").classed("sszvis-legend__crispmark",true);h=h.merge(d);h.exit().remove();h.attr("x",(function(t){return t.x})).attr("y",0).attr("width",(function(t){return t.w})).attr("height",r).attr("fill",(function(t){return t.c}));var p=l.slice(0,-1);var v=t.selectAll("line.sszvis-legend__crispmark").data(p);var m=v.enter().append("line").classed("sszvis-legend__crispmark",true);v.merge(m);v.exit().remove();v.attr("x1",(function(t){return $t(t.x+t.w)})).attr("x2",(function(t){return $t(t.x+t.w)})).attr("y1",r+1).attr("y2",r+6).attr("stroke","#B8B8B8");var g=t.selectAll(".sszvis-legend__axislabel").data(p);var y=g.enter().append("text").classed("sszvis-legend__axislabel",true);g=g.merge(y);g.exit().remove();g.style("text-anchor","middle").attr("transform",(function(t){return"translate("+(t.x+t.w)+","+(r+20)+")"})).text((function(t){return n.labelFormat(t.p)}))}))}function Tr(){return mt().prop("scale").prop("displayValues").displayValues([]).prop("width").width(200).prop("segments").segments(8).prop("labelText").prop("labelFormat").labelFormat(n).render((function(){var t=e.select(this);var n=t.props();if(!n.scale){ze("legend.linearColorScale - a scale must be specified.");return false}var r=n.scale.domain();var i=n.displayValues;if(!i.length&&n.scale.ticks){i=n.scale.ticks(n.segments-1)}i.push(w(r));var a=i.length>0?n.width/i.length:0;var o=10;var s=t.selectAll("rect.sszvis-legend__mark").data(i);var l=s.enter().append("rect").classed("sszvis-legend__mark",true);s.exit().remove();s=s.merge(l);s.attr("x",(function(t,e){return e*a-1})).attr("y",0).attr("width",a+1).attr("height",o).attr("fill",(function(t){return n.scale(t)}));var u=[d(r),w(r)];var c=n.labelText||u;var f=t.selectAll("circle.ssvis-legend--mark").data(u);var h=f.enter().append("circle").attr("class","ssvis-legend--mark");f.exit().remove();f=f.merge(h);f.attr("cx",(function(t,e){return e*n.width})).attr("cy",o/2).attr("r",o/2).attr("fill",(function(t){return n.scale(t)}));var p=t.selectAll(".sszvis-legend__label").data(c);var v=p.enter().append("text").classed("sszvis-legend__label",true);p.exit().remove();p=p.merge(v);var m=16;p.style("text-anchor",(function(t,e){return e===0?"end":"start"})).attr("dy","0.35em").attr("transform",(function(t,e){return"translate("+(e*n.width+(e===0?-1:1)*m)+", "+o/2+")"})).text((function(t,e){var r=n.labelFormat(t,e);return r}))}))}function Nr(){return mt().prop("scale").prop("tickFormat").tickFormat(n).prop("tickValues").render((function(){var t=e.select(this);var n=t.props();var r=n.scale.domain();var i=n.tickValues||[r[1],n.scale.invert(e.mean(n.scale.range())),r[0]];var a=Ae(n.scale)[1];var o=t.selectAll("g.sszvis-legend__elementgroup").data([0]);var s=o.enter().append("g").attr("class","sszvis-legend__elementgroup");o=o.merge(s);o.attr("transform",St($t(a),$t(a)));var l=o.selectAll("circle.sszvis-legend__greyline").data(i);var u=l.enter().append("circle").classed("sszvis-legend__greyline",true);l.exit().remove();l=l.merge(u);function c(t){return a-n.scale(t)}function f(t){return a-2*n.scale(t)}l.attr("r",n.scale).attr("stroke-width",1).attr("cy",c);var h=o.selectAll("line.sszvis-legend__dashedline").data(i);var d=h.enter().append("line").classed("sszvis-legend__dashedline",true);h.exit().remove();h=h.merge(d);h.attr("x1",0).attr("y1",f).attr("x2",a+15).attr("y2",f);var p=o.selectAll(".sszvis-legend__label").data(i);var v=p.enter().append("text").attr("class","sszvis-legend__label sszvis-legend__label--small");p.exit().remove();p=p.merge(v);p.attr("dx",a+18).attr("y",f).attr("dy","0.35em").text(n.tickFormat)}))}var Pr=function t(e){ze(e)};var Lr="zurichStadtKreise";var Fr="zurichStatistischeQuartiere";var Dr="zurichStatistischeZonen";var Ir="zurichWahlKreise";var Or="zurichAgglomeration2012";var Br="switzerland";var qr=A((function(t,n,r){var i=e.geoMercator().fitSize([t,n],r);return i}),(function(t,e,n,r){return""+t+","+e+","+r}));var Hr=function t(n,r,i,a){var o=e.geoPath().projection(qr(n,r,i,a));return o};var Ur=function t(e,n,r){var i=6367475;var a=Math.PI*2*i;var o=r/a*360;var s=o/2;var l=[[n[0]-s,n[1]-s],[n[0]+s,n[1]+s]];var u=l.map(e);var c=Math.abs(u[1][0]-u[0][0]);var f=Math.abs(u[1][1]-u[0][1]);var h=(c+f)/2;return h};var jr="geoId";var Yr=function t(e,n,r){r||(r=jr);var i=Array.isArray(e)?e.reduce((function(t,e){t[e[r]]=e;return t}),{}):{};var a=n.features.map((function(t){return{geoJson:t,datum:i[t.id]}}));return a};var Wr=function t(n){if(!n.properties.cachedCenter){var r=n.properties.center;if(r){n.properties.cachedCenter=r.split(",").map(parseFloat)}else{n.properties.cachedCenter=e.geoCentroid(n)}}return n.properties.cachedCenter};var Gr=function t(e){return Math.min(Math.max(.8,e/400),1.1)};var Xr=k("datum");function Vr(){var t=e.dispatch("over","out","click");var n=mt().prop("mergedData").prop("mapPath").prop("radius",C).prop("fill",C).prop("strokeColor",C).strokeColor("#ffffff").prop("strokeWidth",C).strokeWidth(1).prop("transition").transition(true).render((function(){var n=e.select(this);var r=n.props();var i=o(r.radius,Xr);var a=n.selectGroup("anchoredCircles").selectAll(".sszvis-anchored-circle").data(r.mergedData,(function(t){return t.geoJson.id}));a.enter().append("circle").attr("class","sszvis-anchored-circle sszvis-anchored-circle--entering").attr("r",i).on("mouseover",(function(e){t.call("over",this,e.datum)})).on("mouseout",(function(e){t.call("out",this,e.datum)})).on("click",(function(e){t.call("click",this,e.datum)})).merge(a).attr("transform",(function(t){var e=r.mapPath.projection()(Wr(t.geoJson));return St(e[0],e[1])})).style("fill",(function(t){return r.fill(t.datum)})).style("stroke",(function(t){return r.strokeColor(t.datum)})).style("stroke-width",(function(t){return r.strokeWidth(t.datum)})).sort((function(t,e){return r.radius(e.datum)-r.radius(t.datum)}));a.classed("sszvis-anchored-circle--entering",false);if(r.transition){var s=pn();a.exit().transition(s).attr("r",0).remove();a.transition(s).attr("r",i)}else{a.exit().remove();a.attr("r",i)}}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function Zr(){return mt().prop("mergedData").prop("geoJson").prop("mapPath").prop("defined",C).defined(true).prop("fill",C).fill((function(){return"black"})).prop("transitionColor").transitionColor(true).render((function(){var t=e.select(this);var n=t.props();R(t,"pattern","missing-pattern").call(ft);function r(t){return n.defined(t.datum)?n.fill(t.datum):"url(#missing-pattern)"}var i=t.selectAll(".sszvis-map__area").data(n.mergedData);var a=i.enter().append("path").classed("sszvis-map__area",true).classed("sszvis-map__area--entering",true).attr("data-event-target","").attr("fill",r);i.classed("sszvis-map__area--entering",false);i.exit().remove();i=i.merge(a);t.selectAll(".sszvis-map__area--undefined").attr("fill",r);i.classed("sszvis-map__area--undefined",(function(t){return!l(t.datum)||!n.defined(t.datum)})).attr("d",(function(t){return n.mapPath(t.geoJson)}));if(n.transitionColor){i.transition().call(mn).attr("fill",r)}else{i.attr("fill",r)}var o=zt().position((function(t){return n.mapPath.projection()(Wr(t.geoJson))}));var s=t.selectGroup("tooltipAnchors").datum(n.mergedData);s.call(o)}))}function Qr(){var t=e.dispatch("over","out","click");var n=mt().prop("dataKeyName").dataKeyName(jr).prop("geoJsonKeyName").geoJsonKeyName("id").prop("geoJson").prop("mapPath").prop("defined",C).defined(true).prop("fill",C).fill("black").prop("stroke",C).stroke("black").prop("strokeWidth",C).strokeWidth(1.25).prop("transitionColor").transitionColor(true).render((function(n){var r=e.select(this);var i=r.props();R(r,"pattern","missing-pattern").call(ft);var a=k(i.dataKeyName);var o=k(i.geoJsonKeyName);var s=n.reduce((function(t,e){t[a(e)]=e;return t}));var u=i.geoJson.features.map((function(t){return{geoJson:t,datum:s[o(t.properties)]}}));function c(t){return l(t.datum)&&i.defined(t.datum)?i.fill(t.datum):"url(#missing-pattern)"}function f(t){return l(t.datum)&&i.defined(t.datum)?i.stroke(t.datum):""}var h=r.selectAll(".sszvis-map__geojsonelement").data(u);var d=h.enter().append("path").classed("sszvis-map__geojsonelement",true).attr("data-event-target","").attr("fill",c);h.exit().remove();h=h.merge(d);r.selectAll(".sszvis-map__geojsonelement--undefined").attr("fill",c);h.classed("sszvis-map__geojsonelement--undefined",(function(t){return!l(t.datum)||!i.defined(t.datum)})).attr("d",(function(t){return i.mapPath(t.geoJson)}));if(i.transitionColor){h.transition().call(mn).attr("fill",c)}else{h.attr("fill",c)}h.attr("stroke",f).attr("stroke-width",i.strokeWidth);r.selectAll("[data-event-target]").on("mouseover",(function(e){t.over(e.datum)})).on("mouseout",(function(e){t.out(e.datum)})).on("click",(function(e){t.click(e.datum)}));var p=zt().position((function(t){t.geoJson.properties||(t.geoJson.properties={});var n=t.geoJson.properties.sphericalCentroid;if(!n){t.geoJson.properties.sphericalCentroid=n=e.geoCentroid(t.geoJson)}return i.mapPath.projection()(n)}));var v=r.selectGroup("tooltipAnchors").datum(u);v.call(p)}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function Jr(){return mt().prop("keyName").keyName(jr).prop("geoJson").prop("mapPath").prop("highlight").highlight([]).prop("highlightStroke",C).highlightStroke("white").prop("highlightStrokeWidth",C).highlightStrokeWidth(2).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-map__highlight");if(!n.highlight.length){r.remove();return true}var i=n.geoJson.features.reduce((function(t,e){t[e.id]=e;return t}),{});var a=n.highlight.reduce((function(t,e){if(e){t.push({geoJson:i[e[n.keyName]],datum:e})}return t}),[]);r=r.data(a);var o=r.enter().append("path").classed("sszvis-map__highlight",true);r.exit().remove();r=r.merge(o);r.attr("d",(function(t){return n.mapPath(t.geoJson)})).style("stroke",(function(t){return n.highlightStroke(t.datum)})).style("stroke-width",(function(t){return n.highlightStrokeWidth(t.datum)}))}))}function Kr(){return mt().prop("projection").prop("src").prop("geoBounds").prop("opacity").opacity(1).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-map__image").data([0]);var i=r.enter().append("img").classed("sszvis-map__image",true);r.exit().remove();r=r.merge(i);var a=n.projection(n.geoBounds[0]);var o=n.projection(n.geoBounds[1]);r.attr("src",n.src).style("left",Math.round(a[0])+"px").style("top",Math.round(a[1])+"px").style("width",Math.round(o[0]-a[0])+"px").style("height",Math.round(o[1]-a[1])+"px").style("opacity",n.opacity)}))}function ti(){return mt().prop("geoJson").prop("mapPath").prop("borderColor").borderColor("white").prop("strokeWidth").strokeWidth(1.25).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-map__border").data([n.geoJson]);var i=r.enter().append("path").classed("sszvis-map__border",true);r.exit().remove();r=r.merge(i);r.attr("d",n.mapPath).style("stroke",n.borderColor).style("stroke-width",n.strokeWidth)}))}function ei(){return mt().prop("mapPath").prop("lakeFeature").prop("lakeBounds").prop("lakePathColor").prop("fadeOut").fadeOut(true).render((function(){var t=e.select(this);var n=t.props();R(t,"pattern","lake-pattern").call(ht);if(n.fadeOut){R(t,"linearGradient","lake-fade-gradient").call(dt);R(t,"mask","lake-fade-mask").call(pt)}var r=t.selectAll(".sszvis-map__lakezurich").data([n.lakeFeature]);var i=r.enter().append("path").classed("sszvis-map__lakezurich",true);r.exit().remove();r=r.merge(i);r.attr("d",n.mapPath).attr("fill","url(#lake-pattern)");if(n.fadeOut){r.attr("mask","url(#lake-fade-mask)")}var a=t.selectAll(".sszvis-map__lakepath").data([n.lakeBounds]);var o=a.enter().append("path").classed("sszvis-map__lakepath",true);a.exit().remove();a=a.merge(o);a.attr("d",n.mapPath);if(n.lakePathColor){a.style("stroke",n.lakePathColor)}}))}function ni(){return mt().prop("debug").debug(false).prop("width").prop("height").prop("position").prop("cellSide").cellSide(2).prop("fill",C).prop("opacity").opacity(1).render((function(t){var n=e.select(this);var r=n.props();var i=n.selectAll(".sszvis-map__rasterimage").data([0]);var a=i.enter().append("canvas").classed("sszvis-map__rasterimage",true);i.exit().remove();i=i.merge(a);i.attr("width",r.width).attr("height",r.height).style("opacity",r.opacity);var o=i.node().getContext("2d");o.clearRect(0,0,r.width,r.height);if(r.debug){o.fillStyle="rgba(255, 0, 0, 0.2)";o.fillRect(0,0,r.width,r.height)}var s=r.cellSide/2;t.forEach((function(t){var e=r.position(t);o.fillStyle=r.fill(t);o.fillRect(e[0]-s,e[1]-s,r.cellSide,r.cellSide)}))}))}function ri(){var t=e.dispatch("over","out","click");var n=Zr();var r=ti();var i=ei();var a=Jr();var o=mt().prop("width").prop("height").prop("keyName").keyName(jr).prop("withLake").withLake(true).prop("anchoredShape").prop("features").prop("borders").prop("lakeFeatures").prop("lakeBorders").prop("lakeFadeOut").lakeFadeOut(false).delegate("defined",n).delegate("fill",n).delegate("transitionColor",n).delegate("borderColor",r).delegate("strokeWidth",r).delegate("highlight",a).delegate("highlightStroke",a).delegate("highlightStrokeWidth",a).delegate("lakePathColor",i).render((function(o){var s=e.select(this);var l=s.props();var u=Hr(l.width,l.height,l.features,"zurichStadtfeatures");var c=Yr(o,l.features,l.keyName);n.geoJson(l.features).mergedData(c).mapPath(u);r.geoJson(l.borders).mapPath(u);i.lakeFeature(l.lakeFeatures).lakeBounds(l.lakeBorders).mapPath(u).fadeOut(l.lakeFadeOut);a.geoJson(l.features).keyName(l.keyName).mapPath(u);s.call(n).call(r);if(l.withLake){s.call(i)}s.call(a);if(l.anchoredShape){l.anchoredShape.mergedData(c).mapPath(u);s.call(l.anchoredShape)}s.selectAll("[data-event-target]").on("mouseover",(function(e){t.call("over",this,e.datum)})).on("mouseout",(function(e){t.call("out",this,e.datum)})).on("click",(function(e){t.call("click",this,e.datum)}))}));o.on=function(){var e=t.on.apply(t,arguments);return e===t?o:e};return o}var ii=e.timeFormatLocale(At).parse;var ai=ii("%d.%m.%Y");var oi=function t(e){return ai(e)};var si=ii("%Y");var li=function t(e){return si(e)};var ui=function t(e){return e.trim()===""?NaN:+e};function ci(){var t=ue();var e={};function n(n){if(!x(n)||!fi(n)){Se("Could not determine the current breakpoint, returning the default props");return Object.keys(e).reduce((function(t,e,n){t[n]=e._;return t}),{})}var r=se(t,n);return Object.keys(e).reduce((function(i,a){var o=e[a];if(!di(o,t)){Se('responsiveProps was given an invalid propSpec for property: "'+a+'". The spec: ',o);return i}var s=h((function(t){return l(o[t.name])}),r);i[a]=o[s.name](n.width);return i}),{})}n.prop=function(t,r){e[t]=hi(r);return n};n.breakpoints=function(e){if(arguments.length===0){return t}t=le(e);return n};return n}function fi(t){return l(t)&&l(t.width)&&l(t.screenWidth)&&l(t.screenHeight)}function hi(t){return Object.keys(t).reduce((function(e,n){e[n]=C(t[n]);return e}),{})}function di(t,e){if(!l(t._)){return false}for(var n in t){if({}.hasOwnProperty.call(t,n)){if(n!=="_"&&!l(ae(e,n))){return false}}}return true}function pi(){var t={plain:function t(e){return e},italic:function t(e){return"<em>"+e+"</em>"},bold:function t(e){return"<strong>"+e+"</strong>"}};return function(e,n){return e.lines().map((function(e){return e.map((function(e){return t[e.style].call(null,e.text(n))})).join(" ")})).join("<br/>")}}function vi(){var t={plain:function t(e){return"<tspan>"+e+"</tspan>"},italic:function t(e){return'<tspan style="font-style:italic">'+e+"</tspan>"},bold:function t(e){return'<tspan style="font-weight:bold">'+e+"</tspan>"}};return function(e,n){return e.lines().reduce((function(e,r,i){var a=r.map((function(e){return t[e.style].call(null,e.text(n))})).join(" ");var o=i===0?0:"1.2em";return e+'<tspan x="0" dy="'+o+'">'+a+"</tspan>"}),"")}}function mi(){var t=[[]];return{addLine:function e(){t.push([])},addWord:function e(n,r){w(t).push({text:C(r),style:n})},lines:function e(){return t}}}function gi(t){return function(){var e=mi();function n(n){return t(e,n)}n.newline=function(){e.addLine();return n};["bold","italic","plain"].forEach((function(t){n[t]=function(r){e.addWord(t,r);return n}}));return n}}var yi=gi(pi());var _i=gi(vi());function bi(t,e){var n,r,i;var a=null;var o=0;var s=function t(){o=0;i=e.apply(n,r);a=n=r=null};return function(){var l=Date.now();if(!o)o=l;var u=t-(l-o);n=this;r=arguments;if(u<=0||u>t){if(a){clearTimeout(a);a=null}o=l;i=e.apply(n,r);if(!a)n=r=null}else if(!a){a=setTimeout(s,u)}return i}}var xi={resize:[]};if(typeof window!=="undefined"){e.select(window).on("resize",bi(500,(function(){ki("resize")})))}var wi=function t(e,n){if(!xi[e]){xi[e]=[]}xi[e]=xi[e].filter((function(t){return t!==n})).concat(n);return this};var $i=function t(e,n){if(!xi[e]){return this}xi[e]=xi[e].filter((function(t){return t!==n}));return this};var ki=function t(e){var n=Array.prototype.slice.call(arguments,1);if(xi[e]){xi[e].forEach((function(t){t.apply(null,n)}))}return this};var Mi={on:wi,off:$i,trigger:ki};t.AGGLOMERATION_2012_KEY=Or;t.DEFAULT_LEGEND_COLOR_ORDINAL_ROW_HEIGHT=or;t.DEFAULT_WIDTH=an;t.GEO_KEY_DEFAULT=jr;t.RATIO=sn;t.STADT_KREISE_KEY=Lr;t.STATISTISCHE_QUARTIERE_KEY=Fr;t.STATISTISCHE_ZONEN_KEY=Dr;t.SWITZERLAND_KEY=Br;t.WAHL_KREISE_KEY=Ir;t.annotationCircle=xt;t.annotationLine=wt;t.annotationRangeFlag=Et;t.annotationRangeRuler=Yt;t.annotationRectangle=Wt;t.annotationRuler=Gt;t.arity=a;t.aspectRatio=ve;t.aspectRatio12to5=_e;t.aspectRatio16to10=ge;t.aspectRatio4to3=me;t.aspectRatioAuto=Me;t.aspectRatioPortrait=$e;t.aspectRatioSquare=xe;t.axisX=Ie;t.axisY=Oe;t.bar=yn;t.bounds=on;t.breakpointCreateSpec=le;t.breakpointDefaultSpec=ue;t.breakpointFind=ie;t.breakpointFindByName=ae;t.breakpointLap=fe;t.breakpointMatch=se;t.breakpointPalm=ce;t.breakpointTest=oe;t.buttonGroup=Vn;t.cascade=hn;t.choropleth=ri;t.colorLegendDimensions=fr;t.colorLegendLayout=cr;t.compose=o;t.contains=s;t.createHtmlLayer=er;t.createSvgLayer=nr;t.dataAreaPattern=vt;t.defaultTransition=pn;t.defined=l;t.derivedSet=u;t.dimensionsHeatTable=vr;t.dimensionsHorizontalBarChart=mr;t.dimensionsVerticalBarChart=Ar;t.dot=_n;t.ensureDefsElement=R;t.every=c;t.fallbackCanvasUnsupported=ir;t.fallbackRender=ar;t.fallbackUnsupported=rr;t.fastTransition=vn;t.filledArray=f;t.find=h;t.first=d;t.firstTouch=v;t.fitTooltip=re;t.flatten=p;t.foldPattern=m;t.formatAge=Nt;t.formatAxisTimeFormat=Pt;t.formatFractionPercent=qt;t.formatMonth=Lt;t.formatNone=Dt;t.formatNumber=It;t.formatPercent=Bt;t.formatPreciseNumber=Ot;t.formatText=Ht;t.formatYear=Ft;t.functor=C;t.getGeoJsonCenter=Wr;t.groupedBars=bn;t.halfPixel=$t;t.handleRuler=Zn;t.hashableSet=g;t.heatTableMissingValuePattern=ct;t.identity=n;t.isFunction=y;t.isNull=_;t.isNumber=b;t.isObject=x;t.isSelection=i;t.isString=r;t.last=w;t.layoutPopulationPyramid=gr;t.layoutSmallMultiples=xr;t.layoutStackedAreaMultiples=wr;t.legendColorBinned=Rr;t.legendColorLinear=Tr;t.legendColorOrdinal=sr;t.legendRadius=Nr;t.line=xn;t.loadError=Pr;t.locale=At;t.mapLakeFadeGradient=dt;t.mapLakeGradientMask=pt;t.mapLakePattern=ht;t.mapMissingValuePattern=ft;t.mapRendererBase=Zr;t.mapRendererBubble=Vr;t.mapRendererGeoJson=Qr;t.mapRendererHighlight=Jr;t.mapRendererImage=Kr;t.mapRendererMesh=ti;t.mapRendererPatternedLakeOverlay=ei;t.mapRendererRaster=ni;t.measureAxisLabel=nn;t.measureDimensions=tn;t.measureLegendLabel=rn;t.measureText=en;t.memoize=A;t.modularTextHTML=yi;t.modularTextSVG=_i;t.move=Ue;t.muchDarker=rt;t.not=$;t.panning=Ze;t.parseDate=oi;t.parseNumber=ui;t.parseYear=li;t.pie=wn;t.pixelsFromGeoDistance=Ur;t.prepareMergedGeoData=Yr;t.prop=k;t.propOr=M;t.pyramid=kn;t.range=Ae;t.responsiveProps=ci;t.roundTransformString=kt;t.sankey=Sn;t.sankeyLayout=br;t.sankeyPrepareData=_r;t.scaleDeepGry=et;t.scaleDimGry=K;t.scaleDivNtr=G;t.scaleDivNtrGry=X;t.scaleDivVal=Y;t.scaleDivValGry=W;t.scaleGry=J;t.scaleLightGry=Z;t.scaleMedGry=tt;t.scalePaleGry=Q;t.scaleQual12=L;t.scaleQual6=F;t.scaleQual6a=D;t.scaleQual6b=I;t.scaleSeqBlu=B;t.scaleSeqBrn=U;t.scaleSeqGrn=H;t.scaleSeqRed=q;t.selectMenu=Qn;t.set=S;t.slider=tr;t.slightlyDarker=nt;t.slowTransition=mn;t.some=z;t.stackedArea=zn;t.stackedAreaMultiples=En;t.stackedBarHorizontal=Dn;t.stackedBarHorizontalData=Nn;t.stackedBarVertical=On;t.stackedBarVerticalData=Pn;t.stackedPyramid=jn;t.stackedPyramidData=Un;t.stringEqual=E;t.sunburst=Xn;t.sunburstGetRadiusExtent=Cr;t.sunburstLayout=Er;t.sunburstPrepareData=$r;t.swissMapPath=Hr;t.swissMapProjection=qr;t.textWrap=Te;t.tooltip=Jt;t.tooltipAnchor=zt;t.transformTranslateSubpixelShift=Mt;t.translateString=St;t.viewport=Mi;t.voronoi=Qe;t.widthAdaptiveMapPathStroke=Gr;t.withAlpha=it;Object.defineProperty(t,"__esModule",{value:true})}))}));var sszvis$1=getDefaultExportFromCjs(sszvis);var sszvis$2=Object.freeze(Object.assign(Object.create(null),sszvis,{default:sszvis$1}));function identity(t){return t}function transform(t){if(t==null)return identity;var e,n,r=t.scale[0],i=t.scale[1],a=t.translate[0],o=t.translate[1];return function(t,s){if(!s)e=n=0;var l=2,u=t.length,c=new Array(u);c[0]=(e+=t[0])*r+a;c[1]=(n+=t[1])*i+o;while(l<u)c[l]=t[l],++l;return c}}function bbox(t){var e=transform(t.transform),n,r=Infinity,i=r,a=-r,o=-r;function s(t){t=e(t);if(t[0]<r)r=t[0];if(t[0]>a)a=t[0];if(t[1]<i)i=t[1];if(t[1]>o)o=t[1]}function l(t){switch(t.type){case"GeometryCollection":t.geometries.forEach(l);break;case"Point":s(t.coordinates);break;case"MultiPoint":t.coordinates.forEach(s);break}}t.arcs.forEach((function(t){var n=-1,s=t.length,l;while(++n<s){l=e(t[n],n);if(l[0]<r)r=l[0];if(l[0]>a)a=l[0];if(l[1]<i)i=l[1];if(l[1]>o)o=l[1]}}));for(n in t.objects){l(t.objects[n])}return[r,i,a,o]}function reverse(t,e){var n,r=t.length,i=r-e;while(i<--r)n=t[i],t[i++]=t[r],t[r]=n}function feature(t,e){return e.type==="GeometryCollection"?{type:"FeatureCollection",features:e.geometries.map((function(e){return feature$1(t,e)}))}:feature$1(t,e)}function feature$1(t,e){var n=e.id,r=e.bbox,i=e.properties==null?{}:e.properties,a=object(t,e);return n==null&&r==null?{type:"Feature",properties:i,geometry:a}:r==null?{type:"Feature",id:n,properties:i,geometry:a}:{type:"Feature",id:n,bbox:r,properties:i,geometry:a}}function object(t,e){var n=transform(t.transform),r=t.arcs;function i(t,e){if(e.length)e.pop();for(var i=r[t<0?~t:t],a=0,o=i.length;a<o;++a){e.push(n(i[a],a))}if(t<0)reverse(e,o)}function a(t){return n(t)}function o(t){var e=[];for(var n=0,r=t.length;n<r;++n)i(t[n],e);if(e.length<2)e.push(e[0]);return e}function s(t){var e=o(t);while(e.length<4)e.push(e[0]);return e}function l(t){return t.map(s)}function u(t){var e=t.type,n;switch(e){case"GeometryCollection":return{type:e,geometries:t.geometries.map(u)};case"Point":n=a(t.coordinates);break;case"MultiPoint":n=t.coordinates.map(a);break;case"LineString":n=o(t.arcs);break;case"MultiLineString":n=t.arcs.map(o);break;case"Polygon":n=l(t.arcs);break;case"MultiPolygon":n=t.arcs.map(l);break;default:return null}return{type:e,coordinates:n}}return u(e)}function stitch(t,e){var n={},r={},i={},a=[],o=-1;e.forEach((function(n,r){var i=t.arcs[n<0?~n:n],a;if(i.length<3&&!i[1][0]&&!i[1][1]){a=e[++o],e[o]=n,e[r]=a}}));e.forEach((function(t){var e=s(t),n=e[0],a=e[1],o,l;if(o=i[n]){delete i[o.end];o.push(t);o.end=a;if(l=r[a]){delete r[l.start];var u=l===o?o:o.concat(l);r[u.start=o.start]=i[u.end=l.end]=u}else{r[o.start]=i[o.end]=o}}else if(o=r[a]){delete r[o.start];o.unshift(t);o.start=n;if(l=i[n]){delete i[l.end];var c=l===o?o:l.concat(o);r[c.start=l.start]=i[c.end=o.end]=c}else{r[o.start]=i[o.end]=o}}else{o=[t];r[o.start=n]=i[o.end=a]=o}}));function s(e){var n=t.arcs[e<0?~e:e],r=n[0],i;if(t.transform)i=[0,0],n.forEach((function(t){i[0]+=t[0],i[1]+=t[1]}));else i=n[n.length-1];return e<0?[i,r]:[r,i]}function l(t,e){for(var r in t){var i=t[r];delete e[i.start];delete i.start;delete i.end;i.forEach((function(t){n[t<0?~t:t]=1}));a.push(i)}}l(i,r);l(r,i);e.forEach((function(t){if(!n[t<0?~t:t])a.push([t])}));return a}function mesh(t){return object(t,meshArcs.apply(this,arguments))}function meshArcs(t,e,n){var r,i,a;if(arguments.length>1)r=extractArcs(t,e,n);else for(i=0,r=new Array(a=t.arcs.length);i<a;++i)r[i]=i;return{type:"MultiLineString",arcs:stitch(t,r)}}function extractArcs(t,e,n){var r=[],i=[],a;function o(t){var e=t<0?~t:t;(i[e]||(i[e]=[])).push({i:t,g:a})}function s(t){t.forEach(o)}function l(t){t.forEach(s)}function u(t){t.forEach(l)}function c(t){switch(a=t,t.type){case"GeometryCollection":t.geometries.forEach(c);break;case"LineString":s(t.arcs);break;case"MultiLineString":case"Polygon":l(t.arcs);break;case"MultiPolygon":u(t.arcs);break}}c(e);i.forEach(n==null?function(t){r.push(t[0].i)}:function(t){if(n(t[0].g,t[t.length-1].g))r.push(t[0].i)});return r}function planarRingArea(t){var e=-1,n=t.length,r,i=t[n-1],a=0;while(++e<n)r=i,i=t[e],a+=r[0]*i[1]-r[1]*i[0];return Math.abs(a)}function merge(t){return object(t,mergeArcs.apply(this,arguments))}function mergeArcs(t,e){var n={},r=[],i=[];e.forEach(a);function a(t){switch(t.type){case"GeometryCollection":t.geometries.forEach(a);break;case"Polygon":o(t.arcs);break;case"MultiPolygon":t.arcs.forEach(o);break}}function o(t){t.forEach((function(e){e.forEach((function(e){(n[e=e<0?~e:e]||(n[e]=[])).push(t)}))}));r.push(t)}function s(e){return planarRingArea(object(t,{type:"Polygon",arcs:[e]}).coordinates[0])}r.forEach((function(t){if(!t._){var e=[],r=[t];t._=1;i.push(e);while(t=r.pop()){e.push(t);t.forEach((function(t){t.forEach((function(t){n[t<0?~t:t].forEach((function(t){if(!t._){t._=1;r.push(t)}}))}))}))}}}));r.forEach((function(t){delete t._}));return{type:"MultiPolygon",arcs:i.map((function(e){var r=[],i;e.forEach((function(t){t.forEach((function(t){t.forEach((function(t){if(n[t<0?~t:t].length<2){r.push(t)}}))}))}));r=stitch(t,r);if((i=r.length)>1){for(var a=1,o=s(r[0]),l,u;a<i;++a){if((l=s(r[a]))>o){u=r[0],r[0]=r[a],r[a]=u,o=l}}}return r}))}}function bisect(t,e){var n=0,r=t.length;while(n<r){var i=n+r>>>1;if(t[i]<e)n=i+1;else r=i}return n}function neighbors(t){var e={},n=t.map((function(){return[]}));function r(t,n){t.forEach((function(t){if(t<0)t=~t;var r=e[t];if(r)r.push(n);else e[t]=[n]}))}function i(t,e){t.forEach((function(t){r(t,e)}))}function a(t,e){if(t.type==="GeometryCollection")t.geometries.forEach((function(t){a(t,e)}));else if(t.type in o)o[t.type](t.arcs,e)}var o={LineString:r,MultiLineString:i,Polygon:i,MultiPolygon:function(t,e){t.forEach((function(t){i(t,e)}))}};t.forEach(a);for(var s in e){for(var l=e[s],u=l.length,c=0;c<u;++c){for(var f=c+1;f<u;++f){var h=l[c],d=l[f],p;if((p=n[h])[s=bisect(p,d)]!==d)p.splice(s,0,d);if((p=n[d])[s=bisect(p,h)]!==h)p.splice(s,0,h)}}}return n}function untransform(t){if(t==null)return identity;var e,n,r=t.scale[0],i=t.scale[1],a=t.translate[0],o=t.translate[1];return function(t,s){if(!s)e=n=0;var l=2,u=t.length,c=new Array(u),f=Math.round((t[0]-a)/r),h=Math.round((t[1]-o)/i);c[0]=f-e,e=f;c[1]=h-n,n=h;while(l<u)c[l]=t[l],++l;return c}}function quantize(t,e){if(t.transform)throw new Error("already quantized");if(!e||!e.scale){if(!((o=Math.floor(e))>=2))throw new Error("n must be ≥2");l=t.bbox||bbox(t);var n=l[0],r=l[1],i=l[2],a=l[3],o;e={scale:[i-n?(i-n)/(o-1):1,a-r?(a-r)/(o-1):1],translate:[n,r]}}else{l=t.bbox}var s=untransform(e),l,u,c=t.objects,f={};function h(t){return s(t)}function d(t){var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(d)};break;case"Point":e={type:"Point",coordinates:h(t.coordinates)};break;case"MultiPoint":e={type:"MultiPoint",coordinates:t.coordinates.map(h)};break;default:return t}if(t.id!=null)e.id=t.id;if(t.bbox!=null)e.bbox=t.bbox;if(t.properties!=null)e.properties=t.properties;return e}function p(t){var e=0,n=1,r=t.length,i,a=new Array(r);a[0]=s(t[0],0);while(++e<r)if((i=s(t[e],e))[0]||i[1])a[n++]=i;if(n===1)a[n++]=[0,0];a.length=n;return a}for(u in c)f[u]=d(c[u]);return{type:"Topology",bbox:l,transform:e,objects:f,arcs:t.arcs.map(p)}}var topojson=Object.freeze({__proto__:null,bbox:bbox,feature:feature,mesh:mesh,meshArcs:meshArcs,merge:merge,mergeArcs:mergeArcs,neighbors:neighbors,quantize:quantize,transform:transform,untransform:untransform});var stzhChartCss='@charset "UTF-8";:host{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}:host[hidden]{display:none}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}.sszvis-outer-container{clear:both;position:relative}.sszvis-svg-layer{position:relative}.sszvis-html-layer{position:absolute}.sszvis-fallback-image{display:block;margin:0 auto;max-width:32.25rem;width:100%}.sszvis-interactive{cursor:default;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-touch-callout:none}.sszvis-interactive.sszvis-interactive--draggable{cursor:pointer;cursor:grab;cursor:-webkit-grab}.sszvis-interactive.sszvis-interactive--draggable:active{cursor:grabbing;cursor:-webkit-grabbing}.sszvis-axis text{fill:#767676;font-family:Arial, sans-serif;font-size:0.625rem;font-style:normal;font-weight:normal}.sszvis-axis path,.sszvis-axis line{fill:none;stroke:#B8B8B8;shape-rendering:crispEdges}.sszvis-axis .tick text.active{fill:#545454}.sszvis-axis .tick text.hidden{display:none}.sszvis-axis .tick line.hidden{display:none}.sszvis-axis.sszvis-axis--top path{display:none}.sszvis-axis.sszvis-axis--vertical path{display:none}.sszvis-axis.sszvis-axis--slider path{stroke:none}.sszvis-axis__label-contour{fill:#FFFFFF;opacity:0.8;stroke:#FFFFFF;stroke-width:3}.sszvis-bar--missing{stroke:#A4A4A4}.sszvis-line{fill:none;stroke-width:1.1}.sszvis-pyramid__referenceline{fill:none;stroke:#aaa;stroke-width:2;stroke-dasharray:3 3}.sszvis-sankey-label{alignment-baseline:central;dominant-baseline:central;font-family:Arial, sans-serif;font-size:0.625rem;font-style:normal;font-weight:normal}.sszvis-sankey-strong-label{fill:#545454}.sszvis-sankey-weak-label{fill:#767676}.sszvis-sankey-column-label{text-anchor:middle}.sszvis-sankey-column-label-tick{stroke:#B8B8B8}.sszvis-sankey-link-source-label{text-anchor:start}.sszvis-sankey-link-target-label{text-anchor:end}.sszvis-map__area{stroke:none}.sszvis-map__border{fill:none;pointer-events:none;stroke-linejoin:round;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__highlight{fill:none;pointer-events:none;stroke-linejoin:round;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__lakezurich{pointer-events:none;stroke:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__lakepath{fill:none;pointer-events:none;stroke:#d3d3d3;stroke-width:1.25;stroke-dasharray:3 3;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__geojsonelement{pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__image{display:block;position:absolute;pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__rasterimage{display:block;position:absolute;pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-control-buttonGroup{display:inline-block;position:absolute;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-control-buttonGroup__item{background-color:#FFFFFF;border:0.0625rem solid #767676;border-left:none;-webkit-box-sizing:border-box;box-sizing:border-box;color:#767676;cursor:pointer;display:table-cell;font-family:Arial, sans-serif;font-size:0.75rem;line-height:normal;padding:0.5625rem 0.75rem;text-align:center;vertical-align:middle}.sszvis-control-buttonGroup__item.selected{background-color:#767676;color:#FFFFFF}.sszvis-control-buttonGroup__item:first-child{border-left:0.0625rem solid #767676;border-top-left-radius:0.1875rem;border-bottom-left-radius:0.1875rem}.sszvis-control-buttonGroup__item:last-child{border-top-right-radius:0.1875rem;border-bottom-right-radius:0.1875rem}.sszvis-control-select{border:0.0625rem solid #767676;border-radius:0.1875rem;background-color:#FFFFFF;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAABQElEQVR4nO3TzW2DUBDEcZdACSnBpe1lVhzdCSXZnaQE55JJSOJgMO9rH/OTOK70/iNxOomIiIiIiMi3cRzfar8hlc0tAM4A3gFMeZ5UDoDps+W86sDMBgBXd7+7+z3yCACmWcfVzIbFg9/xkUeYx68a4b/4iCM8in86wlJ8pBGW4ucj/Dhy98uzowgjrImffZevQzMb3P0WeYSN8bc/v0HkEXbHU8QRksVTpBGSx1OEEbLFU8sjZI+nFkcoFk8tjVA8nloYoVo81RyhejzVGKGZeCo5QnPxVGKEZuMp5wjNx1OOEcLEU8oRwsVTihHCxtOeEcLH0ysjdBNPW0foKp4yjBAnnhKOEC+eEowQN552jBA/nl4YoZ942jBCf/G0YoR+42lhhP7j6cEIx4mn2QjHiyczGw4bLyIiIiIiUtMHjJmBk7uXEiAAAAAASUVORK5CYII=");background-position:96% 51%;background-repeat:no-repeat;background-size:0.75rem 0.75rem;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;height:2.125rem;overflow:hidden}.sszvis-control-select__element{background:transparent;border:0.0625rem solid #FFFFFF;color:#767676;font-family:Arial, sans-serif;font-size:1rem;height:2.125rem;outline:0}.sszvis-control-select__element:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.sszvis-control-select__metrics{font-family:Arial, sans-serif;font-size:0.75rem;height:auto;position:absolute;visibility:hidden;width:auto;white-space:nowrap}.sszvis-control-slider__handle{cursor:pointer}.sszvis-control-slider--label{fill:#545454;font-family:Arial, sans-serif;font-size:0.625rem;text-anchor:middle}.sszvis-control-slider__handlebox{fill:#fff;stroke:#545454}.sszvis-control-slider__handleline{stroke:#545454}.sszvis-handleRuler__handle{fill:#FFFFFF;stroke:#808184}.sszvis-handleRuler__handle-mark{stroke:#A6A8AB}.sszvis-ruler__rule{shape-rendering:crispEdges;stroke:#CCCCCC}.sszvis-ruler__dot{stroke:#FFFFFF;stroke-width:1.5}.sszvis-ruler__label,.sszvis-ruler__label-outline{font-family:Arial, sans-serif;font-size:0.75rem;font-style:normal;font-weight:normal}.sszvis-ruler__label{fill:#545454}.sszvis-ruler__label-outline{stroke:#FFFFFF;stroke-width:3}.sszvis-rangeFlag__mark{fill:#EFEFEF;stroke:#7C7C7C;stroke-width:1.5}.sszvis-rangeRuler__rule{opacity:0.25;shape-rendering:crispEdges;stroke:#000000}.sszvis-rangeRuler__p1,.sszvis-rangeRuler__p2{fill:#000000;opacity:0.25}.sszvis-rangeRuler__label,.sszvis-rangeRuler__total{font-size:0.625rem;fill:#545454;font-family:Arial, sans-serif;font-style:normal}.sszvis-tooltip{min-width:3.75rem;position:absolute}.sszvis-tooltip__background{position:absolute}.sszvis-tooltip__background path{fill:rgba(255, 255, 255, 0.9)}.sszvis-tooltip__background.sszvis-tooltip__background--fallback path{stroke:#ddd;stroke-width:1}.sszvis-tooltip__content{font-family:Arial;padding:0.625rem 0.625rem 0.4375rem 0.625rem;position:relative;white-space:nowrap;z-index:1}.sszvis-tooltip__content strong{font-weight:bold}.sszvis-tooltip__content em{font-weight:bold}.sszvis-tooltip__header{color:#545454;font-size:0.75rem;line-height:1.3333;vertical-align:middle}.sszvis-tooltip__body{color:#7C7C7C;font-size:0.6875rem;line-height:1.4545;vertical-align:middle}.sszvis-tooltip--small .sszvis-tooltip__content{padding:0.375rem 0.625rem 0.25rem 0.625rem;text-align:center}.sszvis-tooltip__body__table,.sszvis-tooltip__body__table td{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:top}.sszvis-tooltip__body__table{border:none !important;border-collapse:collapse;border-spacing:0;min-width:7.5rem;margin-top:0.375rem;width:100%}.sszvis-tooltip__body__table tr{border-top:0.0625rem solid #E5E6E7}.sszvis-tooltip__body__table td{border:none !important;padding:0.4375rem 0.5em 0.4375rem 0 !important;text-align:left;vertical-align:top}.sszvis-tooltip__body__table tr:last-child td{padding-bottom:0.1875rem}.sszvis-tooltip__body__table td:last-child{color:#545454;font-weight:bold;padding-right:0;text-align:right}.sszvis-tooltipAnchor{pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-referenceline{stroke-width:1.5;stroke:#aaa;stroke-dasharray:3 3}.sszvis-referenceline__caption{fill:#7C7C7C;font-family:Arial, sans-serif;font-size:0.6875rem;text-anchor:middle;-webkit-backface-visibility:hidden}.sszvis-dataareacircle__caption{fill:#7C7C7C;font-family:Arial, sans-serif;font-size:0.6875rem;text-anchor:middle}.sszvis-dataarearectangle__caption{fill:#7C7C7C;font-family:Arial, sans-serif;font-size:0.6875rem;text-anchor:middle}.sszvis-legend__label{fill:#767676;font-family:Arial, sans-serif;font-size:0.75rem;font-style:normal;font-weight:normal;text-anchor:start}.sszvis-legend__label--small{fill:#767676;font-size:0.625rem}.sszvis-legend__axislabel{fill:#767676;font-family:Arial, sans-serif;font-size:0.625rem;font-style:normal;font-weight:normal}.sszvis-legend__crispmark{shape-rendering:crispEdges}.sszvis-legend__greyline{fill:none;stroke:#B8B8B8;stroke-width:1.1}.sszvis-legend__dashedline{stroke:#CCCCCC;stroke-dasharray:2 3;stroke-width:1}stzh-chart{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}stzh-chart[hidden]{display:none}stzh-chart *,stzh-chart *::before,stzh-chart *::after{-webkit-box-sizing:border-box;box-sizing:border-box}';var StzhChart=function(){function t(t){registerInstance(this,t);this.initialized=false;this.chartId=undefined;this.create=function(){}}t.prototype.createWatcher=function(){if(!this.initialized&&this.chartElement){this.initialized=true;this.create(this.chartElement,{d3:d3,sszvis:sszvis$2,topojson:topojson})}};t.prototype.componentDidRender=function(){if(!this.initialized&&this.chartElement){this.initialized=true;this.create(this.chartElement,{d3:d3,sszvis:sszvis$2,topojson:topojson})}};t.prototype.render=function(){var t=this;var e={"stzh-chart":true};return h(Host,null,h("div",{class:e},h("div",{id:this.chartId,ref:function(e){return t.chartElement=e},class:"stzh-chart__element"})))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{create:["createWatcher"]}},enumerable:false,configurable:true});return t}();StzhChart.style=stzhChartCss;export{StzhChart as stzh_chart};
1
+ import{r as registerInstance,h,c as Host,g as getElement}from"./index-319b7c49.js";import{g as getAugmentedNamespace,c as createCommonjsModule,a as getDefaultExportFromCjs,b as commonjsGlobal}from"./_commonjsHelpers-f9dc4873.js";var version="4.13.0";function ascending$2(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function bisector(t){if(t.length===1)t=ascendingComparator(t);return{left:function(e,n,r,i){if(r==null)r=0;if(i==null)i=e.length;while(r<i){var a=r+i>>>1;if(t(e[a],n)<0)r=a+1;else i=a}return r},right:function(e,n,r,i){if(r==null)r=0;if(i==null)i=e.length;while(r<i){var a=r+i>>>1;if(t(e[a],n)>0)i=a;else r=a+1}return r}}}function ascendingComparator(t){return function(e,n){return ascending$2(t(e),n)}}var ascendingBisect=bisector(ascending$2);var bisectRight=ascendingBisect.right;var bisectLeft=ascendingBisect.left;function pairs(t,e){if(e==null)e=pair;var n=0,r=t.length-1,i=t[0],a=new Array(r<0?0:r);while(n<r)a[n]=e(i,i=t[++n]);return a}function pair(t,e){return[t,e]}function cross$2(t,e,n){var r=t.length,i=e.length,a=new Array(r*i),o,s,u,l;if(n==null)n=pair;for(o=u=0;o<r;++o){for(l=t[o],s=0;s<i;++s,++u){a[u]=n(l,e[s])}}return a}function descending$2(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}function number$3(t){return t===null?NaN:+t}function variance(t,e){var n=t.length,r=0,i=-1,a=0,o,s,u=0;if(e==null){while(++i<n){if(!isNaN(o=number$3(t[i]))){s=o-a;a+=s/++r;u+=s*(o-a)}}}else{while(++i<n){if(!isNaN(o=number$3(e(t[i],i,t)))){s=o-a;a+=s/++r;u+=s*(o-a)}}}if(r>1)return u/(r-1)}function deviation(t,e){var n=variance(t,e);return n?Math.sqrt(n):n}function extent$1(t,e){var n=t.length,r=-1,i,a,o;if(e==null){while(++r<n){if((i=t[r])!=null&&i>=i){a=o=i;while(++r<n){if((i=t[r])!=null){if(a>i)a=i;if(o<i)o=i}}}}}else{while(++r<n){if((i=e(t[r],r,t))!=null&&i>=i){a=o=i;while(++r<n){if((i=e(t[r],r,t))!=null){if(a>i)a=i;if(o<i)o=i}}}}}return[a,o]}var array$2=Array.prototype;var slice$6=array$2.slice;var map$2=array$2.map;function constant$c(t){return function(){return t}}function identity$9(t){return t}function sequence(t,e,n){t=+t,e=+e,n=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+n;var r=-1,i=Math.max(0,Math.ceil((e-t)/n))|0,a=new Array(i);while(++r<i){a[r]=t+r*n}return a}var e10=Math.sqrt(50),e5=Math.sqrt(10),e2=Math.sqrt(2);function ticks(t,e,n){var r,i=-1,a,o,s;e=+e,t=+t,n=+n;if(t===e&&n>0)return[t];if(r=e<t)a=t,t=e,e=a;if((s=tickIncrement(t,e,n))===0||!isFinite(s))return[];if(s>0){t=Math.ceil(t/s);e=Math.floor(e/s);o=new Array(a=Math.ceil(e-t+1));while(++i<a)o[i]=(t+i)*s}else{t=Math.floor(t*s);e=Math.ceil(e*s);o=new Array(a=Math.ceil(t-e+1));while(++i<a)o[i]=(t-i)/s}if(r)o.reverse();return o}function tickIncrement(t,e,n){var r=(e-t)/Math.max(0,n),i=Math.floor(Math.log(r)/Math.LN10),a=r/Math.pow(10,i);return i>=0?(a>=e10?10:a>=e5?5:a>=e2?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(a>=e10?10:a>=e5?5:a>=e2?2:1)}function tickStep(t,e,n){var r=Math.abs(e-t)/Math.max(0,n),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),a=r/i;if(a>=e10)i*=10;else if(a>=e5)i*=5;else if(a>=e2)i*=2;return e<t?-i:i}function sturges(t){return Math.ceil(Math.log(t.length)/Math.LN2)+1}function histogram(){var t=identity$9,e=extent$1,n=sturges;function r(r){var i,a=r.length,o,s=new Array(a);for(i=0;i<a;++i){s[i]=t(r[i],i,r)}var u=e(s),l=u[0],c=u[1],f=n(s,l,c);if(!Array.isArray(f)){f=tickStep(l,c,f);f=sequence(Math.ceil(l/f)*f,Math.floor(c/f)*f,f)}var h=f.length;while(f[0]<=l)f.shift(),--h;while(f[h-1]>c)f.pop(),--h;var d=new Array(h+1),p;for(i=0;i<=h;++i){p=d[i]=[];p.x0=i>0?f[i-1]:l;p.x1=i<h?f[i]:c}for(i=0;i<a;++i){o=s[i];if(l<=o&&o<=c){d[bisectRight(f,o,0,h)].push(r[i])}}return d}r.value=function(e){return arguments.length?(t=typeof e==="function"?e:constant$c(e),r):t};r.domain=function(t){return arguments.length?(e=typeof t==="function"?t:constant$c([t[0],t[1]]),r):e};r.thresholds=function(t){return arguments.length?(n=typeof t==="function"?t:Array.isArray(t)?constant$c(slice$6.call(t)):constant$c(t),r):n};return r}function threshold$1(t,e,n){if(n==null)n=number$3;if(!(r=t.length))return;if((e=+e)<=0||r<2)return+n(t[0],0,t);if(e>=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,a=Math.floor(i),o=+n(t[a],a,t),s=+n(t[a+1],a+1,t);return o+(s-o)*(i-a)}function freedmanDiaconis(t,e,n){t=map$2.call(t,number$3).sort(ascending$2);return Math.ceil((n-e)/(2*(threshold$1(t,.75)-threshold$1(t,.25))*Math.pow(t.length,-1/3)))}function scott(t,e,n){return Math.ceil((n-e)/(3.5*deviation(t)*Math.pow(t.length,-1/3)))}function max$2(t,e){var n=t.length,r=-1,i,a;if(e==null){while(++r<n){if((i=t[r])!=null&&i>=i){a=i;while(++r<n){if((i=t[r])!=null&&i>a){a=i}}}}}else{while(++r<n){if((i=e(t[r],r,t))!=null&&i>=i){a=i;while(++r<n){if((i=e(t[r],r,t))!=null&&i>a){a=i}}}}}return a}function mean(t,e){var n=t.length,r=n,i=-1,a,o=0;if(e==null){while(++i<n){if(!isNaN(a=number$3(t[i])))o+=a;else--r}}else{while(++i<n){if(!isNaN(a=number$3(e(t[i],i,t))))o+=a;else--r}}if(r)return o/r}function median(t,e){var n=t.length,r=-1,i,a=[];if(e==null){while(++r<n){if(!isNaN(i=number$3(t[r]))){a.push(i)}}}else{while(++r<n){if(!isNaN(i=number$3(e(t[r],r,t)))){a.push(i)}}}return threshold$1(a.sort(ascending$2),.5)}function merge$1(t){var e=t.length,n,r=-1,i=0,a,o;while(++r<e)i+=t[r].length;a=new Array(i);while(--e>=0){o=t[e];n=o.length;while(--n>=0){a[--i]=o[n]}}return a}function min$1(t,e){var n=t.length,r=-1,i,a;if(e==null){while(++r<n){if((i=t[r])!=null&&i>=i){a=i;while(++r<n){if((i=t[r])!=null&&a>i){a=i}}}}}else{while(++r<n){if((i=e(t[r],r,t))!=null&&i>=i){a=i;while(++r<n){if((i=e(t[r],r,t))!=null&&a>i){a=i}}}}}return a}function permute(t,e){var n=e.length,r=new Array(n);while(n--)r[n]=t[e[n]];return r}function scan(t,e){if(!(n=t.length))return;var n,r=0,i=0,a,o=t[i];if(e==null)e=ascending$2;while(++r<n){if(e(a=t[r],o)<0||e(o,o)!==0){o=a,i=r}}if(e(o,o)===0)return i}function shuffle$1(t,e,n){var r=(n==null?t.length:n)-(e=e==null?0:+e),i,a;while(r){a=Math.random()*r--|0;i=t[r+e];t[r+e]=t[a+e];t[a+e]=i}return t}function sum$2(t,e){var n=t.length,r=-1,i,a=0;if(e==null){while(++r<n){if(i=+t[r])a+=i}}else{while(++r<n){if(i=+e(t[r],r,t))a+=i}}return a}function transpose(t){if(!(a=t.length))return[];for(var e=-1,n=min$1(t,length$2),r=new Array(n);++e<n;){for(var i=-1,a,o=r[e]=new Array(a);++i<a;){o[i]=t[i][e]}}return r}function length$2(t){return t.length}function zip(){return transpose(arguments)}var slice$5=Array.prototype.slice;function identity$8(t){return t}var top=1,right=2,bottom=3,left=4,epsilon$4=1e-6;function translateX(t){return"translate("+(t+.5)+",0)"}function translateY(t){return"translate(0,"+(t+.5)+")"}function number$2(t){return function(e){return+t(e)}}function center$1(t){var e=Math.max(0,t.bandwidth()-1)/2;if(t.round())e=Math.round(e);return function(n){return+t(n)+e}}function entering(){return!this.__axis}function axis(t,e){var n=[],r=null,i=null,a=6,o=6,s=3,u=t===top||t===left?-1:1,l=t===left||t===right?"x":"y",c=t===top||t===bottom?translateX:translateY;function f(f){var h=r==null?e.ticks?e.ticks.apply(e,n):e.domain():r,d=i==null?e.tickFormat?e.tickFormat.apply(e,n):identity$8:i,p=Math.max(a,0)+s,v=e.range(),m=+v[0]+.5,g=+v[v.length-1]+.5,y=(e.bandwidth?center$1:number$2)(e.copy()),b=f.selection?f.selection():f,_=b.selectAll(".domain").data([null]),x=b.selectAll(".tick").data(h,e).order(),w=x.exit(),$=x.enter().append("g").attr("class","tick"),k=x.select("line"),M=x.select("text");_=_.merge(_.enter().insert("path",".tick").attr("class","domain").attr("stroke","#000"));x=x.merge($);k=k.merge($.append("line").attr("stroke","#000").attr(l+"2",u*a));M=M.merge($.append("text").attr("fill","#000").attr(l,u*p).attr("dy",t===top?"0em":t===bottom?"0.71em":"0.32em"));if(f!==b){_=_.transition(f);x=x.transition(f);k=k.transition(f);M=M.transition(f);w=w.transition(f).attr("opacity",epsilon$4).attr("transform",(function(t){return isFinite(t=y(t))?c(t):this.getAttribute("transform")}));$.attr("opacity",epsilon$4).attr("transform",(function(t){var e=this.parentNode.__axis;return c(e&&isFinite(e=e(t))?e:y(t))}))}w.remove();_.attr("d",t===left||t==right?"M"+u*o+","+m+"H0.5V"+g+"H"+u*o:"M"+m+","+u*o+"V0.5H"+g+"V"+u*o);x.attr("opacity",1).attr("transform",(function(t){return c(y(t))}));k.attr(l+"2",u*a);M.attr(l,u*p).text(d);b.filter(entering).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===right?"start":t===left?"end":"middle");b.each((function(){this.__axis=y}))}f.scale=function(t){return arguments.length?(e=t,f):e};f.ticks=function(){return n=slice$5.call(arguments),f};f.tickArguments=function(t){return arguments.length?(n=t==null?[]:slice$5.call(t),f):n.slice()};f.tickValues=function(t){return arguments.length?(r=t==null?null:slice$5.call(t),f):r&&r.slice()};f.tickFormat=function(t){return arguments.length?(i=t,f):i};f.tickSize=function(t){return arguments.length?(a=o=+t,f):a};f.tickSizeInner=function(t){return arguments.length?(a=+t,f):a};f.tickSizeOuter=function(t){return arguments.length?(o=+t,f):o};f.tickPadding=function(t){return arguments.length?(s=+t,f):s};return f}function axisTop(t){return axis(top,t)}function axisRight(t){return axis(right,t)}function axisBottom(t){return axis(bottom,t)}function axisLeft(t){return axis(left,t)}var noop$2={value:function(){}};function dispatch(){for(var t=0,e=arguments.length,n={},r;t<e;++t){if(!(r=arguments[t]+"")||r in n)throw new Error("illegal type: "+r);n[r]=[]}return new Dispatch(n)}function Dispatch(t){this._=t}function parseTypenames$1(t,e){return t.trim().split(/^|\s+/).map((function(t){var n="",r=t.indexOf(".");if(r>=0)n=t.slice(r+1),t=t.slice(0,r);if(t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}}))}Dispatch.prototype=dispatch.prototype={constructor:Dispatch,on:function(t,e){var n=this._,r=parseTypenames$1(t+"",n),i,a=-1,o=r.length;if(arguments.length<2){while(++a<o)if((i=(t=r[a]).type)&&(i=get$1(n[i],t.name)))return i;return}if(e!=null&&typeof e!=="function")throw new Error("invalid callback: "+e);while(++a<o){if(i=(t=r[a]).type)n[i]=set$2(n[i],t.name,e);else if(e==null)for(i in n)n[i]=set$2(n[i],t.name,null)}return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new Dispatch(t)},call:function(t,e){if((i=arguments.length-2)>0)for(var n=new Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(a=this._[t],r=0,i=a.length;r<i;++r)a[r].value.apply(e,n)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],i=0,a=r.length;i<a;++i)r[i].value.apply(e,n)}};function get$1(t,e){for(var n=0,r=t.length,i;n<r;++n){if((i=t[n]).name===e){return i.value}}}function set$2(t,e,n){for(var r=0,i=t.length;r<i;++r){if(t[r].name===e){t[r]=noop$2,t=t.slice(0,r).concat(t.slice(r+1));break}}if(n!=null)t.push({name:e,value:n});return t}var xhtml="http://www.w3.org/1999/xhtml";var namespaces={svg:"http://www.w3.org/2000/svg",xhtml:xhtml,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function namespace(t){var e=t+="",n=e.indexOf(":");if(n>=0&&(e=t.slice(0,n))!=="xmlns")t=t.slice(n+1);return namespaces.hasOwnProperty(e)?{space:namespaces[e],local:t}:t}function creatorInherit(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===xhtml&&e.documentElement.namespaceURI===xhtml?e.createElement(t):e.createElementNS(n,t)}}function creatorFixed(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function creator(t){var e=namespace(t);return(e.local?creatorFixed:creatorInherit)(e)}function none$2(){}function selector(t){return t==null?none$2:function(){return this.querySelector(t)}}function selection_select(t){if(typeof t!=="function")t=selector(t);for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i){for(var a=e[i],o=a.length,s=r[i]=new Array(o),u,l,c=0;c<o;++c){if((u=a[c])&&(l=t.call(u,u.__data__,c,a))){if("__data__"in u)l.__data__=u.__data__;s[c]=l}}}return new Selection$1(r,this._parents)}function empty$1(){return[]}function selectorAll(t){return t==null?empty$1:function(){return this.querySelectorAll(t)}}function selection_selectAll(t){if(typeof t!=="function")t=selectorAll(t);for(var e=this._groups,n=e.length,r=[],i=[],a=0;a<n;++a){for(var o=e[a],s=o.length,u,l=0;l<s;++l){if(u=o[l]){r.push(t.call(u,u.__data__,l,o));i.push(u)}}}return new Selection$1(r,i)}var matcher=function(t){return function(){return this.matches(t)}};if(typeof document!=="undefined"){var element$1=document.documentElement;if(!element$1.matches){var vendorMatches=element$1.webkitMatchesSelector||element$1.msMatchesSelector||element$1.mozMatchesSelector||element$1.oMatchesSelector;matcher=function(t){return function(){return vendorMatches.call(this,t)}}}}var matcher$1=matcher;function selection_filter(t){if(typeof t!=="function")t=matcher$1(t);for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i){for(var a=e[i],o=a.length,s=r[i]=[],u,l=0;l<o;++l){if((u=a[l])&&t.call(u,u.__data__,l,a)){s.push(u)}}}return new Selection$1(r,this._parents)}function sparse(t){return new Array(t.length)}function selection_enter(){return new Selection$1(this._enter||this._groups.map(sparse),this._parents)}function EnterNode(t,e){this.ownerDocument=t.ownerDocument;this.namespaceURI=t.namespaceURI;this._next=null;this._parent=t;this.__data__=e}EnterNode.prototype={constructor:EnterNode,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function constant$b(t){return function(){return t}}var keyPrefix$1="$";function bindIndex(t,e,n,r,i,a){var o=0,s,u=e.length,l=a.length;for(;o<l;++o){if(s=e[o]){s.__data__=a[o];r[o]=s}else{n[o]=new EnterNode(t,a[o])}}for(;o<u;++o){if(s=e[o]){i[o]=s}}}function bindKey(t,e,n,r,i,a,o){var s,u,l={},c=e.length,f=a.length,h=new Array(c),d;for(s=0;s<c;++s){if(u=e[s]){h[s]=d=keyPrefix$1+o.call(u,u.__data__,s,e);if(d in l){i[s]=u}else{l[d]=u}}}for(s=0;s<f;++s){d=keyPrefix$1+o.call(t,a[s],s,a);if(u=l[d]){r[s]=u;u.__data__=a[s];l[d]=null}else{n[s]=new EnterNode(t,a[s])}}for(s=0;s<c;++s){if((u=e[s])&&l[h[s]]===u){i[s]=u}}}function selection_data(t,e){if(!t){d=new Array(this.size()),l=-1;this.each((function(t){d[++l]=t}));return d}var n=e?bindKey:bindIndex,r=this._parents,i=this._groups;if(typeof t!=="function")t=constant$b(t);for(var a=i.length,o=new Array(a),s=new Array(a),u=new Array(a),l=0;l<a;++l){var c=r[l],f=i[l],h=f.length,d=t.call(c,c&&c.__data__,l,r),p=d.length,v=s[l]=new Array(p),m=o[l]=new Array(p),g=u[l]=new Array(h);n(c,f,v,m,g,d,e);for(var y=0,b=0,_,x;y<p;++y){if(_=v[y]){if(y>=b)b=y+1;while(!(x=m[b])&&++b<p);_._next=x||null}}}o=new Selection$1(o,r);o._enter=s;o._exit=u;return o}function selection_exit(){return new Selection$1(this._exit||this._groups.map(sparse),this._parents)}function selection_merge(t){for(var e=this._groups,n=t._groups,r=e.length,i=n.length,a=Math.min(r,i),o=new Array(r),s=0;s<a;++s){for(var u=e[s],l=n[s],c=u.length,f=o[s]=new Array(c),h,d=0;d<c;++d){if(h=u[d]||l[d]){f[d]=h}}}for(;s<r;++s){o[s]=e[s]}return new Selection$1(o,this._parents)}function selection_order(){for(var t=this._groups,e=-1,n=t.length;++e<n;){for(var r=t[e],i=r.length-1,a=r[i],o;--i>=0;){if(o=r[i]){if(a&&a!==o.nextSibling)a.parentNode.insertBefore(o,a);a=o}}}return this}function selection_sort(t){if(!t)t=ascending$1;function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}for(var n=this._groups,r=n.length,i=new Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,u=i[a]=new Array(s),l,c=0;c<s;++c){if(l=o[c]){u[c]=l}}u.sort(e)}return new Selection$1(i,this._parents).order()}function ascending$1(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function selection_call(){var t=arguments[0];arguments[0]=this;t.apply(null,arguments);return this}function selection_nodes(){var t=new Array(this.size()),e=-1;this.each((function(){t[++e]=this}));return t}function selection_node(){for(var t=this._groups,e=0,n=t.length;e<n;++e){for(var r=t[e],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}}return null}function selection_size(){var t=0;this.each((function(){++t}));return t}function selection_empty(){return!this.node()}function selection_each(t){for(var e=this._groups,n=0,r=e.length;n<r;++n){for(var i=e[n],a=0,o=i.length,s;a<o;++a){if(s=i[a])t.call(s,s.__data__,a,i)}}return this}function attrRemove$1(t){return function(){this.removeAttribute(t)}}function attrRemoveNS$1(t){return function(){this.removeAttributeNS(t.space,t.local)}}function attrConstant$1(t,e){return function(){this.setAttribute(t,e)}}function attrConstantNS$1(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function attrFunction$1(t,e){return function(){var n=e.apply(this,arguments);if(n==null)this.removeAttribute(t);else this.setAttribute(t,n)}}function attrFunctionNS$1(t,e){return function(){var n=e.apply(this,arguments);if(n==null)this.removeAttributeNS(t.space,t.local);else this.setAttributeNS(t.space,t.local,n)}}function selection_attr(t,e){var n=namespace(t);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((e==null?n.local?attrRemoveNS$1:attrRemove$1:typeof e==="function"?n.local?attrFunctionNS$1:attrFunction$1:n.local?attrConstantNS$1:attrConstant$1)(n,e))}function defaultView(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function styleRemove$1(t){return function(){this.style.removeProperty(t)}}function styleConstant$1(t,e,n){return function(){this.style.setProperty(t,e,n)}}function styleFunction$1(t,e,n){return function(){var r=e.apply(this,arguments);if(r==null)this.style.removeProperty(t);else this.style.setProperty(t,r,n)}}function selection_style(t,e,n){return arguments.length>1?this.each((e==null?styleRemove$1:typeof e==="function"?styleFunction$1:styleConstant$1)(t,e,n==null?"":n)):styleValue(this.node(),t)}function styleValue(t,e){return t.style.getPropertyValue(e)||defaultView(t).getComputedStyle(t,null).getPropertyValue(e)}function propertyRemove(t){return function(){delete this[t]}}function propertyConstant(t,e){return function(){this[t]=e}}function propertyFunction(t,e){return function(){var n=e.apply(this,arguments);if(n==null)delete this[t];else this[t]=n}}function selection_property(t,e){return arguments.length>1?this.each((e==null?propertyRemove:typeof e==="function"?propertyFunction:propertyConstant)(t,e)):this.node()[t]}function classArray(t){return t.trim().split(/^|\s+/)}function classList(t){return t.classList||new ClassList(t)}function ClassList(t){this._node=t;this._names=classArray(t.getAttribute("class")||"")}ClassList.prototype={add:function(t){var e=this._names.indexOf(t);if(e<0){this._names.push(t);this._node.setAttribute("class",this._names.join(" "))}},remove:function(t){var e=this._names.indexOf(t);if(e>=0){this._names.splice(e,1);this._node.setAttribute("class",this._names.join(" "))}},contains:function(t){return this._names.indexOf(t)>=0}};function classedAdd(t,e){var n=classList(t),r=-1,i=e.length;while(++r<i)n.add(e[r])}function classedRemove(t,e){var n=classList(t),r=-1,i=e.length;while(++r<i)n.remove(e[r])}function classedTrue(t){return function(){classedAdd(this,t)}}function classedFalse(t){return function(){classedRemove(this,t)}}function classedFunction(t,e){return function(){(e.apply(this,arguments)?classedAdd:classedRemove)(this,t)}}function selection_classed(t,e){var n=classArray(t+"");if(arguments.length<2){var r=classList(this.node()),i=-1,a=n.length;while(++i<a)if(!r.contains(n[i]))return false;return true}return this.each((typeof e==="function"?classedFunction:e?classedTrue:classedFalse)(n,e))}function textRemove(){this.textContent=""}function textConstant$1(t){return function(){this.textContent=t}}function textFunction$1(t){return function(){var e=t.apply(this,arguments);this.textContent=e==null?"":e}}function selection_text(t){return arguments.length?this.each(t==null?textRemove:(typeof t==="function"?textFunction$1:textConstant$1)(t)):this.node().textContent}function htmlRemove(){this.innerHTML=""}function htmlConstant(t){return function(){this.innerHTML=t}}function htmlFunction(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e==null?"":e}}function selection_html(t){return arguments.length?this.each(t==null?htmlRemove:(typeof t==="function"?htmlFunction:htmlConstant)(t)):this.node().innerHTML}function raise$1(){if(this.nextSibling)this.parentNode.appendChild(this)}function selection_raise(){return this.each(raise$1)}function lower(){if(this.previousSibling)this.parentNode.insertBefore(this,this.parentNode.firstChild)}function selection_lower(){return this.each(lower)}function selection_append(t){var e=typeof t==="function"?t:creator(t);return this.select((function(){return this.appendChild(e.apply(this,arguments))}))}function constantNull(){return null}function selection_insert(t,e){var n=typeof t==="function"?t:creator(t),r=e==null?constantNull:typeof e==="function"?e:selector(e);return this.select((function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)}))}function remove(){var t=this.parentNode;if(t)t.removeChild(this)}function selection_remove(){return this.each(remove)}function selection_cloneShallow(){return this.parentNode.insertBefore(this.cloneNode(false),this.nextSibling)}function selection_cloneDeep(){return this.parentNode.insertBefore(this.cloneNode(true),this.nextSibling)}function selection_clone(t){return this.select(t?selection_cloneDeep:selection_cloneShallow)}function selection_datum(t){return arguments.length?this.property("__data__",t):this.node().__data__}var filterEvents={};var event=null;if(typeof document!=="undefined"){var element=document.documentElement;if(!("onmouseenter"in element)){filterEvents={mouseenter:"mouseover",mouseleave:"mouseout"}}}function filterContextListener(t,e,n){t=contextListener(t,e,n);return function(e){var n=e.relatedTarget;if(!n||n!==this&&!(n.compareDocumentPosition(this)&8)){t.call(this,e)}}}function contextListener(t,e,n){return function(r){var i=event;event=r;try{t.call(this,this.__data__,e,n)}finally{event=i}}}function parseTypenames(t){return t.trim().split(/^|\s+/).map((function(t){var e="",n=t.indexOf(".");if(n>=0)e=t.slice(n+1),t=t.slice(0,n);return{type:t,name:e}}))}function onRemove(t){return function(){var e=this.__on;if(!e)return;for(var n=0,r=-1,i=e.length,a;n<i;++n){if(a=e[n],(!t.type||a.type===t.type)&&a.name===t.name){this.removeEventListener(a.type,a.listener,a.capture)}else{e[++r]=a}}if(++r)e.length=r;else delete this.__on}}function onAdd(t,e,n){var r=filterEvents.hasOwnProperty(t.type)?filterContextListener:contextListener;return function(i,a,o){var s=this.__on,u,l=r(e,a,o);if(s)for(var c=0,f=s.length;c<f;++c){if((u=s[c]).type===t.type&&u.name===t.name){this.removeEventListener(u.type,u.listener,u.capture);this.addEventListener(u.type,u.listener=l,u.capture=n);u.value=e;return}}this.addEventListener(t.type,l,n);u={type:t.type,name:t.name,value:e,listener:l,capture:n};if(!s)this.__on=[u];else s.push(u)}}function selection_on(t,e,n){var r=parseTypenames(t+""),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s)for(var u=0,l=s.length,c;u<l;++u){for(i=0,c=s[u];i<a;++i){if((o=r[i]).type===c.type&&o.name===c.name){return c.value}}}return}s=e?onAdd:onRemove;if(n==null)n=false;for(i=0;i<a;++i)this.each(s(r[i],e,n));return this}function customEvent(t,e,n,r){var i=event;t.sourceEvent=event;event=t;try{return e.apply(n,r)}finally{event=i}}function dispatchEvent(t,e,n){var r=defaultView(t),i=r.CustomEvent;if(typeof i==="function"){i=new i(e,n)}else{i=r.document.createEvent("Event");if(n)i.initEvent(e,n.bubbles,n.cancelable),i.detail=n.detail;else i.initEvent(e,false,false)}t.dispatchEvent(i)}function dispatchConstant(t,e){return function(){return dispatchEvent(this,t,e)}}function dispatchFunction(t,e){return function(){return dispatchEvent(this,t,e.apply(this,arguments))}}function selection_dispatch(t,e){return this.each((typeof e==="function"?dispatchFunction:dispatchConstant)(t,e))}var root$1=[null];function Selection$1(t,e){this._groups=t;this._parents=e}function selection(){return new Selection$1([[document.documentElement]],root$1)}Selection$1.prototype=selection.prototype={constructor:Selection$1,select:selection_select,selectAll:selection_selectAll,filter:selection_filter,data:selection_data,enter:selection_enter,exit:selection_exit,merge:selection_merge,order:selection_order,sort:selection_sort,call:selection_call,nodes:selection_nodes,node:selection_node,size:selection_size,empty:selection_empty,each:selection_each,attr:selection_attr,style:selection_style,property:selection_property,classed:selection_classed,text:selection_text,html:selection_html,raise:selection_raise,lower:selection_lower,append:selection_append,insert:selection_insert,remove:selection_remove,clone:selection_clone,datum:selection_datum,on:selection_on,dispatch:selection_dispatch};function select(t){return typeof t==="string"?new Selection$1([[document.querySelector(t)]],[document.documentElement]):new Selection$1([[t]],root$1)}function create$1(t){return select(creator(t).call(document.documentElement))}var nextId=0;function local$1(){return new Local}function Local(){this._="@"+(++nextId).toString(36)}Local.prototype=local$1.prototype={constructor:Local,get:function(t){var e=this._;while(!(e in t))if(!(t=t.parentNode))return;return t[e]},set:function(t,e){return t[this._]=e},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};function sourceEvent(){var t=event,e;while(e=t.sourceEvent)t=e;return t}function point$5(t,e){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();r.x=e.clientX,r.y=e.clientY;r=r.matrixTransform(t.getScreenCTM().inverse());return[r.x,r.y]}var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}function mouse(t){var e=sourceEvent();if(e.changedTouches)e=e.changedTouches[0];return point$5(t,e)}function selectAll(t){return typeof t==="string"?new Selection$1([document.querySelectorAll(t)],[document.documentElement]):new Selection$1([t==null?[]:t],root$1)}function touch(t,e,n){if(arguments.length<3)n=e,e=sourceEvent().changedTouches;for(var r=0,i=e?e.length:0,a;r<i;++r){if((a=e[r]).identifier===n){return point$5(t,a)}}return null}function touches(t,e){if(e==null)e=sourceEvent().touches;for(var n=0,r=e?e.length:0,i=new Array(r);n<r;++n){i[n]=point$5(t,e[n])}return i}function nopropagation$2(){event.stopImmediatePropagation()}function noevent$2(){event.preventDefault();event.stopImmediatePropagation()}function dragDisable(t){var e=t.document.documentElement,n=select(t).on("dragstart.drag",noevent$2,true);if("onselectstart"in e){n.on("selectstart.drag",noevent$2,true)}else{e.__noselect=e.style.MozUserSelect;e.style.MozUserSelect="none"}}function yesdrag(t,e){var n=t.document.documentElement,r=select(t).on("dragstart.drag",null);if(e){r.on("click.drag",noevent$2,true);setTimeout((function(){r.on("click.drag",null)}),0)}if("onselectstart"in n){r.on("selectstart.drag",null)}else{n.style.MozUserSelect=n.__noselect;delete n.__noselect}}function constant$a(t){return function(){return t}}function DragEvent(t,e,n,r,i,a,o,s,u,l){this.target=t;this.type=e;this.subject=n;this.identifier=r;this.active=i;this.x=a;this.y=o;this.dx=s;this.dy=u;this._=l}DragEvent.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function defaultFilter$2(){return!event.button}function defaultContainer(){return this.parentNode}function defaultSubject(t){return t==null?{x:event.x,y:event.y}:t}function defaultTouchable$1(){return"ontouchstart"in this}function drag(){var t=defaultFilter$2,e=defaultContainer,n=defaultSubject,r=defaultTouchable$1,i={},a=dispatch("start","drag","end"),o=0,s,u,l,c,f=0;function h(t){t.on("mousedown.drag",d).filter(r).on("touchstart.drag",m).on("touchmove.drag",g).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(){if(c||!t.apply(this,arguments))return;var n=b("mouse",e.apply(this,arguments),mouse,this,arguments);if(!n)return;select(event.view).on("mousemove.drag",p,true).on("mouseup.drag",v,true);dragDisable(event.view);nopropagation$2();l=false;s=event.clientX;u=event.clientY;n("start")}function p(){noevent$2();if(!l){var t=event.clientX-s,e=event.clientY-u;l=t*t+e*e>f}i.mouse("drag")}function v(){select(event.view).on("mousemove.drag mouseup.drag",null);yesdrag(event.view,l);noevent$2();i.mouse("end")}function m(){if(!t.apply(this,arguments))return;var n=event.changedTouches,r=e.apply(this,arguments),i=n.length,a,o;for(a=0;a<i;++a){if(o=b(n[a].identifier,r,touch,this,arguments)){nopropagation$2();o("start")}}}function g(){var t=event.changedTouches,e=t.length,n,r;for(n=0;n<e;++n){if(r=i[t[n].identifier]){noevent$2();r("drag")}}}function y(){var t=event.changedTouches,e=t.length,n,r;if(c)clearTimeout(c);c=setTimeout((function(){c=null}),500);for(n=0;n<e;++n){if(r=i[t[n].identifier]){nopropagation$2();r("end")}}}function b(t,e,r,s,u){var l=r(e,t),c,f,d,p=a.copy();if(!customEvent(new DragEvent(h,"beforestart",c,t,o,l[0],l[1],0,0,p),(function(){if((event.subject=c=n.apply(s,u))==null)return false;f=c.x-l[0]||0;d=c.y-l[1]||0;return true})))return;return function n(a){var v=l,m;switch(a){case"start":i[t]=n,m=o++;break;case"end":delete i[t],--o;case"drag":l=r(e,t),m=o;break}customEvent(new DragEvent(h,a,c,t,m,l[0]+f,l[1]+d,l[0]-v[0],l[1]-v[1],p),p.apply,p,[a,s,u])}}h.filter=function(e){return arguments.length?(t=typeof e==="function"?e:constant$a(!!e),h):t};h.container=function(t){return arguments.length?(e=typeof t==="function"?t:constant$a(t),h):e};h.subject=function(t){return arguments.length?(n=typeof t==="function"?t:constant$a(t),h):n};h.touchable=function(t){return arguments.length?(r=typeof t==="function"?t:constant$a(!!t),h):r};h.on=function(){var t=a.on.apply(a,arguments);return t===a?h:t};h.clickDistance=function(t){return arguments.length?(f=(t=+t)*t,h):Math.sqrt(f)};return h}function define(t,e,n){t.prototype=e.prototype=n;n.constructor=t}function extend(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function Color(){}var darker=.7;var brighter=1/darker;var reI="\\s*([+-]?\\d+)\\s*",reN="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",reP="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",reHex3=/^#([0-9a-f]{3})$/,reHex6=/^#([0-9a-f]{6})$/,reRgbInteger=new RegExp("^rgb\\("+[reI,reI,reI]+"\\)$"),reRgbPercent=new RegExp("^rgb\\("+[reP,reP,reP]+"\\)$"),reRgbaInteger=new RegExp("^rgba\\("+[reI,reI,reI,reN]+"\\)$"),reRgbaPercent=new RegExp("^rgba\\("+[reP,reP,reP,reN]+"\\)$"),reHslPercent=new RegExp("^hsl\\("+[reN,reP,reP]+"\\)$"),reHslaPercent=new RegExp("^hsla\\("+[reN,reP,reP,reN]+"\\)$");var named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};define(Color,color,{displayable:function(){return this.rgb().displayable()},toString:function(){return this.rgb()+""}});function color(t){var e;t=(t+"").trim().toLowerCase();return(e=reHex3.exec(t))?(e=parseInt(e[1],16),new Rgb(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1)):(e=reHex6.exec(t))?rgbn(parseInt(e[1],16)):(e=reRgbInteger.exec(t))?new Rgb(e[1],e[2],e[3],1):(e=reRgbPercent.exec(t))?new Rgb(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=reRgbaInteger.exec(t))?rgba(e[1],e[2],e[3],e[4]):(e=reRgbaPercent.exec(t))?rgba(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=reHslPercent.exec(t))?hsla(e[1],e[2]/100,e[3]/100,1):(e=reHslaPercent.exec(t))?hsla(e[1],e[2]/100,e[3]/100,e[4]):named.hasOwnProperty(t)?rgbn(named[t]):t==="transparent"?new Rgb(NaN,NaN,NaN,0):null}function rgbn(t){return new Rgb(t>>16&255,t>>8&255,t&255,1)}function rgba(t,e,n,r){if(r<=0)t=e=n=NaN;return new Rgb(t,e,n,r)}function rgbConvert(t){if(!(t instanceof Color))t=color(t);if(!t)return new Rgb;t=t.rgb();return new Rgb(t.r,t.g,t.b,t.opacity)}function rgb(t,e,n,r){return arguments.length===1?rgbConvert(t):new Rgb(t,e,n,r==null?1:r)}function Rgb(t,e,n,r){this.r=+t;this.g=+e;this.b=+n;this.opacity=+r}define(Rgb,rgb,extend(Color,{brighter:function(t){t=t==null?brighter:Math.pow(brighter,t);return new Rgb(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){t=t==null?darker:Math.pow(darker,t);return new Rgb(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return 0<=this.r&&this.r<=255&&(0<=this.g&&this.g<=255)&&(0<=this.b&&this.b<=255)&&(0<=this.opacity&&this.opacity<=1)},toString:function(){var t=this.opacity;t=isNaN(t)?1:Math.max(0,Math.min(1,t));return(t===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(t===1?")":", "+t+")")}}));function hsla(t,e,n,r){if(r<=0)t=e=n=NaN;else if(n<=0||n>=1)t=e=NaN;else if(e<=0)t=NaN;return new Hsl(t,e,n,r)}function hslConvert(t){if(t instanceof Hsl)return new Hsl(t.h,t.s,t.l,t.opacity);if(!(t instanceof Color))t=color(t);if(!t)return new Hsl;if(t instanceof Hsl)return t;t=t.rgb();var e=t.r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),a=Math.max(e,n,r),o=NaN,s=a-i,u=(a+i)/2;if(s){if(e===a)o=(n-r)/s+(n<r)*6;else if(n===a)o=(r-e)/s+2;else o=(e-n)/s+4;s/=u<.5?a+i:2-a-i;o*=60}else{s=u>0&&u<1?0:o}return new Hsl(o,s,u,t.opacity)}function hsl$2(t,e,n,r){return arguments.length===1?hslConvert(t):new Hsl(t,e,n,r==null?1:r)}function Hsl(t,e,n,r){this.h=+t;this.s=+e;this.l=+n;this.opacity=+r}define(Hsl,hsl$2,extend(Color,{brighter:function(t){t=t==null?brighter:Math.pow(brighter,t);return new Hsl(this.h,this.s,this.l*t,this.opacity)},darker:function(t){t=t==null?darker:Math.pow(darker,t);return new Hsl(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new Rgb(hsl2rgb(t>=240?t-240:t+120,i,r),hsl2rgb(t,i,r),hsl2rgb(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&(0<=this.l&&this.l<=1)&&(0<=this.opacity&&this.opacity<=1)}}));function hsl2rgb(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}var deg2rad=Math.PI/180;var rad2deg=180/Math.PI;var Kn=18,Xn=.95047,Yn=1,Zn=1.08883,t0$1=4/29,t1$1=6/29,t2=3*t1$1*t1$1,t3=t1$1*t1$1*t1$1;function labConvert(t){if(t instanceof Lab)return new Lab(t.l,t.a,t.b,t.opacity);if(t instanceof Hcl){var e=t.h*deg2rad;return new Lab(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}if(!(t instanceof Rgb))t=rgbConvert(t);var n=rgb2xyz(t.r),r=rgb2xyz(t.g),i=rgb2xyz(t.b),a=xyz2lab((.4124564*n+.3575761*r+.1804375*i)/Xn),o=xyz2lab((.2126729*n+.7151522*r+.072175*i)/Yn),s=xyz2lab((.0193339*n+.119192*r+.9503041*i)/Zn);return new Lab(116*o-16,500*(a-o),200*(o-s),t.opacity)}function lab$1(t,e,n,r){return arguments.length===1?labConvert(t):new Lab(t,e,n,r==null?1:r)}function Lab(t,e,n,r){this.l=+t;this.a=+e;this.b=+n;this.opacity=+r}define(Lab,lab$1,extend(Color,{brighter:function(t){return new Lab(this.l+Kn*(t==null?1:t),this.a,this.b,this.opacity)},darker:function(t){return new Lab(this.l-Kn*(t==null?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;t=Yn*lab2xyz(t);e=Xn*lab2xyz(e);n=Zn*lab2xyz(n);return new Rgb(xyz2rgb(3.2404542*e-1.5371385*t-.4985314*n),xyz2rgb(-.969266*e+1.8760108*t+.041556*n),xyz2rgb(.0556434*e-.2040259*t+1.0572252*n),this.opacity)}}));function xyz2lab(t){return t>t3?Math.pow(t,1/3):t/t2+t0$1}function lab2xyz(t){return t>t1$1?t*t*t:t2*(t-t0$1)}function xyz2rgb(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function rgb2xyz(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function hclConvert(t){if(t instanceof Hcl)return new Hcl(t.h,t.c,t.l,t.opacity);if(!(t instanceof Lab))t=labConvert(t);var e=Math.atan2(t.b,t.a)*rad2deg;return new Hcl(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function hcl$2(t,e,n,r){return arguments.length===1?hclConvert(t):new Hcl(t,e,n,r==null?1:r)}function Hcl(t,e,n,r){this.h=+t;this.c=+e;this.l=+n;this.opacity=+r}define(Hcl,hcl$2,extend(Color,{brighter:function(t){return new Hcl(this.h,this.c,this.l+Kn*(t==null?1:t),this.opacity)},darker:function(t){return new Hcl(this.h,this.c,this.l-Kn*(t==null?1:t),this.opacity)},rgb:function(){return labConvert(this).rgb()}}));var A=-.14861,B=+1.78277,C=-.29227,D=-.90649,E=+1.97294,ED=E*D,EB=E*B,BC_DA=B*C-D*A;function cubehelixConvert(t){if(t instanceof Cubehelix)return new Cubehelix(t.h,t.s,t.l,t.opacity);if(!(t instanceof Rgb))t=rgbConvert(t);var e=t.r/255,n=t.g/255,r=t.b/255,i=(BC_DA*r+ED*e-EB*n)/(BC_DA+ED-EB),a=r-i,o=(E*(n-i)-C*a)/D,s=Math.sqrt(o*o+a*a)/(E*i*(1-i)),u=s?Math.atan2(o,a)*rad2deg-120:NaN;return new Cubehelix(u<0?u+360:u,s,i,t.opacity)}function cubehelix$3(t,e,n,r){return arguments.length===1?cubehelixConvert(t):new Cubehelix(t,e,n,r==null?1:r)}function Cubehelix(t,e,n,r){this.h=+t;this.s=+e;this.l=+n;this.opacity=+r}define(Cubehelix,cubehelix$3,extend(Color,{brighter:function(t){t=t==null?brighter:Math.pow(brighter,t);return new Cubehelix(this.h,this.s,this.l*t,this.opacity)},darker:function(t){t=t==null?darker:Math.pow(darker,t);return new Cubehelix(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*deg2rad,e=+this.l,n=isNaN(this.s)?0:this.s*e*(1-e),r=Math.cos(t),i=Math.sin(t);return new Rgb(255*(e+n*(A*r+B*i)),255*(e+n*(C*r+D*i)),255*(e+n*(E*r)),this.opacity)}}));function basis$1(t,e,n,r,i){var a=t*t,o=a*t;return((1-3*t+3*a-o)*e+(4-6*a+3*o)*n+(1+3*t+3*a-3*o)*r+o*i)/6}function basis$2(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[r],a=t[r+1],o=r>0?t[r-1]:2*i-a,s=r<e-1?t[r+2]:2*a-i;return basis$1((n-r/e)*e,o,i,a,s)}}function basisClosed$1(t){var e=t.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*e),i=t[(r+e-1)%e],a=t[r%e],o=t[(r+1)%e],s=t[(r+2)%e];return basis$1((n-r/e)*e,i,a,o,s)}}function constant$9(t){return function(){return t}}function linear$2(t,e){return function(n){return t+n*e}}function exponential$1(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}function hue(t,e){var n=e-t;return n?linear$2(t,n>180||n<-180?n-360*Math.round(n/360):n):constant$9(isNaN(t)?e:t)}function gamma(t){return(t=+t)===1?nogamma:function(e,n){return n-e?exponential$1(e,n,t):constant$9(isNaN(e)?n:e)}}function nogamma(t,e){var n=e-t;return n?linear$2(t,n):constant$9(isNaN(t)?e:t)}var interpolateRgb=function t(e){var n=gamma(e);function r(t,e){var r=n((t=rgb(t)).r,(e=rgb(e)).r),i=n(t.g,e.g),a=n(t.b,e.b),o=nogamma(t.opacity,e.opacity);return function(e){t.r=r(e);t.g=i(e);t.b=a(e);t.opacity=o(e);return t+""}}r.gamma=t;return r}(1);function rgbSpline(t){return function(e){var n=e.length,r=new Array(n),i=new Array(n),a=new Array(n),o,s;for(o=0;o<n;++o){s=rgb(e[o]);r[o]=s.r||0;i[o]=s.g||0;a[o]=s.b||0}r=t(r);i=t(i);a=t(a);s.opacity=1;return function(t){s.r=r(t);s.g=i(t);s.b=a(t);return s+""}}}var rgbBasis=rgbSpline(basis$2);var rgbBasisClosed=rgbSpline(basisClosed$1);function array$1(t,e){var n=e?e.length:0,r=t?Math.min(n,t.length):0,i=new Array(r),a=new Array(n),o;for(o=0;o<r;++o)i[o]=interpolateValue(t[o],e[o]);for(;o<n;++o)a[o]=e[o];return function(t){for(o=0;o<r;++o)a[o]=i[o](t);return a}}function date$1(t,e){var n=new Date;return t=+t,e-=t,function(r){return n.setTime(t+e*r),n}}function reinterpolate$1(t,e){return t=+t,e-=t,function(n){return t+e*n}}function object$2(t,e){var n={},r={},i;if(t===null||typeof t!=="object")t={};if(e===null||typeof e!=="object")e={};for(i in e){if(i in t){n[i]=interpolateValue(t[i],e[i])}else{r[i]=e[i]}}return function(t){for(i in n)r[i]=n[i](t);return r}}var reA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,reB=new RegExp(reA.source,"g");function zero(t){return function(){return t}}function one(t){return function(e){return t(e)+""}}function interpolateString(t,e){var n=reA.lastIndex=reB.lastIndex=0,r,i,a,o=-1,s=[],u=[];t=t+"",e=e+"";while((r=reA.exec(t))&&(i=reB.exec(e))){if((a=i.index)>n){a=e.slice(n,a);if(s[o])s[o]+=a;else s[++o]=a}if((r=r[0])===(i=i[0])){if(s[o])s[o]+=i;else s[++o]=i}else{s[++o]=null;u.push({i:o,x:reinterpolate$1(r,i)})}n=reB.lastIndex}if(n<e.length){a=e.slice(n);if(s[o])s[o]+=a;else s[++o]=a}return s.length<2?u[0]?one(u[0].x):zero(e):(e=u.length,function(t){for(var n=0,r;n<e;++n)s[(r=u[n]).i]=r.x(t);return s.join("")})}function interpolateValue(t,e){var n=typeof e,r;return e==null||n==="boolean"?constant$9(e):(n==="number"?reinterpolate$1:n==="string"?(r=color(e))?(e=r,interpolateRgb):interpolateString:e instanceof color?interpolateRgb:e instanceof Date?date$1:Array.isArray(e)?array$1:typeof e.valueOf!=="function"&&typeof e.toString!=="function"||isNaN(e)?object$2:reinterpolate$1)(t,e)}function interpolateRound(t,e){return t=+t,e-=t,function(n){return Math.round(t+e*n)}}var degrees$1=180/Math.PI;var identity$7={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function decompose(t,e,n,r,i,a){var o,s,u;if(o=Math.sqrt(t*t+e*e))t/=o,e/=o;if(u=t*n+e*r)n-=t*u,r-=e*u;if(s=Math.sqrt(n*n+r*r))n/=s,r/=s,u/=s;if(t*r<e*n)t=-t,e=-e,u=-u,o=-o;return{translateX:i,translateY:a,rotate:Math.atan2(e,t)*degrees$1,skewX:Math.atan(u)*degrees$1,scaleX:o,scaleY:s}}var cssNode,cssRoot,cssView,svgNode;function parseCss(t){if(t==="none")return identity$7;if(!cssNode)cssNode=document.createElement("DIV"),cssRoot=document.documentElement,cssView=document.defaultView;cssNode.style.transform=t;t=cssView.getComputedStyle(cssRoot.appendChild(cssNode),null).getPropertyValue("transform");cssRoot.removeChild(cssNode);t=t.slice(7,-1).split(",");return decompose(+t[0],+t[1],+t[2],+t[3],+t[4],+t[5])}function parseSvg(t){if(t==null)return identity$7;if(!svgNode)svgNode=document.createElementNS("http://www.w3.org/2000/svg","g");svgNode.setAttribute("transform",t);if(!(t=svgNode.transform.baseVal.consolidate()))return identity$7;t=t.matrix;return decompose(t.a,t.b,t.c,t.d,t.e,t.f)}function interpolateTransform(t,e,n,r){function i(t){return t.length?t.pop()+" ":""}function a(t,r,i,a,o,s){if(t!==i||r!==a){var u=o.push("translate(",null,e,null,n);s.push({i:u-4,x:reinterpolate$1(t,i)},{i:u-2,x:reinterpolate$1(r,a)})}else if(i||a){o.push("translate("+i+e+a+n)}}function o(t,e,n,a){if(t!==e){if(t-e>180)e+=360;else if(e-t>180)t+=360;a.push({i:n.push(i(n)+"rotate(",null,r)-2,x:reinterpolate$1(t,e)})}else if(e){n.push(i(n)+"rotate("+e+r)}}function s(t,e,n,a){if(t!==e){a.push({i:n.push(i(n)+"skewX(",null,r)-2,x:reinterpolate$1(t,e)})}else if(e){n.push(i(n)+"skewX("+e+r)}}function u(t,e,n,r,a,o){if(t!==n||e!==r){var s=a.push(i(a)+"scale(",null,",",null,")");o.push({i:s-4,x:reinterpolate$1(t,n)},{i:s-2,x:reinterpolate$1(e,r)})}else if(n!==1||r!==1){a.push(i(a)+"scale("+n+","+r+")")}}return function(e,n){var r=[],i=[];e=t(e),n=t(n);a(e.translateX,e.translateY,n.translateX,n.translateY,r,i);o(e.rotate,n.rotate,r,i);s(e.skewX,n.skewX,r,i);u(e.scaleX,e.scaleY,n.scaleX,n.scaleY,r,i);e=n=null;return function(t){var e=-1,n=i.length,a;while(++e<n)r[(a=i[e]).i]=a.x(t);return r.join("")}}}var interpolateTransformCss=interpolateTransform(parseCss,"px, ","px)","deg)");var interpolateTransformSvg=interpolateTransform(parseSvg,", ",")",")");var rho=Math.SQRT2,rho2=2,rho4=4,epsilon2$2=1e-12;function cosh(t){return((t=Math.exp(t))+1/t)/2}function sinh(t){return((t=Math.exp(t))-1/t)/2}function tanh(t){return((t=Math.exp(2*t))-1)/(t+1)}function interpolateZoom(t,e){var n=t[0],r=t[1],i=t[2],a=e[0],o=e[1],s=e[2],u=a-n,l=o-r,c=u*u+l*l,f,h;if(c<epsilon2$2){h=Math.log(s/i)/rho;f=function(t){return[n+t*u,r+t*l,i*Math.exp(rho*t*h)]}}else{var d=Math.sqrt(c),p=(s*s-i*i+rho4*c)/(2*i*rho2*d),v=(s*s-i*i-rho4*c)/(2*s*rho2*d),m=Math.log(Math.sqrt(p*p+1)-p),g=Math.log(Math.sqrt(v*v+1)-v);h=(g-m)/rho;f=function(t){var e=t*h,a=cosh(m),o=i/(rho2*d)*(a*tanh(rho*e+m)-sinh(m));return[n+o*u,r+o*l,i*a/cosh(rho*e+m)]}}f.duration=h*1e3;return f}function hsl(t){return function(e,n){var r=t((e=hsl$2(e)).h,(n=hsl$2(n)).h),i=nogamma(e.s,n.s),a=nogamma(e.l,n.l),o=nogamma(e.opacity,n.opacity);return function(t){e.h=r(t);e.s=i(t);e.l=a(t);e.opacity=o(t);return e+""}}}var hsl$1=hsl(hue);var hslLong=hsl(nogamma);function lab(t,e){var n=nogamma((t=lab$1(t)).l,(e=lab$1(e)).l),r=nogamma(t.a,e.a),i=nogamma(t.b,e.b),a=nogamma(t.opacity,e.opacity);return function(e){t.l=n(e);t.a=r(e);t.b=i(e);t.opacity=a(e);return t+""}}function hcl(t){return function(e,n){var r=t((e=hcl$2(e)).h,(n=hcl$2(n)).h),i=nogamma(e.c,n.c),a=nogamma(e.l,n.l),o=nogamma(e.opacity,n.opacity);return function(t){e.h=r(t);e.c=i(t);e.l=a(t);e.opacity=o(t);return e+""}}}var hcl$1=hcl(hue);var hclLong=hcl(nogamma);function cubehelix$1(t){return function e(n){n=+n;function r(e,r){var i=t((e=cubehelix$3(e)).h,(r=cubehelix$3(r)).h),a=nogamma(e.s,r.s),o=nogamma(e.l,r.l),s=nogamma(e.opacity,r.opacity);return function(t){e.h=i(t);e.s=a(t);e.l=o(Math.pow(t,n));e.opacity=s(t);return e+""}}r.gamma=e;return r}(1)}var cubehelix$2=cubehelix$1(hue);var cubehelixLong=cubehelix$1(nogamma);function quantize$2(t,e){var n=new Array(e);for(var r=0;r<e;++r)n[r]=t(r/(e-1));return n}var frame=0,timeout$1=0,interval$1=0,pokeDelay=1e3,taskHead,taskTail,clockLast=0,clockNow=0,clockSkew=0,clock=typeof performance==="object"&&performance.now?performance:Date,setFrame=typeof window==="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function now(){return clockNow||(setFrame(clearNow),clockNow=clock.now()+clockSkew)}function clearNow(){clockNow=0}function Timer(){this._call=this._time=this._next=null}Timer.prototype=timer.prototype={constructor:Timer,restart:function(t,e,n){if(typeof t!=="function")throw new TypeError("callback is not a function");n=(n==null?now():+n)+(e==null?0:+e);if(!this._next&&taskTail!==this){if(taskTail)taskTail._next=this;else taskHead=this;taskTail=this}this._call=t;this._time=n;sleep()},stop:function(){if(this._call){this._call=null;this._time=Infinity;sleep()}}};function timer(t,e,n){var r=new Timer;r.restart(t,e,n);return r}function timerFlush(){now();++frame;var t=taskHead,e;while(t){if((e=clockNow-t._time)>=0)t._call.call(null,e);t=t._next}--frame}function wake(){clockNow=(clockLast=clock.now())+clockSkew;frame=timeout$1=0;try{timerFlush()}finally{frame=0;nap();clockNow=0}}function poke$1(){var t=clock.now(),e=t-clockLast;if(e>pokeDelay)clockSkew-=e,clockLast=t}function nap(){var t,e=taskHead,n,r=Infinity;while(e){if(e._call){if(r>e._time)r=e._time;t=e,e=e._next}else{n=e._next,e._next=null;e=t?t._next=n:taskHead=n}}taskTail=t;sleep(r)}function sleep(t){if(frame)return;if(timeout$1)timeout$1=clearTimeout(timeout$1);var e=t-clockNow;if(e>24){if(t<Infinity)timeout$1=setTimeout(wake,t-clock.now()-clockSkew);if(interval$1)interval$1=clearInterval(interval$1)}else{if(!interval$1)clockLast=clock.now(),interval$1=setInterval(poke$1,pokeDelay);frame=1,setFrame(wake)}}function timeout(t,e,n){var r=new Timer;e=e==null?0:+e;r.restart((function(n){r.stop();t(n+e)}),e,n);return r}function interval(t,e,n){var r=new Timer,i=e;if(e==null)return r.restart(t,e,n),r;e=+e,n=n==null?now():+n;r.restart((function a(o){o+=i;r.restart(a,i+=e,n);t(o)}),e,n);return r}var emptyOn=dispatch("start","end","interrupt");var emptyTween=[];var CREATED=0;var SCHEDULED=1;var STARTING=2;var STARTED=3;var RUNNING=4;var ENDING=5;var ENDED=6;function schedule(t,e,n,r,i,a){var o=t.__transition;if(!o)t.__transition={};else if(n in o)return;create(t,n,{name:e,index:r,group:i,on:emptyOn,tween:emptyTween,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:CREATED})}function init(t,e){var n=get(t,e);if(n.state>CREATED)throw new Error("too late; already scheduled");return n}function set$1(t,e){var n=get(t,e);if(n.state>STARTING)throw new Error("too late; already started");return n}function get(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function create(t,e,n){var r=t.__transition,i;r[e]=n;n.timer=timer(a,0,n.time);function a(t){n.state=SCHEDULED;n.timer.restart(o,n.delay,n.time);if(n.delay<=t)o(t-n.delay)}function o(a){var l,c,f,h;if(n.state!==SCHEDULED)return u();for(l in r){h=r[l];if(h.name!==n.name)continue;if(h.state===STARTED)return timeout(o);if(h.state===RUNNING){h.state=ENDED;h.timer.stop();h.on.call("interrupt",t,t.__data__,h.index,h.group);delete r[l]}else if(+l<e){h.state=ENDED;h.timer.stop();delete r[l]}}timeout((function(){if(n.state===STARTED){n.state=RUNNING;n.timer.restart(s,n.delay,n.time);s(a)}}));n.state=STARTING;n.on.call("start",t,t.__data__,n.index,n.group);if(n.state!==STARTING)return;n.state=STARTED;i=new Array(f=n.tween.length);for(l=0,c=-1;l<f;++l){if(h=n.tween[l].value.call(t,t.__data__,n.index,n.group)){i[++c]=h}}i.length=c+1}function s(e){var r=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(u),n.state=ENDING,1),a=-1,o=i.length;while(++a<o){i[a].call(null,r)}if(n.state===ENDING){n.on.call("end",t,t.__data__,n.index,n.group);u()}}function u(){n.state=ENDED;n.timer.stop();delete r[e];for(var i in r)return;delete t.__transition}}function interrupt(t,e){var n=t.__transition,r,i,a=true,o;if(!n)return;e=e==null?null:e+"";for(o in n){if((r=n[o]).name!==e){a=false;continue}i=r.state>STARTING&&r.state<ENDING;r.state=ENDED;r.timer.stop();if(i)r.on.call("interrupt",t,t.__data__,r.index,r.group);delete n[o]}if(a)delete t.__transition}function selection_interrupt(t){return this.each((function(){interrupt(this,t)}))}function tweenRemove(t,e){var n,r;return function(){var i=set$1(this,t),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o){if(r[o].name===e){r=r.slice();r.splice(o,1);break}}}i.tween=r}}function tweenFunction(t,e,n){var r,i;if(typeof n!=="function")throw new Error;return function(){var a=set$1(this,t),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:e,value:n},u=0,l=i.length;u<l;++u){if(i[u].name===e){i[u]=s;break}}if(u===l)i.push(s)}a.tween=i}}function transition_tween(t,e){var n=this._id;t+="";if(arguments.length<2){var r=get(this.node(),n).tween;for(var i=0,a=r.length,o;i<a;++i){if((o=r[i]).name===t){return o.value}}return null}return this.each((e==null?tweenRemove:tweenFunction)(n,t,e))}function tweenValue(t,e,n){var r=t._id;t.each((function(){var t=set$1(this,r);(t.value||(t.value={}))[e]=n.apply(this,arguments)}));return function(t){return get(t,r).value[e]}}function interpolate$1(t,e){var n;return(typeof e==="number"?reinterpolate$1:e instanceof color?interpolateRgb:(n=color(e))?(e=n,interpolateRgb):interpolateString)(t,e)}function attrRemove(t){return function(){this.removeAttribute(t)}}function attrRemoveNS(t){return function(){this.removeAttributeNS(t.space,t.local)}}function attrConstant(t,e,n){var r,i;return function(){var a=this.getAttribute(t);return a===n?null:a===r?i:i=e(r=a,n)}}function attrConstantNS(t,e,n){var r,i;return function(){var a=this.getAttributeNS(t.space,t.local);return a===n?null:a===r?i:i=e(r=a,n)}}function attrFunction(t,e,n){var r,i,a;return function(){var o,s=n(this);if(s==null)return void this.removeAttribute(t);o=this.getAttribute(t);return o===s?null:o===r&&s===i?a:a=e(r=o,i=s)}}function attrFunctionNS(t,e,n){var r,i,a;return function(){var o,s=n(this);if(s==null)return void this.removeAttributeNS(t.space,t.local);o=this.getAttributeNS(t.space,t.local);return o===s?null:o===r&&s===i?a:a=e(r=o,i=s)}}function transition_attr(t,e){var n=namespace(t),r=n==="transform"?interpolateTransformSvg:interpolate$1;return this.attrTween(t,typeof e==="function"?(n.local?attrFunctionNS:attrFunction)(n,r,tweenValue(this,"attr."+t,e)):e==null?(n.local?attrRemoveNS:attrRemove)(n):(n.local?attrConstantNS:attrConstant)(n,r,e+""))}function attrTweenNS(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttributeNS(t.space,t.local,r(e))}}n._value=e;return n}function attrTween(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttribute(t,r(e))}}n._value=e;return n}function transition_attrTween(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!=="function")throw new Error;var r=namespace(t);return this.tween(n,(r.local?attrTweenNS:attrTween)(r,e))}function delayFunction(t,e){return function(){init(this,t).delay=+e.apply(this,arguments)}}function delayConstant(t,e){return e=+e,function(){init(this,t).delay=e}}function transition_delay(t){var e=this._id;return arguments.length?this.each((typeof t==="function"?delayFunction:delayConstant)(e,t)):get(this.node(),e).delay}function durationFunction(t,e){return function(){set$1(this,t).duration=+e.apply(this,arguments)}}function durationConstant(t,e){return e=+e,function(){set$1(this,t).duration=e}}function transition_duration(t){var e=this._id;return arguments.length?this.each((typeof t==="function"?durationFunction:durationConstant)(e,t)):get(this.node(),e).duration}function easeConstant(t,e){if(typeof e!=="function")throw new Error;return function(){set$1(this,t).ease=e}}function transition_ease(t){var e=this._id;return arguments.length?this.each(easeConstant(e,t)):get(this.node(),e).ease}function transition_filter(t){if(typeof t!=="function")t=matcher$1(t);for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i){for(var a=e[i],o=a.length,s=r[i]=[],u,l=0;l<o;++l){if((u=a[l])&&t.call(u,u.__data__,l,a)){s.push(u)}}}return new Transition(r,this._parents,this._name,this._id)}function transition_merge(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,r=e.length,i=n.length,a=Math.min(r,i),o=new Array(r),s=0;s<a;++s){for(var u=e[s],l=n[s],c=u.length,f=o[s]=new Array(c),h,d=0;d<c;++d){if(h=u[d]||l[d]){f[d]=h}}}for(;s<r;++s){o[s]=e[s]}return new Transition(o,this._parents,this._name,this._id)}function start$1(t){return(t+"").trim().split(/^|\s+/).every((function(t){var e=t.indexOf(".");if(e>=0)t=t.slice(0,e);return!t||t==="start"}))}function onFunction(t,e,n){var r,i,a=start$1(e)?init:set$1;return function(){var o=a(this,t),s=o.on;if(s!==r)(i=(r=s).copy()).on(e,n);o.on=i}}function transition_on(t,e){var n=this._id;return arguments.length<2?get(this.node(),n).on.on(t):this.each(onFunction(n,t,e))}function removeFunction(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;if(e)e.removeChild(this)}}function transition_remove(){return this.on("end.remove",removeFunction(this._id))}function transition_select(t){var e=this._name,n=this._id;if(typeof t!=="function")t=selector(t);for(var r=this._groups,i=r.length,a=new Array(i),o=0;o<i;++o){for(var s=r[o],u=s.length,l=a[o]=new Array(u),c,f,h=0;h<u;++h){if((c=s[h])&&(f=t.call(c,c.__data__,h,s))){if("__data__"in c)f.__data__=c.__data__;l[h]=f;schedule(l[h],e,n,h,l,get(c,n))}}}return new Transition(a,this._parents,e,n)}function transition_selectAll(t){var e=this._name,n=this._id;if(typeof t!=="function")t=selectorAll(t);for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s){for(var u=r[s],l=u.length,c,f=0;f<l;++f){if(c=u[f]){for(var h=t.call(c,c.__data__,f,u),d,p=get(c,n),v=0,m=h.length;v<m;++v){if(d=h[v]){schedule(d,e,n,v,h,p)}}a.push(h);o.push(c)}}}return new Transition(a,o,e,n)}var Selection=selection.prototype.constructor;function transition_selection(){return new Selection(this._groups,this._parents)}function styleRemove(t,e){var n,r,i;return function(){var a=styleValue(this,t),o=(this.style.removeProperty(t),styleValue(this,t));return a===o?null:a===n&&o===r?i:i=e(n=a,r=o)}}function styleRemoveEnd(t){return function(){this.style.removeProperty(t)}}function styleConstant(t,e,n){var r,i;return function(){var a=styleValue(this,t);return a===n?null:a===r?i:i=e(r=a,n)}}function styleFunction(t,e,n){var r,i,a;return function(){var o=styleValue(this,t),s=n(this);if(s==null)s=(this.style.removeProperty(t),styleValue(this,t));return o===s?null:o===r&&s===i?a:a=e(r=o,i=s)}}function transition_style(t,e,n){var r=(t+="")==="transform"?interpolateTransformCss:interpolate$1;return e==null?this.styleTween(t,styleRemove(t,r)).on("end.style."+t,styleRemoveEnd(t)):this.styleTween(t,typeof e==="function"?styleFunction(t,r,tweenValue(this,"style."+t,e)):styleConstant(t,r,e+""),n)}function styleTween(t,e,n){function r(){var r=this,i=e.apply(r,arguments);return i&&function(e){r.style.setProperty(t,i(e),n)}}r._value=e;return r}function transition_styleTween(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!=="function")throw new Error;return this.tween(r,styleTween(t,e,n==null?"":n))}function textConstant(t){return function(){this.textContent=t}}function textFunction(t){return function(){var e=t(this);this.textContent=e==null?"":e}}function transition_text(t){return this.tween("text",typeof t==="function"?textFunction(tweenValue(this,"text",t)):textConstant(t==null?"":t+""))}function transition_transition(){var t=this._name,e=this._id,n=newId();for(var r=this._groups,i=r.length,a=0;a<i;++a){for(var o=r[a],s=o.length,u,l=0;l<s;++l){if(u=o[l]){var c=get(u,e);schedule(u,t,n,l,o,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}}}return new Transition(r,this._parents,t,n)}var id=0;function Transition(t,e,n,r){this._groups=t;this._parents=e;this._name=n;this._id=r}function transition(t){return selection().transition(t)}function newId(){return++id}var selection_prototype=selection.prototype;Transition.prototype=transition.prototype={constructor:Transition,select:transition_select,selectAll:transition_selectAll,filter:transition_filter,merge:transition_merge,selection:transition_selection,transition:transition_transition,call:selection_prototype.call,nodes:selection_prototype.nodes,node:selection_prototype.node,size:selection_prototype.size,empty:selection_prototype.empty,each:selection_prototype.each,on:transition_on,attr:transition_attr,attrTween:transition_attrTween,style:transition_style,styleTween:transition_styleTween,text:transition_text,remove:transition_remove,tween:transition_tween,delay:transition_delay,duration:transition_duration,ease:transition_ease};function linear$1(t){return+t}function quadIn(t){return t*t}function quadOut(t){return t*(2-t)}function quadInOut(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}function cubicIn(t){return t*t*t}function cubicOut(t){return--t*t*t+1}function cubicInOut(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var exponent$1=3;var polyIn=function t(e){e=+e;function n(t){return Math.pow(t,e)}n.exponent=t;return n}(exponent$1);var polyOut=function t(e){e=+e;function n(t){return 1-Math.pow(1-t,e)}n.exponent=t;return n}(exponent$1);var polyInOut=function t(e){e=+e;function n(t){return((t*=2)<=1?Math.pow(t,e):2-Math.pow(2-t,e))/2}n.exponent=t;return n}(exponent$1);var pi$4=Math.PI,halfPi$3=pi$4/2;function sinIn(t){return 1-Math.cos(t*halfPi$3)}function sinOut(t){return Math.sin(t*halfPi$3)}function sinInOut(t){return(1-Math.cos(pi$4*t))/2}function expIn(t){return Math.pow(2,10*t-10)}function expOut(t){return 1-Math.pow(2,-10*t)}function expInOut(t){return((t*=2)<=1?Math.pow(2,10*t-10):2-Math.pow(2,10-10*t))/2}function circleIn(t){return 1-Math.sqrt(1-t*t)}function circleOut(t){return Math.sqrt(1- --t*t)}function circleInOut(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var b1=4/11,b2=6/11,b3=8/11,b4=3/4,b5=9/11,b6=10/11,b7=15/16,b8=21/22,b9=63/64,b0=1/b1/b1;function bounceIn(t){return 1-bounceOut(1-t)}function bounceOut(t){return(t=+t)<b1?b0*t*t:t<b3?b0*(t-=b2)*t+b4:t<b6?b0*(t-=b5)*t+b7:b0*(t-=b8)*t+b9}function bounceInOut(t){return((t*=2)<=1?1-bounceOut(1-t):bounceOut(t-1)+1)/2}var overshoot=1.70158;var backIn=function t(e){e=+e;function n(t){return t*t*((e+1)*t-e)}n.overshoot=t;return n}(overshoot);var backOut=function t(e){e=+e;function n(t){return--t*t*((e+1)*t+e)+1}n.overshoot=t;return n}(overshoot);var backInOut=function t(e){e=+e;function n(t){return((t*=2)<1?t*t*((e+1)*t-e):(t-=2)*t*((e+1)*t+e)+2)/2}n.overshoot=t;return n}(overshoot);var tau$4=2*Math.PI,amplitude=1,period=.3;var elasticIn=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=tau$4);function i(t){return e*Math.pow(2,10*--t)*Math.sin((r-t)/n)}i.amplitude=function(e){return t(e,n*tau$4)};i.period=function(n){return t(e,n)};return i}(amplitude,period);var elasticOut=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=tau$4);function i(t){return 1-e*Math.pow(2,-10*(t=+t))*Math.sin((t+r)/n)}i.amplitude=function(e){return t(e,n*tau$4)};i.period=function(n){return t(e,n)};return i}(amplitude,period);var elasticInOut=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=tau$4);function i(t){return((t=t*2-1)<0?e*Math.pow(2,10*t)*Math.sin((r-t)/n):2-e*Math.pow(2,-10*t)*Math.sin((r+t)/n))/2}i.amplitude=function(e){return t(e,n*tau$4)};i.period=function(n){return t(e,n)};return i}(amplitude,period);var defaultTiming={time:null,delay:0,duration:250,ease:cubicInOut};function inherit(t,e){var n;while(!(n=t.__transition)||!(n=n[e])){if(!(t=t.parentNode)){return defaultTiming.time=now(),defaultTiming}}return n}function selection_transition(t){var e,n;if(t instanceof Transition){e=t._id,t=t._name}else{e=newId(),(n=defaultTiming).time=now(),t=t==null?null:t+""}for(var r=this._groups,i=r.length,a=0;a<i;++a){for(var o=r[a],s=o.length,u,l=0;l<s;++l){if(u=o[l]){schedule(u,t,e,l,o,n||inherit(u,e))}}}return new Transition(r,this._parents,t,e)}selection.prototype.interrupt=selection_interrupt;selection.prototype.transition=selection_transition;var root=[null];function active(t,e){var n=t.__transition,r,i;if(n){e=e==null?null:e+"";for(i in n){if((r=n[i]).state>SCHEDULED&&r.name===e){return new Transition([[t]],root,e,+i)}}}return null}function constant$8(t){return function(){return t}}function BrushEvent(t,e,n){this.target=t;this.type=e;this.selection=n}function nopropagation$1(){event.stopImmediatePropagation()}function noevent$1(){event.preventDefault();event.stopImmediatePropagation()}var MODE_DRAG={name:"drag"},MODE_SPACE={name:"space"},MODE_HANDLE={name:"handle"},MODE_CENTER={name:"center"};var X={name:"x",handles:["e","w"].map(type$1),input:function(t,e){return t&&[[t[0],e[0][1]],[t[1],e[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}};var Y={name:"y",handles:["n","s"].map(type$1),input:function(t,e){return t&&[[e[0][0],t[0]],[e[1][0],t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}};var XY={name:"xy",handles:["n","e","s","w","nw","ne","se","sw"].map(type$1),input:function(t){return t},output:function(t){return t}};var cursors={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"};var flipX={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"};var flipY={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"};var signsX={overlay:+1,selection:+1,n:null,e:+1,s:null,w:-1,nw:-1,ne:+1,se:+1,sw:-1};var signsY={overlay:+1,selection:+1,n:-1,e:null,s:+1,w:null,nw:-1,ne:-1,se:+1,sw:+1};function type$1(t){return{type:t}}function defaultFilter$1(){return!event.button}function defaultExtent$1(){var t=this.ownerSVGElement||this;return[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function local(t){while(!t.__brush)if(!(t=t.parentNode))return;return t.__brush}function empty(t){return t[0][0]===t[1][0]||t[0][1]===t[1][1]}function brushSelection(t){var e=t.__brush;return e?e.dim.output(e.selection):null}function brushX(){return brush$1(X)}function brushY(){return brush$1(Y)}function brush(){return brush$1(XY)}function brush$1(t){var e=defaultExtent$1,n=defaultFilter$1,r=dispatch(o,"start","brush","end"),i=6,a;function o(e){var n=e.property("__brush",f).selectAll(".overlay").data([type$1("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",cursors.overlay).merge(n).each((function(){var t=local(this).extent;select(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])}));e.selectAll(".selection").data([type$1("selection")]).enter().append("rect").attr("class","selection").attr("cursor",cursors.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var r=e.selectAll(".handle").data(t.handles,(function(t){return t.type}));r.exit().remove();r.enter().append("rect").attr("class",(function(t){return"handle handle--"+t.type})).attr("cursor",(function(t){return cursors[t.type]}));e.each(s).attr("fill","none").attr("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush touchstart.brush",c)}o.move=function(e,n){if(e.selection){e.on("start.brush",(function(){u(this,arguments).beforestart().start()})).on("interrupt.brush end.brush",(function(){u(this,arguments).end()})).tween("brush",(function(){var e=this,r=e.__brush,i=u(e,arguments),a=r.selection,o=t.input(typeof n==="function"?n.apply(this,arguments):n,r.extent),l=interpolateValue(a,o);function c(t){r.selection=t===1&&empty(o)?null:l(t);s.call(e);i.brush()}return a&&o?c:c(1)}))}else{e.each((function(){var e=this,r=arguments,i=e.__brush,a=t.input(typeof n==="function"?n.apply(e,r):n,i.extent),o=u(e,r).beforestart();interrupt(e);i.selection=a==null||empty(a)?null:a;s.call(e);o.start().brush().end()}))}};function s(){var t=select(this),e=local(this).selection;if(e){t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]);t.selectAll(".handle").style("display",null).attr("x",(function(t){return t.type[t.type.length-1]==="e"?e[1][0]-i/2:e[0][0]-i/2})).attr("y",(function(t){return t.type[0]==="s"?e[1][1]-i/2:e[0][1]-i/2})).attr("width",(function(t){return t.type==="n"||t.type==="s"?e[1][0]-e[0][0]+i:i})).attr("height",(function(t){return t.type==="e"||t.type==="w"?e[1][1]-e[0][1]+i:i}))}else{t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}}function u(t,e){return t.__brush.emitter||new l(t,e)}function l(t,e){this.that=t;this.args=e;this.state=t.__brush;this.active=0}l.prototype={beforestart:function(){if(++this.active===1)this.state.emitter=this,this.starting=true;return this},start:function(){if(this.starting)this.starting=false,this.emit("start");return this},brush:function(){this.emit("brush");return this},end:function(){if(--this.active===0)delete this.state.emitter,this.emit("end");return this},emit:function(e){customEvent(new BrushEvent(o,e,t.output(this.state.selection)),r.apply,r,[e,this.that,this.args])}};function c(){if(event.touches){if(event.changedTouches.length<event.touches.length)return noevent$1()}else if(a)return;if(!n.apply(this,arguments))return;var e=this,r=event.target.__data__.type,i=(event.metaKey?r="overlay":r)==="selection"?MODE_DRAG:event.altKey?MODE_CENTER:MODE_HANDLE,o=t===Y?null:signsX[r],l=t===X?null:signsY[r],c=local(e),f=c.extent,h=c.selection,d=f[0][0],p,v,m=f[0][1],g,y,b=f[1][0],_,x,w=f[1][1],$,k,M,S,A,z=o&&l&&event.shiftKey,E,T,R=mouse(e),C=R,P=u(e,arguments).beforestart();if(r==="overlay"){c.selection=h=[[p=t===Y?d:R[0],g=t===X?m:R[1]],[_=t===Y?b:p,$=t===X?w:g]]}else{p=h[0][0];g=h[0][1];_=h[1][0];$=h[1][1]}v=p;y=g;x=_;k=$;var N=select(e).attr("pointer-events","none");var L=N.selectAll(".overlay").attr("cursor",cursors[r]);if(event.touches){N.on("touchmove.brush",D,true).on("touchend.brush touchcancel.brush",F,true)}else{var O=select(event.view).on("keydown.brush",B,true).on("keyup.brush",H,true).on("mousemove.brush",D,true).on("mouseup.brush",F,true);dragDisable(event.view)}nopropagation$1();interrupt(e);s.call(e);P.start();function D(){var t=mouse(e);if(z&&!E&&!T){if(Math.abs(t[0]-C[0])>Math.abs(t[1]-C[1]))T=true;else E=true}C=t;A=true;noevent$1();I()}function I(){var t;M=C[0]-R[0];S=C[1]-R[1];switch(i){case MODE_SPACE:case MODE_DRAG:{if(o)M=Math.max(d-p,Math.min(b-_,M)),v=p+M,x=_+M;if(l)S=Math.max(m-g,Math.min(w-$,S)),y=g+S,k=$+S;break}case MODE_HANDLE:{if(o<0)M=Math.max(d-p,Math.min(b-p,M)),v=p+M,x=_;else if(o>0)M=Math.max(d-_,Math.min(b-_,M)),v=p,x=_+M;if(l<0)S=Math.max(m-g,Math.min(w-g,S)),y=g+S,k=$;else if(l>0)S=Math.max(m-$,Math.min(w-$,S)),y=g,k=$+S;break}case MODE_CENTER:{if(o)v=Math.max(d,Math.min(b,p-M*o)),x=Math.max(d,Math.min(b,_+M*o));if(l)y=Math.max(m,Math.min(w,g-S*l)),k=Math.max(m,Math.min(w,$+S*l));break}}if(x<v){o*=-1;t=p,p=_,_=t;t=v,v=x,x=t;if(r in flipX)L.attr("cursor",cursors[r=flipX[r]])}if(k<y){l*=-1;t=g,g=$,$=t;t=y,y=k,k=t;if(r in flipY)L.attr("cursor",cursors[r=flipY[r]])}if(c.selection)h=c.selection;if(E)v=h[0][0],x=h[1][0];if(T)y=h[0][1],k=h[1][1];if(h[0][0]!==v||h[0][1]!==y||h[1][0]!==x||h[1][1]!==k){c.selection=[[v,y],[x,k]];s.call(e);P.brush()}}function F(){nopropagation$1();if(event.touches){if(event.touches.length)return;if(a)clearTimeout(a);a=setTimeout((function(){a=null}),500);N.on("touchmove.brush touchend.brush touchcancel.brush",null)}else{yesdrag(event.view,A);O.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null)}N.attr("pointer-events","all");L.attr("cursor",cursors.overlay);if(c.selection)h=c.selection;if(empty(h))c.selection=null,s.call(e);P.end()}function B(){switch(event.keyCode){case 16:{z=o&&l;break}case 18:{if(i===MODE_HANDLE){if(o)_=x-M*o,p=v+M*o;if(l)$=k-S*l,g=y+S*l;i=MODE_CENTER;I()}break}case 32:{if(i===MODE_HANDLE||i===MODE_CENTER){if(o<0)_=x-M;else if(o>0)p=v-M;if(l<0)$=k-S;else if(l>0)g=y-S;i=MODE_SPACE;L.attr("cursor",cursors.selection);I()}break}default:return}noevent$1()}function H(){switch(event.keyCode){case 16:{if(z){E=T=z=false;I()}break}case 18:{if(i===MODE_CENTER){if(o<0)_=x;else if(o>0)p=v;if(l<0)$=k;else if(l>0)g=y;i=MODE_HANDLE;I()}break}case 32:{if(i===MODE_SPACE){if(event.altKey){if(o)_=x-M*o,p=v+M*o;if(l)$=k-S*l,g=y+S*l;i=MODE_CENTER}else{if(o<0)_=x;else if(o>0)p=v;if(l<0)$=k;else if(l>0)g=y;i=MODE_HANDLE}L.attr("cursor",cursors[r]);I()}break}default:return}noevent$1()}}function f(){var n=this.__brush||{selection:null};n.extent=e.apply(this,arguments);n.dim=t;return n}o.extent=function(t){return arguments.length?(e=typeof t==="function"?t:constant$8([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),o):e};o.filter=function(t){return arguments.length?(n=typeof t==="function"?t:constant$8(!!t),o):n};o.handleSize=function(t){return arguments.length?(i=+t,o):i};o.on=function(){var t=r.on.apply(r,arguments);return t===r?o:t};return o}var cos$2=Math.cos;var sin$2=Math.sin;var pi$3=Math.PI;var halfPi$2=pi$3/2;var tau$3=pi$3*2;var max$1=Math.max;function compareValue(t){return function(e,n){return t(e.source.value+e.target.value,n.source.value+n.target.value)}}function chord(){var t=0,e=null,n=null,r=null;function i(i){var a=i.length,o=[],s=sequence(a),u=[],l=[],c=l.groups=new Array(a),f=new Array(a*a),h,d,p,v,m,g;h=0,m=-1;while(++m<a){d=0,g=-1;while(++g<a){d+=i[m][g]}o.push(d);u.push(sequence(a));h+=d}if(e)s.sort((function(t,n){return e(o[t],o[n])}));if(n)u.forEach((function(t,e){t.sort((function(t,r){return n(i[e][t],i[e][r])}))}));h=max$1(0,tau$3-t*a)/h;v=h?t:tau$3/a;d=0,m=-1;while(++m<a){p=d,g=-1;while(++g<a){var y=s[m],b=u[y][g],_=i[y][b],x=d,w=d+=_*h;f[b*a+y]={index:y,subindex:b,startAngle:x,endAngle:w,value:_}}c[y]={index:y,startAngle:p,endAngle:d,value:o[y]};d+=v}m=-1;while(++m<a){g=m-1;while(++g<a){var $=f[g*a+m],k=f[m*a+g];if($.value||k.value){l.push($.value<k.value?{source:k,target:$}:{source:$,target:k})}}}return r?l.sort(r):l}i.padAngle=function(e){return arguments.length?(t=max$1(0,e),i):t};i.sortGroups=function(t){return arguments.length?(e=t,i):e};i.sortSubgroups=function(t){return arguments.length?(n=t,i):n};i.sortChords=function(t){return arguments.length?(t==null?r=null:(r=compareValue(t))._=t,i):r&&r._};return i}var slice$4=Array.prototype.slice;function constant$7(t){return function(){return t}}var pi$2=Math.PI,tau$2=2*pi$2,epsilon$3=1e-6,tauEpsilon=tau$2-epsilon$3;function Path(){this._x0=this._y0=this._x1=this._y1=null;this._=""}function path(){return new Path}Path.prototype=path.prototype={constructor:Path,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){if(this._x1!==null){this._x1=this._x0,this._y1=this._y0;this._+="Z"}},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,n,r){this._+="Q"+ +t+","+ +e+","+(this._x1=+n)+","+(this._y1=+r)},bezierCurveTo:function(t,e,n,r,i,a){this._+="C"+ +t+","+ +e+","+ +n+","+ +r+","+(this._x1=+i)+","+(this._y1=+a)},arcTo:function(t,e,n,r,i){t=+t,e=+e,n=+n,r=+r,i=+i;var a=this._x1,o=this._y1,s=n-t,u=r-e,l=a-t,c=o-e,f=l*l+c*c;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null){this._+="M"+(this._x1=t)+","+(this._y1=e)}else if(!(f>epsilon$3));else if(!(Math.abs(c*s-u*l)>epsilon$3)||!i){this._+="L"+(this._x1=t)+","+(this._y1=e)}else{var h=n-a,d=r-o,p=s*s+u*u,v=h*h+d*d,m=Math.sqrt(p),g=Math.sqrt(f),y=i*Math.tan((pi$2-Math.acos((p+f-v)/(2*m*g)))/2),b=y/g,_=y/m;if(Math.abs(b-1)>epsilon$3){this._+="L"+(t+b*l)+","+(e+b*c)}this._+="A"+i+","+i+",0,0,"+ +(c*h>l*d)+","+(this._x1=t+_*s)+","+(this._y1=e+_*u)}},arc:function(t,e,n,r,i,a){t=+t,e=+e,n=+n;var o=n*Math.cos(r),s=n*Math.sin(r),u=t+o,l=e+s,c=1^a,f=a?r-i:i-r;if(n<0)throw new Error("negative radius: "+n);if(this._x1===null){this._+="M"+u+","+l}else if(Math.abs(this._x1-u)>epsilon$3||Math.abs(this._y1-l)>epsilon$3){this._+="L"+u+","+l}if(!n)return;if(f<0)f=f%tau$2+tau$2;if(f>tauEpsilon){this._+="A"+n+","+n+",0,1,"+c+","+(t-o)+","+(e-s)+"A"+n+","+n+",0,1,"+c+","+(this._x1=u)+","+(this._y1=l)}else if(f>epsilon$3){this._+="A"+n+","+n+",0,"+ +(f>=pi$2)+","+c+","+(this._x1=t+n*Math.cos(i))+","+(this._y1=e+n*Math.sin(i))}},rect:function(t,e,n,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +r+"h"+-n+"Z"},toString:function(){return this._}};function defaultSource$1(t){return t.source}function defaultTarget(t){return t.target}function defaultRadius$1(t){return t.radius}function defaultStartAngle(t){return t.startAngle}function defaultEndAngle(t){return t.endAngle}function ribbon(){var t=defaultSource$1,e=defaultTarget,n=defaultRadius$1,r=defaultStartAngle,i=defaultEndAngle,a=null;function o(){var o,s=slice$4.call(arguments),u=t.apply(this,s),l=e.apply(this,s),c=+n.apply(this,(s[0]=u,s)),f=r.apply(this,s)-halfPi$2,h=i.apply(this,s)-halfPi$2,d=c*cos$2(f),p=c*sin$2(f),v=+n.apply(this,(s[0]=l,s)),m=r.apply(this,s)-halfPi$2,g=i.apply(this,s)-halfPi$2;if(!a)a=o=path();a.moveTo(d,p);a.arc(0,0,c,f,h);if(f!==m||h!==g){a.quadraticCurveTo(0,0,v*cos$2(m),v*sin$2(m));a.arc(0,0,v,m,g)}a.quadraticCurveTo(0,0,d,p);a.closePath();if(o)return a=null,o+""||null}o.radius=function(t){return arguments.length?(n=typeof t==="function"?t:constant$7(+t),o):n};o.startAngle=function(t){return arguments.length?(r=typeof t==="function"?t:constant$7(+t),o):r};o.endAngle=function(t){return arguments.length?(i=typeof t==="function"?t:constant$7(+t),o):i};o.source=function(e){return arguments.length?(t=e,o):t};o.target=function(t){return arguments.length?(e=t,o):e};o.context=function(t){return arguments.length?(a=t==null?null:t,o):a};return o}var prefix="$";function Map$1(){}Map$1.prototype=map$1.prototype={constructor:Map$1,has:function(t){return prefix+t in this},get:function(t){return this[prefix+t]},set:function(t,e){this[prefix+t]=e;return this},remove:function(t){var e=prefix+t;return e in this&&delete this[e]},clear:function(){for(var t in this)if(t[0]===prefix)delete this[t]},keys:function(){var t=[];for(var e in this)if(e[0]===prefix)t.push(e.slice(1));return t},values:function(){var t=[];for(var e in this)if(e[0]===prefix)t.push(this[e]);return t},entries:function(){var t=[];for(var e in this)if(e[0]===prefix)t.push({key:e.slice(1),value:this[e]});return t},size:function(){var t=0;for(var e in this)if(e[0]===prefix)++t;return t},empty:function(){for(var t in this)if(t[0]===prefix)return false;return true},each:function(t){for(var e in this)if(e[0]===prefix)t(this[e],e.slice(1),this)}};function map$1(t,e){var n=new Map$1;if(t instanceof Map$1)t.each((function(t,e){n.set(e,t)}));else if(Array.isArray(t)){var r=-1,i=t.length,a;if(e==null)while(++r<i)n.set(r,t[r]);else while(++r<i)n.set(e(a=t[r],r,t),a)}else if(t)for(var o in t)n.set(o,t[o]);return n}function nest(){var t=[],e=[],n,r,i;function a(e,i,o,s){if(i>=t.length){if(n!=null)e.sort(n);return r!=null?r(e):e}var u=-1,l=e.length,c=t[i++],f,h,d=map$1(),p,v=o();while(++u<l){if(p=d.get(f=c(h=e[u])+"")){p.push(h)}else{d.set(f,[h])}}d.each((function(t,e){s(v,e,a(t,i,o,s))}));return v}function o(n,i){if(++i>t.length)return n;var a,s=e[i-1];if(r!=null&&i>=t.length)a=n.entries();else a=[],n.each((function(t,e){a.push({key:e,values:o(t,i)})}));return s!=null?a.sort((function(t,e){return s(t.key,e.key)})):a}return i={object:function(t){return a(t,0,createObject,setObject)},map:function(t){return a(t,0,createMap,setMap)},entries:function(t){return o(a(t,0,createMap,setMap),0)},key:function(e){t.push(e);return i},sortKeys:function(n){e[t.length-1]=n;return i},sortValues:function(t){n=t;return i},rollup:function(t){r=t;return i}}}function createObject(){return{}}function setObject(t,e,n){t[e]=n}function createMap(){return map$1()}function setMap(t,e,n){t.set(e,n)}function Set$1(){}var proto=map$1.prototype;Set$1.prototype=set.prototype={constructor:Set$1,has:proto.has,add:function(t){t+="";this[prefix+t]=t;return this},remove:proto.remove,clear:proto.clear,values:proto.keys,size:proto.size,empty:proto.empty,each:proto.each};function set(t,e){var n=new Set$1;if(t instanceof Set$1)t.each((function(t){n.add(t)}));else if(t){var r=-1,i=t.length;if(e==null)while(++r<i)n.add(t[r]);else while(++r<i)n.add(e(t[r],r,t))}return n}function keys(t){var e=[];for(var n in t)e.push(n);return e}function values(t){var e=[];for(var n in t)e.push(t[n]);return e}function entries(t){var e=[];for(var n in t)e.push({key:n,value:t[n]});return e}var EOL={},EOF={},QUOTE=34,NEWLINE=10,RETURN=13;function objectConverter(t){return new Function("d","return {"+t.map((function(t,e){return JSON.stringify(t)+": d["+e+"]"})).join(",")+"}")}function customConverter(t,e){var n=objectConverter(t);return function(r,i){return e(n(r),i,t)}}function inferColumns(t){var e=Object.create(null),n=[];t.forEach((function(t){for(var r in t){if(!(r in e)){n.push(e[r]=r)}}}));return n}function dsv$1(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function r(t,e){var n,r,a=i(t,(function(t,i){if(n)return n(t,i-1);r=t,n=e?customConverter(t,e):objectConverter(t)}));a.columns=r||[];return a}function i(t,e){var r=[],i=t.length,a=0,o=0,s,u=i<=0,l=false;if(t.charCodeAt(i-1)===NEWLINE)--i;if(t.charCodeAt(i-1)===RETURN)--i;function c(){if(u)return EOF;if(l)return l=false,EOL;var e,r=a,o;if(t.charCodeAt(r)===QUOTE){while(a++<i&&t.charCodeAt(a)!==QUOTE||t.charCodeAt(++a)===QUOTE);if((e=a)>=i)u=true;else if((o=t.charCodeAt(a++))===NEWLINE)l=true;else if(o===RETURN){l=true;if(t.charCodeAt(a)===NEWLINE)++a}return t.slice(r+1,e-1).replace(/""/g,'"')}while(a<i){if((o=t.charCodeAt(e=a++))===NEWLINE)l=true;else if(o===RETURN){l=true;if(t.charCodeAt(a)===NEWLINE)++a}else if(o!==n)continue;return t.slice(r,e)}return u=true,t.slice(r,i)}while((s=c())!==EOF){var f=[];while(s!==EOL&&s!==EOF)f.push(s),s=c();if(e&&(f=e(f,o++))==null)continue;r.push(f)}return r}function a(e,n){if(n==null)n=inferColumns(e);return[n.map(u).join(t)].concat(e.map((function(e){return n.map((function(t){return u(e[t])})).join(t)}))).join("\n")}function o(t){return t.map(s).join("\n")}function s(e){return e.map(u).join(t)}function u(t){return t==null?"":e.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t}return{parse:r,parseRows:i,format:a,formatRows:o}}var csv$1=dsv$1(",");var csvParse=csv$1.parse;var csvParseRows=csv$1.parseRows;var csvFormat=csv$1.format;var csvFormatRows=csv$1.formatRows;var tsv$1=dsv$1("\t");var tsvParse=tsv$1.parse;var tsvParseRows=tsv$1.parseRows;var tsvFormat=tsv$1.format;var tsvFormatRows=tsv$1.formatRows;function center(t,e){var n;if(t==null)t=0;if(e==null)e=0;function r(){var r,i=n.length,a,o=0,s=0;for(r=0;r<i;++r){a=n[r],o+=a.x,s+=a.y}for(o=o/i-t,s=s/i-e,r=0;r<i;++r){a=n[r],a.x-=o,a.y-=s}}r.initialize=function(t){n=t};r.x=function(e){return arguments.length?(t=+e,r):t};r.y=function(t){return arguments.length?(e=+t,r):e};return r}function constant$6(t){return function(){return t}}function jiggle(){return(Math.random()-.5)*1e-6}function tree_add(t){var e=+this._x.call(null,t),n=+this._y.call(null,t);return add$1(this.cover(e,n),e,n,t)}function add$1(t,e,n,r){if(isNaN(e)||isNaN(n))return t;var i,a=t._root,o={data:r},s=t._x0,u=t._y0,l=t._x1,c=t._y1,f,h,d,p,v,m,g,y;if(!a)return t._root=o,t;while(a.length){if(v=e>=(f=(s+l)/2))s=f;else l=f;if(m=n>=(h=(u+c)/2))u=h;else c=h;if(i=a,!(a=a[g=m<<1|v]))return i[g]=o,t}d=+t._x.call(null,a.data);p=+t._y.call(null,a.data);if(e===d&&n===p)return o.next=a,i?i[g]=o:t._root=o,t;do{i=i?i[g]=new Array(4):t._root=new Array(4);if(v=e>=(f=(s+l)/2))s=f;else l=f;if(m=n>=(h=(u+c)/2))u=h;else c=h}while((g=m<<1|v)===(y=(p>=h)<<1|d>=f));return i[y]=a,i[g]=o,t}function addAll(t){var e,n,r=t.length,i,a,o=new Array(r),s=new Array(r),u=Infinity,l=Infinity,c=-Infinity,f=-Infinity;for(n=0;n<r;++n){if(isNaN(i=+this._x.call(null,e=t[n]))||isNaN(a=+this._y.call(null,e)))continue;o[n]=i;s[n]=a;if(i<u)u=i;if(i>c)c=i;if(a<l)l=a;if(a>f)f=a}if(c<u)u=this._x0,c=this._x1;if(f<l)l=this._y0,f=this._y1;this.cover(u,l).cover(c,f);for(n=0;n<r;++n){add$1(this,o[n],s[n],t[n])}return this}function tree_cover(t,e){if(isNaN(t=+t)||isNaN(e=+e))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n)){i=(n=Math.floor(t))+1;a=(r=Math.floor(e))+1}else if(n>t||t>i||r>e||e>a){var o=i-n,s=this._root,u,l;switch(l=(e<(r+a)/2)<<1|t<(n+i)/2){case 0:{do{u=new Array(4),u[l]=s,s=u}while(o*=2,i=n+o,a=r+o,t>i||e>a);break}case 1:{do{u=new Array(4),u[l]=s,s=u}while(o*=2,n=i-o,a=r+o,n>t||e>a);break}case 2:{do{u=new Array(4),u[l]=s,s=u}while(o*=2,i=n+o,r=a-o,t>i||r>e);break}case 3:{do{u=new Array(4),u[l]=s,s=u}while(o*=2,n=i-o,r=a-o,n>t||r>e);break}}if(this._root&&this._root.length)this._root=s}else return this;this._x0=n;this._y0=r;this._x1=i;this._y1=a;return this}function tree_data(){var t=[];this.visit((function(e){if(!e.length)do{t.push(e.data)}while(e=e.next)}));return t}function tree_extent(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?undefined:[[this._x0,this._y0],[this._x1,this._y1]]}function Quad(t,e,n,r,i){this.node=t;this.x0=e;this.y0=n;this.x1=r;this.y1=i}function tree_find(t,e,n){var r,i=this._x0,a=this._y0,o,s,u,l,c=this._x1,f=this._y1,h=[],d=this._root,p,v;if(d)h.push(new Quad(d,i,a,c,f));if(n==null)n=Infinity;else{i=t-n,a=e-n;c=t+n,f=e+n;n*=n}while(p=h.pop()){if(!(d=p.node)||(o=p.x0)>c||(s=p.y0)>f||(u=p.x1)<i||(l=p.y1)<a)continue;if(d.length){var m=(o+u)/2,g=(s+l)/2;h.push(new Quad(d[3],m,g,u,l),new Quad(d[2],o,g,m,l),new Quad(d[1],m,s,u,g),new Quad(d[0],o,s,m,g));if(v=(e>=g)<<1|t>=m){p=h[h.length-1];h[h.length-1]=h[h.length-1-v];h[h.length-1-v]=p}}else{var y=t-+this._x.call(null,d.data),b=e-+this._y.call(null,d.data),_=y*y+b*b;if(_<n){var x=Math.sqrt(n=_);i=t-x,a=e-x;c=t+x,f=e+x;r=d.data}}}return r}function tree_remove(t){if(isNaN(c=+this._x.call(null,t))||isNaN(f=+this._y.call(null,t)))return this;var e,n=this._root,r,i,a,o=this._x0,s=this._y0,u=this._x1,l=this._y1,c,f,h,d,p,v,m,g;if(!n)return this;if(n.length)while(true){if(p=c>=(h=(o+u)/2))o=h;else u=h;if(v=f>=(d=(s+l)/2))s=d;else l=d;if(!(e=n,n=n[m=v<<1|p]))return this;if(!n.length)break;if(e[m+1&3]||e[m+2&3]||e[m+3&3])r=e,g=m}while(n.data!==t)if(!(i=n,n=n.next))return this;if(a=n.next)delete n.next;if(i)return a?i.next=a:delete i.next,this;if(!e)return this._root=a,this;a?e[m]=a:delete e[m];if((n=e[0]||e[1]||e[2]||e[3])&&n===(e[3]||e[2]||e[1]||e[0])&&!n.length){if(r)r[g]=n;else this._root=n}return this}function removeAll(t){for(var e=0,n=t.length;e<n;++e)this.remove(t[e]);return this}function tree_root(){return this._root}function tree_size(){var t=0;this.visit((function(e){if(!e.length)do{++t}while(e=e.next)}));return t}function tree_visit(t){var e=[],n,r=this._root,i,a,o,s,u;if(r)e.push(new Quad(r,this._x0,this._y0,this._x1,this._y1));while(n=e.pop()){if(!t(r=n.node,a=n.x0,o=n.y0,s=n.x1,u=n.y1)&&r.length){var l=(a+s)/2,c=(o+u)/2;if(i=r[3])e.push(new Quad(i,l,c,s,u));if(i=r[2])e.push(new Quad(i,a,c,l,u));if(i=r[1])e.push(new Quad(i,l,o,s,c));if(i=r[0])e.push(new Quad(i,a,o,l,c))}}return this}function tree_visitAfter(t){var e=[],n=[],r;if(this._root)e.push(new Quad(this._root,this._x0,this._y0,this._x1,this._y1));while(r=e.pop()){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,u=r.x1,l=r.y1,c=(o+u)/2,f=(s+l)/2;if(a=i[0])e.push(new Quad(a,o,s,c,f));if(a=i[1])e.push(new Quad(a,c,s,u,f));if(a=i[2])e.push(new Quad(a,o,f,c,l));if(a=i[3])e.push(new Quad(a,c,f,u,l))}n.push(r)}while(r=n.pop()){t(r.node,r.x0,r.y0,r.x1,r.y1)}return this}function defaultX(t){return t[0]}function tree_x(t){return arguments.length?(this._x=t,this):this._x}function defaultY(t){return t[1]}function tree_y(t){return arguments.length?(this._y=t,this):this._y}function quadtree(t,e,n){var r=new Quadtree(e==null?defaultX:e,n==null?defaultY:n,NaN,NaN,NaN,NaN);return t==null?r:r.addAll(t)}function Quadtree(t,e,n,r,i,a){this._x=t;this._y=e;this._x0=n;this._y0=r;this._x1=i;this._y1=a;this._root=undefined}function leaf_copy(t){var e={data:t.data},n=e;while(t=t.next)n=n.next={data:t.data};return e}var treeProto=quadtree.prototype=Quadtree.prototype;treeProto.copy=function(){var t=new Quadtree(this._x,this._y,this._x0,this._y0,this._x1,this._y1),e=this._root,n,r;if(!e)return t;if(!e.length)return t._root=leaf_copy(e),t;n=[{source:e,target:t._root=new Array(4)}];while(e=n.pop()){for(var i=0;i<4;++i){if(r=e.source[i]){if(r.length)n.push({source:r,target:e.target[i]=new Array(4)});else e.target[i]=leaf_copy(r)}}}return t};treeProto.add=tree_add;treeProto.addAll=addAll;treeProto.cover=tree_cover;treeProto.data=tree_data;treeProto.extent=tree_extent;treeProto.find=tree_find;treeProto.remove=tree_remove;treeProto.removeAll=removeAll;treeProto.root=tree_root;treeProto.size=tree_size;treeProto.visit=tree_visit;treeProto.visitAfter=tree_visitAfter;treeProto.x=tree_x;treeProto.y=tree_y;function x$4(t){return t.x+t.vx}function y$4(t){return t.y+t.vy}function collide(t){var e,n,r=1,i=1;if(typeof t!=="function")t=constant$6(t==null?1:+t);function a(){var t,a=e.length,s,u,l,c,f,h;for(var d=0;d<i;++d){s=quadtree(e,x$4,y$4).visitAfter(o);for(t=0;t<a;++t){u=e[t];f=n[u.index],h=f*f;l=u.x+u.vx;c=u.y+u.vy;s.visit(p)}}function p(t,e,n,i,a){var o=t.data,s=t.r,d=f+s;if(o){if(o.index>u.index){var p=l-o.x-o.vx,v=c-o.y-o.vy,m=p*p+v*v;if(m<d*d){if(p===0)p=jiggle(),m+=p*p;if(v===0)v=jiggle(),m+=v*v;m=(d-(m=Math.sqrt(m)))/m*r;u.vx+=(p*=m)*(d=(s*=s)/(h+s));u.vy+=(v*=m)*d;o.vx-=p*(d=1-d);o.vy-=v*d}}return}return e>l+d||i<l-d||n>c+d||a<c-d}}function o(t){if(t.data)return t.r=n[t.data.index];for(var e=t.r=0;e<4;++e){if(t[e]&&t[e].r>t.r){t.r=t[e].r}}}function s(){if(!e)return;var r,i=e.length,a;n=new Array(i);for(r=0;r<i;++r)a=e[r],n[a.index]=+t(a,r,e)}a.initialize=function(t){e=t;s()};a.iterations=function(t){return arguments.length?(i=+t,a):i};a.strength=function(t){return arguments.length?(r=+t,a):r};a.radius=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),s(),a):t};return a}function index$3(t){return t.index}function find(t,e){var n=t.get(e);if(!n)throw new Error("missing: "+e);return n}function link$2(t){var e=index$3,n=c,r,i=constant$6(30),a,o,s,u,l=1;if(t==null)t=[];function c(t){return 1/Math.min(s[t.source.index],s[t.target.index])}function f(e){for(var n=0,i=t.length;n<l;++n){for(var o=0,s,c,f,h,d,p,v;o<i;++o){s=t[o],c=s.source,f=s.target;h=f.x+f.vx-c.x-c.vx||jiggle();d=f.y+f.vy-c.y-c.vy||jiggle();p=Math.sqrt(h*h+d*d);p=(p-a[o])/p*e*r[o];h*=p,d*=p;f.vx-=h*(v=u[o]);f.vy-=d*v;c.vx+=h*(v=1-v);c.vy+=d*v}}}function h(){if(!o)return;var n,i=o.length,l=t.length,c=map$1(o,e),f;for(n=0,s=new Array(i);n<l;++n){f=t[n],f.index=n;if(typeof f.source!=="object")f.source=find(c,f.source);if(typeof f.target!=="object")f.target=find(c,f.target);s[f.source.index]=(s[f.source.index]||0)+1;s[f.target.index]=(s[f.target.index]||0)+1}for(n=0,u=new Array(l);n<l;++n){f=t[n],u[n]=s[f.source.index]/(s[f.source.index]+s[f.target.index])}r=new Array(l),d();a=new Array(l),p()}function d(){if(!o)return;for(var e=0,i=t.length;e<i;++e){r[e]=+n(t[e],e,t)}}function p(){if(!o)return;for(var e=0,n=t.length;e<n;++e){a[e]=+i(t[e],e,t)}}f.initialize=function(t){o=t;h()};f.links=function(e){return arguments.length?(t=e,h(),f):t};f.id=function(t){return arguments.length?(e=t,f):e};f.iterations=function(t){return arguments.length?(l=+t,f):l};f.strength=function(t){return arguments.length?(n=typeof t==="function"?t:constant$6(+t),d(),f):n};f.distance=function(t){return arguments.length?(i=typeof t==="function"?t:constant$6(+t),p(),f):i};return f}function x$3(t){return t.x}function y$3(t){return t.y}var initialRadius=10,initialAngle=Math.PI*(3-Math.sqrt(5));function simulation(t){var e,n=1,r=.001,i=1-Math.pow(r,1/300),a=0,o=.6,s=map$1(),u=timer(c),l=dispatch("tick","end");if(t==null)t=[];function c(){f();l.call("tick",e);if(n<r){u.stop();l.call("end",e)}}function f(){var e,r=t.length,u;n+=(a-n)*i;s.each((function(t){t(n)}));for(e=0;e<r;++e){u=t[e];if(u.fx==null)u.x+=u.vx*=o;else u.x=u.fx,u.vx=0;if(u.fy==null)u.y+=u.vy*=o;else u.y=u.fy,u.vy=0}}function h(){for(var e=0,n=t.length,r;e<n;++e){r=t[e],r.index=e;if(isNaN(r.x)||isNaN(r.y)){var i=initialRadius*Math.sqrt(e),a=e*initialAngle;r.x=i*Math.cos(a);r.y=i*Math.sin(a)}if(isNaN(r.vx)||isNaN(r.vy)){r.vx=r.vy=0}}}function d(e){if(e.initialize)e.initialize(t);return e}h();return e={tick:f,restart:function(){return u.restart(c),e},stop:function(){return u.stop(),e},nodes:function(n){return arguments.length?(t=n,h(),s.each(d),e):t},alpha:function(t){return arguments.length?(n=+t,e):n},alphaMin:function(t){return arguments.length?(r=+t,e):r},alphaDecay:function(t){return arguments.length?(i=+t,e):+i},alphaTarget:function(t){return arguments.length?(a=+t,e):a},velocityDecay:function(t){return arguments.length?(o=1-t,e):1-o},force:function(t,n){return arguments.length>1?(n==null?s.remove(t):s.set(t,d(n)),e):s.get(t)},find:function(e,n,r){var i=0,a=t.length,o,s,u,l,c;if(r==null)r=Infinity;else r*=r;for(i=0;i<a;++i){l=t[i];o=e-l.x;s=n-l.y;u=o*o+s*s;if(u<r)c=l,r=u}return c},on:function(t,n){return arguments.length>1?(l.on(t,n),e):l.on(t)}}}function manyBody(){var t,e,n,r=constant$6(-30),i,a=1,o=Infinity,s=.81;function u(r){var i,a=t.length,o=quadtree(t,x$3,y$3).visitAfter(c);for(n=r,i=0;i<a;++i)e=t[i],o.visit(f)}function l(){if(!t)return;var e,n=t.length,a;i=new Array(n);for(e=0;e<n;++e)a=t[e],i[a.index]=+r(a,e,t)}function c(t){var e=0,n,r,a=0,o,s,u;if(t.length){for(o=s=u=0;u<4;++u){if((n=t[u])&&(r=Math.abs(n.value))){e+=n.value,a+=r,o+=r*n.x,s+=r*n.y}}t.x=o/a;t.y=s/a}else{n=t;n.x=n.data.x;n.y=n.data.y;do{e+=i[n.data.index]}while(n=n.next)}t.value=e}function f(t,r,u,l){if(!t.value)return true;var c=t.x-e.x,f=t.y-e.y,h=l-r,d=c*c+f*f;if(h*h/s<d){if(d<o){if(c===0)c=jiggle(),d+=c*c;if(f===0)f=jiggle(),d+=f*f;if(d<a)d=Math.sqrt(a*d);e.vx+=c*t.value*n/d;e.vy+=f*t.value*n/d}return true}else if(t.length||d>=o)return;if(t.data!==e||t.next){if(c===0)c=jiggle(),d+=c*c;if(f===0)f=jiggle(),d+=f*f;if(d<a)d=Math.sqrt(a*d)}do{if(t.data!==e){h=i[t.data.index]*n/d;e.vx+=c*h;e.vy+=f*h}}while(t=t.next)}u.initialize=function(e){t=e;l()};u.strength=function(t){return arguments.length?(r=typeof t==="function"?t:constant$6(+t),l(),u):r};u.distanceMin=function(t){return arguments.length?(a=t*t,u):Math.sqrt(a)};u.distanceMax=function(t){return arguments.length?(o=t*t,u):Math.sqrt(o)};u.theta=function(t){return arguments.length?(s=t*t,u):Math.sqrt(s)};return u}function radial(t,e,n){var r,i=constant$6(.1),a,o;if(typeof t!=="function")t=constant$6(+t);if(e==null)e=0;if(n==null)n=0;function s(t){for(var i=0,s=r.length;i<s;++i){var u=r[i],l=u.x-e||1e-6,c=u.y-n||1e-6,f=Math.sqrt(l*l+c*c),h=(o[i]-f)*a[i]*t/f;u.vx+=l*h;u.vy+=c*h}}function u(){if(!r)return;var e,n=r.length;a=new Array(n);o=new Array(n);for(e=0;e<n;++e){o[e]=+t(r[e],e,r);a[e]=isNaN(o[e])?0:+i(r[e],e,r)}}s.initialize=function(t){r=t,u()};s.strength=function(t){return arguments.length?(i=typeof t==="function"?t:constant$6(+t),u(),s):i};s.radius=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),u(),s):t};s.x=function(t){return arguments.length?(e=+t,s):e};s.y=function(t){return arguments.length?(n=+t,s):n};return s}function x$2(t){var e=constant$6(.1),n,r,i;if(typeof t!=="function")t=constant$6(t==null?0:+t);function a(t){for(var e=0,a=n.length,o;e<a;++e){o=n[e],o.vx+=(i[e]-o.x)*r[e]*t}}function o(){if(!n)return;var a,o=n.length;r=new Array(o);i=new Array(o);for(a=0;a<o;++a){r[a]=isNaN(i[a]=+t(n[a],a,n))?0:+e(n[a],a,n)}}a.initialize=function(t){n=t;o()};a.strength=function(t){return arguments.length?(e=typeof t==="function"?t:constant$6(+t),o(),a):e};a.x=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),o(),a):t};return a}function y$2(t){var e=constant$6(.1),n,r,i;if(typeof t!=="function")t=constant$6(t==null?0:+t);function a(t){for(var e=0,a=n.length,o;e<a;++e){o=n[e],o.vy+=(i[e]-o.y)*r[e]*t}}function o(){if(!n)return;var a,o=n.length;r=new Array(o);i=new Array(o);for(a=0;a<o;++a){r[a]=isNaN(i[a]=+t(n[a],a,n))?0:+e(n[a],a,n)}}a.initialize=function(t){n=t;o()};a.strength=function(t){return arguments.length?(e=typeof t==="function"?t:constant$6(+t),o(),a):e};a.y=function(e){return arguments.length?(t=typeof e==="function"?e:constant$6(+e),o(),a):t};return a}function formatDecimal(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,r=t.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+t.slice(n+1)]}function exponent(t){return t=formatDecimal(Math.abs(t)),t?t[1]:NaN}function formatGroup(t,e){return function(n,r){var i=n.length,a=[],o=0,s=t[0],u=0;while(i>0&&s>0){if(u+s+1>r)s=Math.max(1,r-u);a.push(n.substring(i-=s,i+s));if((u+=s+1)>r)break;s=t[o=(o+1)%t.length]}return a.reverse().join(e)}}function formatNumerals(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}function formatDefault(t,e){t=t.toPrecision(e);t:for(var n=t.length,r=1,i=-1,a;r<n;++r){switch(t[r]){case".":i=a=r;break;case"0":if(i===0)i=r;a=r;break;case"e":break t;default:if(i>0)i=0;break}}return i>0?t.slice(0,i)+t.slice(a+1):t}var prefixExponent;function formatPrefixAuto(t,e){var n=formatDecimal(t,e);if(!n)return t+"";var r=n[0],i=n[1],a=i-(prefixExponent=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+new Array(a-o+1).join("0"):a>0?r.slice(0,a)+"."+r.slice(a):"0."+new Array(1-a).join("0")+formatDecimal(t,Math.max(0,e+a-1))[0]}function formatRounded(t,e){var n=formatDecimal(t,e);if(!n)return t+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}var formatTypes={"":formatDefault,"%":function(t,e){return(t*100).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.round(t).toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return formatRounded(t*100,e)},r:formatRounded,s:formatPrefixAuto,X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};var re=/^(?:(.)?([<>=^]))?([+\-\( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?([a-z%])?$/i;function formatSpecifier(t){return new FormatSpecifier(t)}formatSpecifier.prototype=FormatSpecifier.prototype;function FormatSpecifier(t){if(!(e=re.exec(t)))throw new Error("invalid format: "+t);var e,n=e[1]||" ",r=e[2]||">",i=e[3]||"-",a=e[4]||"",o=!!e[5],s=e[6]&&+e[6],u=!!e[7],l=e[8]&&+e[8].slice(1),c=e[9]||"";if(c==="n")u=true,c="g";else if(!formatTypes[c])c="";if(o||n==="0"&&r==="=")o=true,n="0",r="=";this.fill=n;this.align=r;this.sign=i;this.symbol=a;this.zero=o;this.width=s;this.comma=u;this.precision=l;this.type=c}FormatSpecifier.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width==null?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision==null?"":"."+Math.max(0,this.precision|0))+this.type};function identity$6(t){return t}var prefixes=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function formatLocale$1(t){var e=t.grouping&&t.thousands?formatGroup(t.grouping,t.thousands):identity$6,n=t.currency,r=t.decimal,i=t.numerals?formatNumerals(t.numerals):identity$6,a=t.percent||"%";function o(t){t=formatSpecifier(t);var o=t.fill,s=t.align,u=t.sign,l=t.symbol,c=t.zero,f=t.width,h=t.comma,d=t.precision,p=t.type;var v=l==="$"?n[0]:l==="#"&&/[boxX]/.test(p)?"0"+p.toLowerCase():"",m=l==="$"?n[1]:/[%p]/.test(p)?a:"";var g=formatTypes[p],y=!p||/[defgprs%]/.test(p);d=d==null?p?6:12:/[gprs]/.test(p)?Math.max(1,Math.min(21,d)):Math.max(0,Math.min(20,d));function b(t){var n=v,a=m,l,b,_;if(p==="c"){a=g(t)+a;t=""}else{t=+t;var x=t<0;t=g(Math.abs(t),d);if(x&&+t===0)x=false;n=(x?u==="("?u:"-":u==="-"||u==="("?"":u)+n;a=(p==="s"?prefixes[8+prefixExponent/3]:"")+a+(x&&u==="("?")":"");if(y){l=-1,b=t.length;while(++l<b){if(_=t.charCodeAt(l),48>_||_>57){a=(_===46?r+t.slice(l+1):t.slice(l))+a;t=t.slice(0,l);break}}}}if(h&&!c)t=e(t,Infinity);var w=n.length+t.length+a.length,$=w<f?new Array(f-w+1).join(o):"";if(h&&c)t=e($+t,$.length?f-a.length:Infinity),$="";switch(s){case"<":t=n+t+a+$;break;case"=":t=n+$+t+a;break;case"^":t=$.slice(0,w=$.length>>1)+n+t+a+$.slice(w);break;default:t=$+n+t+a;break}return i(t)}b.toString=function(){return t+""};return b}function s(t,e){var n=o((t=formatSpecifier(t),t.type="f",t)),r=Math.max(-8,Math.min(8,Math.floor(exponent(e)/3)))*3,i=Math.pow(10,-r),a=prefixes[8+r/3];return function(t){return n(i*t)+a}}return{format:o,formatPrefix:s}}var locale$1;var format;var formatPrefix;defaultLocale$1({decimal:".",thousands:",",grouping:[3],currency:["$",""]});function defaultLocale$1(t){locale$1=formatLocale$1(t);format=locale$1.format;formatPrefix=locale$1.formatPrefix;return locale$1}function precisionFixed(t){return Math.max(0,-exponent(Math.abs(t)))}function precisionPrefix(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(exponent(e)/3)))*3-exponent(Math.abs(t)))}function precisionRound(t,e){t=Math.abs(t),e=Math.abs(e)-t;return Math.max(0,exponent(e)-exponent(t))+1}function adder(){return new Adder}function Adder(){this.reset()}Adder.prototype={constructor:Adder,reset:function(){this.s=this.t=0},add:function(t){add(temp,t,this.t);add(this,temp.s,this.s);if(this.s)this.t+=temp.t;else this.s=temp.t},valueOf:function(){return this.s}};var temp=new Adder;function add(t,e,n){var r=t.s=e+n,i=r-e,a=r-i;t.t=e-a+(n-i)}var epsilon$2=1e-6;var epsilon2$1=1e-12;var pi$1=Math.PI;var halfPi$1=pi$1/2;var quarterPi=pi$1/4;var tau$1=pi$1*2;var degrees=180/pi$1;var radians=pi$1/180;var abs$1=Math.abs;var atan=Math.atan;var atan2$1=Math.atan2;var cos$1=Math.cos;var ceil=Math.ceil;var exp=Math.exp;var log$1=Math.log;var pow$1=Math.pow;var sin$1=Math.sin;var sign$1=Math.sign||function(t){return t>0?1:t<0?-1:0};var sqrt$2=Math.sqrt;var tan=Math.tan;function acos$1(t){return t>1?0:t<-1?pi$1:Math.acos(t)}function asin$1(t){return t>1?halfPi$1:t<-1?-halfPi$1:Math.asin(t)}function haversin(t){return(t=sin$1(t/2))*t}function noop$1(){}function streamGeometry(t,e){if(t&&streamGeometryType.hasOwnProperty(t.type)){streamGeometryType[t.type](t,e)}}var streamObjectType={Feature:function(t,e){streamGeometry(t.geometry,e)},FeatureCollection:function(t,e){var n=t.features,r=-1,i=n.length;while(++r<i)streamGeometry(n[r].geometry,e)}};var streamGeometryType={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates;e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)t=n[r],e.point(t[0],t[1],t[2])},LineString:function(t,e){streamLine(t.coordinates,e,0)},MultiLineString:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)streamLine(n[r],e,0)},Polygon:function(t,e){streamPolygon(t.coordinates,e)},MultiPolygon:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)streamPolygon(n[r],e)},GeometryCollection:function(t,e){var n=t.geometries,r=-1,i=n.length;while(++r<i)streamGeometry(n[r],e)}};function streamLine(t,e,n){var r=-1,i=t.length-n,a;e.lineStart();while(++r<i)a=t[r],e.point(a[0],a[1],a[2]);e.lineEnd()}function streamPolygon(t,e){var n=-1,r=t.length;e.polygonStart();while(++n<r)streamLine(t[n],e,1);e.polygonEnd()}function geoStream(t,e){if(t&&streamObjectType.hasOwnProperty(t.type)){streamObjectType[t.type](t,e)}else{streamGeometry(t,e)}}var areaRingSum$1=adder();var areaSum$1=adder(),lambda00$2,phi00$2,lambda0$2,cosPhi0$1,sinPhi0$1;var areaStream$1={point:noop$1,lineStart:noop$1,lineEnd:noop$1,polygonStart:function(){areaRingSum$1.reset();areaStream$1.lineStart=areaRingStart$1;areaStream$1.lineEnd=areaRingEnd$1},polygonEnd:function(){var t=+areaRingSum$1;areaSum$1.add(t<0?tau$1+t:t);this.lineStart=this.lineEnd=this.point=noop$1},sphere:function(){areaSum$1.add(tau$1)}};function areaRingStart$1(){areaStream$1.point=areaPointFirst$1}function areaRingEnd$1(){areaPoint$1(lambda00$2,phi00$2)}function areaPointFirst$1(t,e){areaStream$1.point=areaPoint$1;lambda00$2=t,phi00$2=e;t*=radians,e*=radians;lambda0$2=t,cosPhi0$1=cos$1(e=e/2+quarterPi),sinPhi0$1=sin$1(e)}function areaPoint$1(t,e){t*=radians,e*=radians;e=e/2+quarterPi;var n=t-lambda0$2,r=n>=0?1:-1,i=r*n,a=cos$1(e),o=sin$1(e),s=sinPhi0$1*o,u=cosPhi0$1*a+s*cos$1(i),l=s*r*sin$1(i);areaRingSum$1.add(atan2$1(l,u));lambda0$2=t,cosPhi0$1=a,sinPhi0$1=o}function area$2(t){areaSum$1.reset();geoStream(t,areaStream$1);return areaSum$1*2}function spherical(t){return[atan2$1(t[1],t[0]),asin$1(t[2])]}function cartesian(t){var e=t[0],n=t[1],r=cos$1(n);return[r*cos$1(e),r*sin$1(e),sin$1(n)]}function cartesianDot(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function cartesianCross(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function cartesianAddInPlace(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function cartesianScale(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function cartesianNormalizeInPlace(t){var e=sqrt$2(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var lambda0$1,phi0,lambda1,phi1,lambda2,lambda00$1,phi00$1,p0,deltaSum=adder(),ranges,range;var boundsStream$1={point:boundsPoint$1,lineStart:boundsLineStart,lineEnd:boundsLineEnd,polygonStart:function(){boundsStream$1.point=boundsRingPoint;boundsStream$1.lineStart=boundsRingStart;boundsStream$1.lineEnd=boundsRingEnd;deltaSum.reset();areaStream$1.polygonStart()},polygonEnd:function(){areaStream$1.polygonEnd();boundsStream$1.point=boundsPoint$1;boundsStream$1.lineStart=boundsLineStart;boundsStream$1.lineEnd=boundsLineEnd;if(areaRingSum$1<0)lambda0$1=-(lambda1=180),phi0=-(phi1=90);else if(deltaSum>epsilon$2)phi1=90;else if(deltaSum<-epsilon$2)phi0=-90;range[0]=lambda0$1,range[1]=lambda1}};function boundsPoint$1(t,e){ranges.push(range=[lambda0$1=t,lambda1=t]);if(e<phi0)phi0=e;if(e>phi1)phi1=e}function linePoint(t,e){var n=cartesian([t*radians,e*radians]);if(p0){var r=cartesianCross(p0,n),i=[r[1],-r[0],0],a=cartesianCross(i,r);cartesianNormalizeInPlace(a);a=spherical(a);var o=t-lambda2,s=o>0?1:-1,u=a[0]*degrees*s,l,c=abs$1(o)>180;if(c^(s*lambda2<u&&u<s*t)){l=a[1]*degrees;if(l>phi1)phi1=l}else if(u=(u+360)%360-180,c^(s*lambda2<u&&u<s*t)){l=-a[1]*degrees;if(l<phi0)phi0=l}else{if(e<phi0)phi0=e;if(e>phi1)phi1=e}if(c){if(t<lambda2){if(angle(lambda0$1,t)>angle(lambda0$1,lambda1))lambda1=t}else{if(angle(t,lambda1)>angle(lambda0$1,lambda1))lambda0$1=t}}else{if(lambda1>=lambda0$1){if(t<lambda0$1)lambda0$1=t;if(t>lambda1)lambda1=t}else{if(t>lambda2){if(angle(lambda0$1,t)>angle(lambda0$1,lambda1))lambda1=t}else{if(angle(t,lambda1)>angle(lambda0$1,lambda1))lambda0$1=t}}}}else{ranges.push(range=[lambda0$1=t,lambda1=t])}if(e<phi0)phi0=e;if(e>phi1)phi1=e;p0=n,lambda2=t}function boundsLineStart(){boundsStream$1.point=linePoint}function boundsLineEnd(){range[0]=lambda0$1,range[1]=lambda1;boundsStream$1.point=boundsPoint$1;p0=null}function boundsRingPoint(t,e){if(p0){var n=t-lambda2;deltaSum.add(abs$1(n)>180?n+(n>0?360:-360):n)}else{lambda00$1=t,phi00$1=e}areaStream$1.point(t,e);linePoint(t,e)}function boundsRingStart(){areaStream$1.lineStart()}function boundsRingEnd(){boundsRingPoint(lambda00$1,phi00$1);areaStream$1.lineEnd();if(abs$1(deltaSum)>epsilon$2)lambda0$1=-(lambda1=180);range[0]=lambda0$1,range[1]=lambda1;p0=null}function angle(t,e){return(e-=t)<0?e+360:e}function rangeCompare(t,e){return t[0]-e[0]}function rangeContains(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:e<t[0]||t[1]<e}function bounds(t){var e,n,r,i,a,o,s;phi1=lambda1=-(lambda0$1=phi0=Infinity);ranges=[];geoStream(t,boundsStream$1);if(n=ranges.length){ranges.sort(rangeCompare);for(e=1,r=ranges[0],a=[r];e<n;++e){i=ranges[e];if(rangeContains(r,i[0])||rangeContains(r,i[1])){if(angle(r[0],i[1])>angle(r[0],r[1]))r[1]=i[1];if(angle(i[0],r[1])>angle(r[0],r[1]))r[0]=i[0]}else{a.push(r=i)}}for(o=-Infinity,n=a.length-1,e=0,r=a[n];e<=n;r=i,++e){i=a[e];if((s=angle(r[1],i[0]))>o)o=s,lambda0$1=i[0],lambda1=r[1]}}ranges=range=null;return lambda0$1===Infinity||phi0===Infinity?[[NaN,NaN],[NaN,NaN]]:[[lambda0$1,phi0],[lambda1,phi1]]}var W0,W1,X0$1,Y0$1,Z0$1,X1$1,Y1$1,Z1$1,X2$1,Y2$1,Z2$1,lambda00,phi00,x0$4,y0$4,z0;var centroidStream$1={sphere:noop$1,point:centroidPoint$1,lineStart:centroidLineStart$1,lineEnd:centroidLineEnd$1,polygonStart:function(){centroidStream$1.lineStart=centroidRingStart$1;centroidStream$1.lineEnd=centroidRingEnd$1},polygonEnd:function(){centroidStream$1.lineStart=centroidLineStart$1;centroidStream$1.lineEnd=centroidLineEnd$1}};function centroidPoint$1(t,e){t*=radians,e*=radians;var n=cos$1(e);centroidPointCartesian(n*cos$1(t),n*sin$1(t),sin$1(e))}function centroidPointCartesian(t,e,n){++W0;X0$1+=(t-X0$1)/W0;Y0$1+=(e-Y0$1)/W0;Z0$1+=(n-Z0$1)/W0}function centroidLineStart$1(){centroidStream$1.point=centroidLinePointFirst}function centroidLinePointFirst(t,e){t*=radians,e*=radians;var n=cos$1(e);x0$4=n*cos$1(t);y0$4=n*sin$1(t);z0=sin$1(e);centroidStream$1.point=centroidLinePoint;centroidPointCartesian(x0$4,y0$4,z0)}function centroidLinePoint(t,e){t*=radians,e*=radians;var n=cos$1(e),r=n*cos$1(t),i=n*sin$1(t),a=sin$1(e),o=atan2$1(sqrt$2((o=y0$4*a-z0*i)*o+(o=z0*r-x0$4*a)*o+(o=x0$4*i-y0$4*r)*o),x0$4*r+y0$4*i+z0*a);W1+=o;X1$1+=o*(x0$4+(x0$4=r));Y1$1+=o*(y0$4+(y0$4=i));Z1$1+=o*(z0+(z0=a));centroidPointCartesian(x0$4,y0$4,z0)}function centroidLineEnd$1(){centroidStream$1.point=centroidPoint$1}function centroidRingStart$1(){centroidStream$1.point=centroidRingPointFirst}function centroidRingEnd$1(){centroidRingPoint(lambda00,phi00);centroidStream$1.point=centroidPoint$1}function centroidRingPointFirst(t,e){lambda00=t,phi00=e;t*=radians,e*=radians;centroidStream$1.point=centroidRingPoint;var n=cos$1(e);x0$4=n*cos$1(t);y0$4=n*sin$1(t);z0=sin$1(e);centroidPointCartesian(x0$4,y0$4,z0)}function centroidRingPoint(t,e){t*=radians,e*=radians;var n=cos$1(e),r=n*cos$1(t),i=n*sin$1(t),a=sin$1(e),o=y0$4*a-z0*i,s=z0*r-x0$4*a,u=x0$4*i-y0$4*r,l=sqrt$2(o*o+s*s+u*u),c=asin$1(l),f=l&&-c/l;X2$1+=f*o;Y2$1+=f*s;Z2$1+=f*u;W1+=c;X1$1+=c*(x0$4+(x0$4=r));Y1$1+=c*(y0$4+(y0$4=i));Z1$1+=c*(z0+(z0=a));centroidPointCartesian(x0$4,y0$4,z0)}function centroid$1(t){W0=W1=X0$1=Y0$1=Z0$1=X1$1=Y1$1=Z1$1=X2$1=Y2$1=Z2$1=0;geoStream(t,centroidStream$1);var e=X2$1,n=Y2$1,r=Z2$1,i=e*e+n*n+r*r;if(i<epsilon2$1){e=X1$1,n=Y1$1,r=Z1$1;if(W1<epsilon$2)e=X0$1,n=Y0$1,r=Z0$1;i=e*e+n*n+r*r;if(i<epsilon2$1)return[NaN,NaN]}return[atan2$1(n,e)*degrees,asin$1(r/sqrt$2(i))*degrees]}function constant$5(t){return function(){return t}}function compose(t,e){function n(n,r){return n=t(n,r),e(n[0],n[1])}if(t.invert&&e.invert)n.invert=function(n,r){return n=e.invert(n,r),n&&t.invert(n[0],n[1])};return n}function rotationIdentity(t,e){return[t>pi$1?t-tau$1:t<-pi$1?t+tau$1:t,e]}rotationIdentity.invert=rotationIdentity;function rotateRadians(t,e,n){return(t%=tau$1)?e||n?compose(rotationLambda(t),rotationPhiGamma(e,n)):rotationLambda(t):e||n?rotationPhiGamma(e,n):rotationIdentity}function forwardRotationLambda(t){return function(e,n){return e+=t,[e>pi$1?e-tau$1:e<-pi$1?e+tau$1:e,n]}}function rotationLambda(t){var e=forwardRotationLambda(t);e.invert=forwardRotationLambda(-t);return e}function rotationPhiGamma(t,e){var n=cos$1(t),r=sin$1(t),i=cos$1(e),a=sin$1(e);function o(t,e){var o=cos$1(e),s=cos$1(t)*o,u=sin$1(t)*o,l=sin$1(e),c=l*n+s*r;return[atan2$1(u*i-c*a,s*n-l*r),asin$1(c*i+u*a)]}o.invert=function(t,e){var o=cos$1(e),s=cos$1(t)*o,u=sin$1(t)*o,l=sin$1(e),c=l*i-u*a;return[atan2$1(u*i+l*a,s*n+c*r),asin$1(c*n-s*r)]};return o}function rotation(t){t=rotateRadians(t[0]*radians,t[1]*radians,t.length>2?t[2]*radians:0);function e(e){e=t(e[0]*radians,e[1]*radians);return e[0]*=degrees,e[1]*=degrees,e}e.invert=function(e){e=t.invert(e[0]*radians,e[1]*radians);return e[0]*=degrees,e[1]*=degrees,e};return e}function circleStream(t,e,n,r,i,a){if(!n)return;var o=cos$1(e),s=sin$1(e),u=r*n;if(i==null){i=e+r*tau$1;a=e-u/2}else{i=circleRadius(o,i);a=circleRadius(o,a);if(r>0?i<a:i>a)i+=r*tau$1}for(var l,c=i;r>0?c>a:c<a;c-=u){l=spherical([o,-s*cos$1(c),-s*sin$1(c)]);t.point(l[0],l[1])}}function circleRadius(t,e){e=cartesian(e),e[0]-=t;cartesianNormalizeInPlace(e);var n=acos$1(-e[1]);return((-e[2]<0?-n:n)+tau$1-epsilon$2)%tau$1}function circle$2(){var t=constant$5([0,0]),e=constant$5(90),n=constant$5(6),r,i,a={point:o};function o(t,e){r.push(t=i(t,e));t[0]*=degrees,t[1]*=degrees}function s(){var o=t.apply(this,arguments),s=e.apply(this,arguments)*radians,u=n.apply(this,arguments)*radians;r=[];i=rotateRadians(-o[0]*radians,-o[1]*radians,0).invert;circleStream(a,s,u,1);o={type:"Polygon",coordinates:[r]};r=i=null;return o}s.center=function(e){return arguments.length?(t=typeof e==="function"?e:constant$5([+e[0],+e[1]]),s):t};s.radius=function(t){return arguments.length?(e=typeof t==="function"?t:constant$5(+t),s):e};s.precision=function(t){return arguments.length?(n=typeof t==="function"?t:constant$5(+t),s):n};return s}function clipBuffer(){var t=[],e;return{point:function(t,n){e.push([t,n])},lineStart:function(){t.push(e=[])},lineEnd:noop$1,rejoin:function(){if(t.length>1)t.push(t.pop().concat(t.shift()))},result:function(){var n=t;t=[];e=null;return n}}}function pointEqual(t,e){return abs$1(t[0]-e[0])<epsilon$2&&abs$1(t[1]-e[1])<epsilon$2}function Intersection(t,e,n,r){this.x=t;this.z=e;this.o=n;this.e=r;this.v=false;this.n=this.p=null}function clipRejoin(t,e,n,r,i){var a=[],o=[],s,u;t.forEach((function(t){if((e=t.length-1)<=0)return;var e,n=t[0],r=t[e],u;if(pointEqual(n,r)){i.lineStart();for(s=0;s<e;++s)i.point((n=t[s])[0],n[1]);i.lineEnd();return}a.push(u=new Intersection(n,t,null,true));o.push(u.o=new Intersection(n,null,u,false));a.push(u=new Intersection(r,t,null,false));o.push(u.o=new Intersection(r,null,u,true))}));if(!a.length)return;o.sort(e);link$1(a);link$1(o);for(s=0,u=o.length;s<u;++s){o[s].e=n=!n}var l=a[0],c,f;while(1){var h=l,d=true;while(h.v)if((h=h.n)===l)return;c=h.z;i.lineStart();do{h.v=h.o.v=true;if(h.e){if(d){for(s=0,u=c.length;s<u;++s)i.point((f=c[s])[0],f[1])}else{r(h.x,h.n.x,1,i)}h=h.n}else{if(d){c=h.p.z;for(s=c.length-1;s>=0;--s)i.point((f=c[s])[0],f[1])}else{r(h.x,h.p.x,-1,i)}h=h.p}h=h.o;c=h.z;d=!d}while(!h.v);i.lineEnd()}}function link$1(t){if(!(e=t.length))return;var e,n=0,r=t[0],i;while(++n<e){r.n=i=t[n];i.p=r;r=i}r.n=i=t[0];i.p=r}var sum$1=adder();function polygonContains(t,e){var n=e[0],r=e[1],i=[sin$1(n),-cos$1(n),0],a=0,o=0;sum$1.reset();for(var s=0,u=t.length;s<u;++s){if(!(c=(l=t[s]).length))continue;var l,c,f=l[c-1],h=f[0],d=f[1]/2+quarterPi,p=sin$1(d),v=cos$1(d);for(var m=0;m<c;++m,h=y,p=_,v=x,f=g){var g=l[m],y=g[0],b=g[1]/2+quarterPi,_=sin$1(b),x=cos$1(b),w=y-h,$=w>=0?1:-1,k=$*w,M=k>pi$1,S=p*_;sum$1.add(atan2$1(S*$*sin$1(k),v*x+S*cos$1(k)));a+=M?w+$*tau$1:w;if(M^h>=n^y>=n){var A=cartesianCross(cartesian(f),cartesian(g));cartesianNormalizeInPlace(A);var z=cartesianCross(i,A);cartesianNormalizeInPlace(z);var E=(M^w>=0?-1:1)*asin$1(z[2]);if(r>E||r===E&&(A[0]||A[1])){o+=M^w>=0?1:-1}}}}return(a<-epsilon$2||a<epsilon$2&&sum$1<-epsilon$2)^o&1}function clip(t,e,n,r){return function(i){var a=e(i),o=clipBuffer(),s=e(o),u=false,l,c,f;var h={point:d,lineStart:v,lineEnd:m,polygonStart:function(){h.point=g;h.lineStart=y;h.lineEnd=b;c=[];l=[]},polygonEnd:function(){h.point=d;h.lineStart=v;h.lineEnd=m;c=merge$1(c);var t=polygonContains(l,r);if(c.length){if(!u)i.polygonStart(),u=true;clipRejoin(c,compareIntersection,t,n,i)}else if(t){if(!u)i.polygonStart(),u=true;i.lineStart();n(null,null,1,i);i.lineEnd()}if(u)i.polygonEnd(),u=false;c=l=null},sphere:function(){i.polygonStart();i.lineStart();n(null,null,1,i);i.lineEnd();i.polygonEnd()}};function d(e,n){if(t(e,n))i.point(e,n)}function p(t,e){a.point(t,e)}function v(){h.point=p;a.lineStart()}function m(){h.point=d;a.lineEnd()}function g(t,e){f.push([t,e]);s.point(t,e)}function y(){s.lineStart();f=[]}function b(){g(f[0][0],f[0][1]);s.lineEnd();var t=s.clean(),e=o.result(),n,r=e.length,a,h,d;f.pop();l.push(f);f=null;if(!r)return;if(t&1){h=e[0];if((a=h.length-1)>0){if(!u)i.polygonStart(),u=true;i.lineStart();for(n=0;n<a;++n)i.point((d=h[n])[0],d[1]);i.lineEnd()}return}if(r>1&&t&2)e.push(e.pop().concat(e.shift()));c.push(e.filter(validSegment))}return h}}function validSegment(t){return t.length>1}function compareIntersection(t,e){return((t=t.x)[0]<0?t[1]-halfPi$1-epsilon$2:halfPi$1-t[1])-((e=e.x)[0]<0?e[1]-halfPi$1-epsilon$2:halfPi$1-e[1])}var clipAntimeridian=clip((function(){return true}),clipAntimeridianLine,clipAntimeridianInterpolate,[-pi$1,-halfPi$1]);function clipAntimeridianLine(t){var e=NaN,n=NaN,r=NaN,i;return{lineStart:function(){t.lineStart();i=1},point:function(a,o){var s=a>0?pi$1:-pi$1,u=abs$1(a-e);if(abs$1(u-pi$1)<epsilon$2){t.point(e,n=(n+o)/2>0?halfPi$1:-halfPi$1);t.point(r,n);t.lineEnd();t.lineStart();t.point(s,n);t.point(a,n);i=0}else if(r!==s&&u>=pi$1){if(abs$1(e-r)<epsilon$2)e-=r*epsilon$2;if(abs$1(a-s)<epsilon$2)a-=s*epsilon$2;n=clipAntimeridianIntersect(e,n,a,o);t.point(r,n);t.lineEnd();t.lineStart();t.point(s,n);i=0}t.point(e=a,n=o);r=s},lineEnd:function(){t.lineEnd();e=n=NaN},clean:function(){return 2-i}}}function clipAntimeridianIntersect(t,e,n,r){var i,a,o=sin$1(t-n);return abs$1(o)>epsilon$2?atan((sin$1(e)*(a=cos$1(r))*sin$1(n)-sin$1(r)*(i=cos$1(e))*sin$1(t))/(i*a*o)):(e+r)/2}function clipAntimeridianInterpolate(t,e,n,r){var i;if(t==null){i=n*halfPi$1;r.point(-pi$1,i);r.point(0,i);r.point(pi$1,i);r.point(pi$1,0);r.point(pi$1,-i);r.point(0,-i);r.point(-pi$1,-i);r.point(-pi$1,0);r.point(-pi$1,i)}else if(abs$1(t[0]-e[0])>epsilon$2){var a=t[0]<e[0]?pi$1:-pi$1;i=n*a/2;r.point(-a,i);r.point(0,i);r.point(a,i)}else{r.point(e[0],e[1])}}function clipCircle(t){var e=cos$1(t),n=6*radians,r=e>0,i=abs$1(e)>epsilon$2;function a(e,r,i,a){circleStream(a,t,n,i,e,r)}function o(t,n){return cos$1(t)*cos$1(n)>e}function s(t){var e,n,a,s,c;return{lineStart:function(){s=a=false;c=1},point:function(f,h){var d=[f,h],p,v=o(f,h),m=r?v?0:l(f,h):v?l(f+(f<0?pi$1:-pi$1),h):0;if(!e&&(s=a=v))t.lineStart();if(v!==a){p=u(e,d);if(!p||pointEqual(e,p)||pointEqual(d,p)){d[0]+=epsilon$2;d[1]+=epsilon$2;v=o(d[0],d[1])}}if(v!==a){c=0;if(v){t.lineStart();p=u(d,e);t.point(p[0],p[1])}else{p=u(e,d);t.point(p[0],p[1]);t.lineEnd()}e=p}else if(i&&e&&r^v){var g;if(!(m&n)&&(g=u(d,e,true))){c=0;if(r){t.lineStart();t.point(g[0][0],g[0][1]);t.point(g[1][0],g[1][1]);t.lineEnd()}else{t.point(g[1][0],g[1][1]);t.lineEnd();t.lineStart();t.point(g[0][0],g[0][1])}}}if(v&&(!e||!pointEqual(e,d))){t.point(d[0],d[1])}e=d,a=v,n=m},lineEnd:function(){if(a)t.lineEnd();e=null},clean:function(){return c|(s&&a)<<1}}}function u(t,n,r){var i=cartesian(t),a=cartesian(n);var o=[1,0,0],s=cartesianCross(i,a),u=cartesianDot(s,s),l=s[0],c=u-l*l;if(!c)return!r&&t;var f=e*u/c,h=-e*l/c,d=cartesianCross(o,s),p=cartesianScale(o,f),v=cartesianScale(s,h);cartesianAddInPlace(p,v);var m=d,g=cartesianDot(p,m),y=cartesianDot(m,m),b=g*g-y*(cartesianDot(p,p)-1);if(b<0)return;var _=sqrt$2(b),x=cartesianScale(m,(-g-_)/y);cartesianAddInPlace(x,p);x=spherical(x);if(!r)return x;var w=t[0],$=n[0],k=t[1],M=n[1],S;if($<w)S=w,w=$,$=S;var A=$-w,z=abs$1(A-pi$1)<epsilon$2,E=z||A<epsilon$2;if(!z&&M<k)S=k,k=M,M=S;if(E?z?k+M>0^x[1]<(abs$1(x[0]-w)<epsilon$2?k:M):k<=x[1]&&x[1]<=M:A>pi$1^(w<=x[0]&&x[0]<=$)){var T=cartesianScale(m,(-g+_)/y);cartesianAddInPlace(T,p);return[x,spherical(T)]}}function l(e,n){var i=r?t:pi$1-t,a=0;if(e<-i)a|=1;else if(e>i)a|=2;if(n<-i)a|=4;else if(n>i)a|=8;return a}return clip(o,s,a,r?[0,-t]:[-pi$1,t-pi$1])}function clipLine(t,e,n,r,i,a){var o=t[0],s=t[1],u=e[0],l=e[1],c=0,f=1,h=u-o,d=l-s,p;p=n-o;if(!h&&p>0)return;p/=h;if(h<0){if(p<c)return;if(p<f)f=p}else if(h>0){if(p>f)return;if(p>c)c=p}p=i-o;if(!h&&p<0)return;p/=h;if(h<0){if(p>f)return;if(p>c)c=p}else if(h>0){if(p<c)return;if(p<f)f=p}p=r-s;if(!d&&p>0)return;p/=d;if(d<0){if(p<c)return;if(p<f)f=p}else if(d>0){if(p>f)return;if(p>c)c=p}p=a-s;if(!d&&p<0)return;p/=d;if(d<0){if(p>f)return;if(p>c)c=p}else if(d>0){if(p<c)return;if(p<f)f=p}if(c>0)t[0]=o+c*h,t[1]=s+c*d;if(f<1)e[0]=o+f*h,e[1]=s+f*d;return true}var clipMax=1e9,clipMin=-clipMax;function clipRectangle(t,e,n,r){function i(i,a){return t<=i&&i<=n&&e<=a&&a<=r}function a(i,a,s,l){var c=0,f=0;if(i==null||(c=o(i,s))!==(f=o(a,s))||u(i,a)<0^s>0){do{l.point(c===0||c===3?t:n,c>1?r:e)}while((c=(c+s+4)%4)!==f)}else{l.point(a[0],a[1])}}function o(r,i){return abs$1(r[0]-t)<epsilon$2?i>0?0:3:abs$1(r[0]-n)<epsilon$2?i>0?2:1:abs$1(r[1]-e)<epsilon$2?i>0?1:0:i>0?3:2}function s(t,e){return u(t.x,e.x)}function u(t,e){var n=o(t,1),r=o(e,1);return n!==r?n-r:n===0?e[1]-t[1]:n===1?t[0]-e[0]:n===2?t[1]-e[1]:e[0]-t[0]}return function(o){var u=o,l=clipBuffer(),c,f,h,d,p,v,m,g,y,b,_;var x={point:w,lineStart:S,lineEnd:A,polygonStart:k,polygonEnd:M};function w(t,e){if(i(t,e))u.point(t,e)}function $(){var e=0;for(var n=0,i=f.length;n<i;++n){for(var a=f[n],o=1,s=a.length,u=a[0],l,c,h=u[0],d=u[1];o<s;++o){l=h,c=d,u=a[o],h=u[0],d=u[1];if(c<=r){if(d>r&&(h-l)*(r-c)>(d-c)*(t-l))++e}else{if(d<=r&&(h-l)*(r-c)<(d-c)*(t-l))--e}}}return e}function k(){u=l,c=[],f=[],_=true}function M(){var t=$(),e=_&&t,n=(c=merge$1(c)).length;if(e||n){o.polygonStart();if(e){o.lineStart();a(null,null,1,o);o.lineEnd()}if(n){clipRejoin(c,s,t,a,o)}o.polygonEnd()}u=o,c=f=h=null}function S(){x.point=z;if(f)f.push(h=[]);b=true;y=false;m=g=NaN}function A(){if(c){z(d,p);if(v&&y)l.rejoin();c.push(l.result())}x.point=w;if(y)u.lineEnd()}function z(a,o){var s=i(a,o);if(f)h.push([a,o]);if(b){d=a,p=o,v=s;b=false;if(s){u.lineStart();u.point(a,o)}}else{if(s&&y)u.point(a,o);else{var l=[m=Math.max(clipMin,Math.min(clipMax,m)),g=Math.max(clipMin,Math.min(clipMax,g))],c=[a=Math.max(clipMin,Math.min(clipMax,a)),o=Math.max(clipMin,Math.min(clipMax,o))];if(clipLine(l,c,t,e,n,r)){if(!y){u.lineStart();u.point(l[0],l[1])}u.point(c[0],c[1]);if(!s)u.lineEnd();_=false}else if(s){u.lineStart();u.point(a,o);_=false}}}m=a,g=o,y=s}return x}}function extent(){var t=0,e=0,n=960,r=500,i,a,o;return o={stream:function(o){return i&&a===o?i:i=clipRectangle(t,e,n,r)(a=o)},extent:function(s){return arguments.length?(t=+s[0][0],e=+s[0][1],n=+s[1][0],r=+s[1][1],i=a=null,o):[[t,e],[n,r]]}}}var lengthSum$1=adder(),lambda0,sinPhi0,cosPhi0;var lengthStream$1={sphere:noop$1,point:noop$1,lineStart:lengthLineStart,lineEnd:noop$1,polygonStart:noop$1,polygonEnd:noop$1};function lengthLineStart(){lengthStream$1.point=lengthPointFirst$1;lengthStream$1.lineEnd=lengthLineEnd}function lengthLineEnd(){lengthStream$1.point=lengthStream$1.lineEnd=noop$1}function lengthPointFirst$1(t,e){t*=radians,e*=radians;lambda0=t,sinPhi0=sin$1(e),cosPhi0=cos$1(e);lengthStream$1.point=lengthPoint$1}function lengthPoint$1(t,e){t*=radians,e*=radians;var n=sin$1(e),r=cos$1(e),i=abs$1(t-lambda0),a=cos$1(i),o=sin$1(i),s=r*o,u=cosPhi0*n-sinPhi0*r*a,l=sinPhi0*n+cosPhi0*r*a;lengthSum$1.add(atan2$1(sqrt$2(s*s+u*u),l));lambda0=t,sinPhi0=n,cosPhi0=r}function length$1(t){lengthSum$1.reset();geoStream(t,lengthStream$1);return+lengthSum$1}var coordinates=[null,null],object$1={type:"LineString",coordinates:coordinates};function distance(t,e){coordinates[0]=t;coordinates[1]=e;return length$1(object$1)}var containsObjectType={Feature:function(t,e){return containsGeometry(t.geometry,e)},FeatureCollection:function(t,e){var n=t.features,r=-1,i=n.length;while(++r<i)if(containsGeometry(n[r].geometry,e))return true;return false}};var containsGeometryType={Sphere:function(){return true},Point:function(t,e){return containsPoint(t.coordinates,e)},MultiPoint:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)if(containsPoint(n[r],e))return true;return false},LineString:function(t,e){return containsLine(t.coordinates,e)},MultiLineString:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)if(containsLine(n[r],e))return true;return false},Polygon:function(t,e){return containsPolygon(t.coordinates,e)},MultiPolygon:function(t,e){var n=t.coordinates,r=-1,i=n.length;while(++r<i)if(containsPolygon(n[r],e))return true;return false},GeometryCollection:function(t,e){var n=t.geometries,r=-1,i=n.length;while(++r<i)if(containsGeometry(n[r],e))return true;return false}};function containsGeometry(t,e){return t&&containsGeometryType.hasOwnProperty(t.type)?containsGeometryType[t.type](t,e):false}function containsPoint(t,e){return distance(t,e)===0}function containsLine(t,e){var n=distance(t[0],t[1]),r=distance(t[0],e),i=distance(e,t[1]);return r+i<=n+epsilon$2}function containsPolygon(t,e){return!!polygonContains(t.map(ringRadians),pointRadians(e))}function ringRadians(t){return t=t.map(pointRadians),t.pop(),t}function pointRadians(t){return[t[0]*radians,t[1]*radians]}function contains$1(t,e){return(t&&containsObjectType.hasOwnProperty(t.type)?containsObjectType[t.type]:containsGeometry)(t,e)}function graticuleX(t,e,n){var r=sequence(t,e-epsilon$2,n).concat(e);return function(t){return r.map((function(e){return[t,e]}))}}function graticuleY(t,e,n){var r=sequence(t,e-epsilon$2,n).concat(e);return function(t){return r.map((function(e){return[e,t]}))}}function graticule(){var t,e,n,r,i,a,o,s,u=10,l=u,c=90,f=360,h,d,p,v,m=2.5;function g(){return{type:"MultiLineString",coordinates:y()}}function y(){return sequence(ceil(r/c)*c,n,c).map(p).concat(sequence(ceil(s/f)*f,o,f).map(v)).concat(sequence(ceil(e/u)*u,t,u).filter((function(t){return abs$1(t%c)>epsilon$2})).map(h)).concat(sequence(ceil(a/l)*l,i,l).filter((function(t){return abs$1(t%f)>epsilon$2})).map(d))}g.lines=function(){return y().map((function(t){return{type:"LineString",coordinates:t}}))};g.outline=function(){return{type:"Polygon",coordinates:[p(r).concat(v(o).slice(1),p(n).reverse().slice(1),v(s).reverse().slice(1))]}};g.extent=function(t){if(!arguments.length)return g.extentMinor();return g.extentMajor(t).extentMinor(t)};g.extentMajor=function(t){if(!arguments.length)return[[r,s],[n,o]];r=+t[0][0],n=+t[1][0];s=+t[0][1],o=+t[1][1];if(r>n)t=r,r=n,n=t;if(s>o)t=s,s=o,o=t;return g.precision(m)};g.extentMinor=function(n){if(!arguments.length)return[[e,a],[t,i]];e=+n[0][0],t=+n[1][0];a=+n[0][1],i=+n[1][1];if(e>t)n=e,e=t,t=n;if(a>i)n=a,a=i,i=n;return g.precision(m)};g.step=function(t){if(!arguments.length)return g.stepMinor();return g.stepMajor(t).stepMinor(t)};g.stepMajor=function(t){if(!arguments.length)return[c,f];c=+t[0],f=+t[1];return g};g.stepMinor=function(t){if(!arguments.length)return[u,l];u=+t[0],l=+t[1];return g};g.precision=function(u){if(!arguments.length)return m;m=+u;h=graticuleX(a,i,90);d=graticuleY(e,t,m);p=graticuleX(s,o,90);v=graticuleY(r,n,m);return g};return g.extentMajor([[-180,-90+epsilon$2],[180,90-epsilon$2]]).extentMinor([[-180,-80-epsilon$2],[180,80+epsilon$2]])}function graticule10(){return graticule()()}function interpolate(t,e){var n=t[0]*radians,r=t[1]*radians,i=e[0]*radians,a=e[1]*radians,o=cos$1(r),s=sin$1(r),u=cos$1(a),l=sin$1(a),c=o*cos$1(n),f=o*sin$1(n),h=u*cos$1(i),d=u*sin$1(i),p=2*asin$1(sqrt$2(haversin(a-r)+o*u*haversin(i-n))),v=sin$1(p);var m=p?function(t){var e=sin$1(t*=p)/v,n=sin$1(p-t)/v,r=n*c+e*h,i=n*f+e*d,a=n*s+e*l;return[atan2$1(i,r)*degrees,atan2$1(a,sqrt$2(r*r+i*i))*degrees]}:function(){return[n*degrees,r*degrees]};m.distance=p;return m}function identity$5(t){return t}var areaSum=adder(),areaRingSum=adder(),x00$2,y00$2,x0$3,y0$3;var areaStream={point:noop$1,lineStart:noop$1,lineEnd:noop$1,polygonStart:function(){areaStream.lineStart=areaRingStart;areaStream.lineEnd=areaRingEnd},polygonEnd:function(){areaStream.lineStart=areaStream.lineEnd=areaStream.point=noop$1;areaSum.add(abs$1(areaRingSum));areaRingSum.reset()},result:function(){var t=areaSum/2;areaSum.reset();return t}};function areaRingStart(){areaStream.point=areaPointFirst}function areaPointFirst(t,e){areaStream.point=areaPoint;x00$2=x0$3=t,y00$2=y0$3=e}function areaPoint(t,e){areaRingSum.add(y0$3*t-x0$3*e);x0$3=t,y0$3=e}function areaRingEnd(){areaPoint(x00$2,y00$2)}var x0$2=Infinity,y0$2=x0$2,x1=-x0$2,y1=x1;var boundsStream={point:boundsPoint,lineStart:noop$1,lineEnd:noop$1,polygonStart:noop$1,polygonEnd:noop$1,result:function(){var t=[[x0$2,y0$2],[x1,y1]];x1=y1=-(y0$2=x0$2=Infinity);return t}};function boundsPoint(t,e){if(t<x0$2)x0$2=t;if(t>x1)x1=t;if(e<y0$2)y0$2=e;if(e>y1)y1=e}var X0=0,Y0=0,Z0=0,X1=0,Y1=0,Z1=0,X2=0,Y2=0,Z2=0,x00$1,y00$1,x0$1,y0$1;var centroidStream={point:centroidPoint,lineStart:centroidLineStart,lineEnd:centroidLineEnd,polygonStart:function(){centroidStream.lineStart=centroidRingStart;centroidStream.lineEnd=centroidRingEnd},polygonEnd:function(){centroidStream.point=centroidPoint;centroidStream.lineStart=centroidLineStart;centroidStream.lineEnd=centroidLineEnd},result:function(){var t=Z2?[X2/Z2,Y2/Z2]:Z1?[X1/Z1,Y1/Z1]:Z0?[X0/Z0,Y0/Z0]:[NaN,NaN];X0=Y0=Z0=X1=Y1=Z1=X2=Y2=Z2=0;return t}};function centroidPoint(t,e){X0+=t;Y0+=e;++Z0}function centroidLineStart(){centroidStream.point=centroidPointFirstLine}function centroidPointFirstLine(t,e){centroidStream.point=centroidPointLine;centroidPoint(x0$1=t,y0$1=e)}function centroidPointLine(t,e){var n=t-x0$1,r=e-y0$1,i=sqrt$2(n*n+r*r);X1+=i*(x0$1+t)/2;Y1+=i*(y0$1+e)/2;Z1+=i;centroidPoint(x0$1=t,y0$1=e)}function centroidLineEnd(){centroidStream.point=centroidPoint}function centroidRingStart(){centroidStream.point=centroidPointFirstRing}function centroidRingEnd(){centroidPointRing(x00$1,y00$1)}function centroidPointFirstRing(t,e){centroidStream.point=centroidPointRing;centroidPoint(x00$1=x0$1=t,y00$1=y0$1=e)}function centroidPointRing(t,e){var n=t-x0$1,r=e-y0$1,i=sqrt$2(n*n+r*r);X1+=i*(x0$1+t)/2;Y1+=i*(y0$1+e)/2;Z1+=i;i=y0$1*t-x0$1*e;X2+=i*(x0$1+t);Y2+=i*(y0$1+e);Z2+=i*3;centroidPoint(x0$1=t,y0$1=e)}function PathContext(t){this._context=t}PathContext.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line===0)this._context.closePath();this._point=NaN},point:function(t,e){switch(this._point){case 0:{this._context.moveTo(t,e);this._point=1;break}case 1:{this._context.lineTo(t,e);break}default:{this._context.moveTo(t+this._radius,e);this._context.arc(t,e,this._radius,0,tau$1);break}}},result:noop$1};var lengthSum=adder(),lengthRing,x00,y00,x0,y0;var lengthStream={point:noop$1,lineStart:function(){lengthStream.point=lengthPointFirst},lineEnd:function(){if(lengthRing)lengthPoint(x00,y00);lengthStream.point=noop$1},polygonStart:function(){lengthRing=true},polygonEnd:function(){lengthRing=null},result:function(){var t=+lengthSum;lengthSum.reset();return t}};function lengthPointFirst(t,e){lengthStream.point=lengthPoint;x00=x0=t,y00=y0=e}function lengthPoint(t,e){x0-=t,y0-=e;lengthSum.add(sqrt$2(x0*x0+y0*y0));x0=t,y0=e}function PathString(){this._string=[]}PathString.prototype={_radius:4.5,_circle:circle$1(4.5),pointRadius:function(t){if((t=+t)!==this._radius)this._radius=t,this._circle=null;return this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line===0)this._string.push("Z");this._point=NaN},point:function(t,e){switch(this._point){case 0:{this._string.push("M",t,",",e);this._point=1;break}case 1:{this._string.push("L",t,",",e);break}default:{if(this._circle==null)this._circle=circle$1(this._radius);this._string.push("M",t,",",e,this._circle);break}}},result:function(){if(this._string.length){var t=this._string.join("");this._string=[];return t}else{return null}}};function circle$1(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function index$2(t,e){var n=4.5,r,i;function a(t){if(t){if(typeof n==="function")i.pointRadius(+n.apply(this,arguments));geoStream(t,r(i))}return i.result()}a.area=function(t){geoStream(t,r(areaStream));return areaStream.result()};a.measure=function(t){geoStream(t,r(lengthStream));return lengthStream.result()};a.bounds=function(t){geoStream(t,r(boundsStream));return boundsStream.result()};a.centroid=function(t){geoStream(t,r(centroidStream));return centroidStream.result()};a.projection=function(e){return arguments.length?(r=e==null?(t=null,identity$5):(t=e).stream,a):t};a.context=function(t){if(!arguments.length)return e;i=t==null?(e=null,new PathString):new PathContext(e=t);if(typeof n!=="function")i.pointRadius(n);return a};a.pointRadius=function(t){if(!arguments.length)return n;n=typeof t==="function"?t:(i.pointRadius(+t),+t);return a};return a.projection(t).context(e)}function transform$2(t){return{stream:transformer(t)}}function transformer(t){return function(e){var n=new TransformStream;for(var r in t)n[r]=t[r];n.stream=e;return n}}function TransformStream(){}TransformStream.prototype={constructor:TransformStream,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function fit(t,e,n){var r=t.clipExtent&&t.clipExtent();t.scale(150).translate([0,0]);if(r!=null)t.clipExtent(null);geoStream(n,t.stream(boundsStream));e(boundsStream.result());if(r!=null)t.clipExtent(r);return t}function fitExtent(t,e,n){return fit(t,(function(n){var r=e[1][0]-e[0][0],i=e[1][1]-e[0][1],a=Math.min(r/(n[1][0]-n[0][0]),i/(n[1][1]-n[0][1])),o=+e[0][0]+(r-a*(n[1][0]+n[0][0]))/2,s=+e[0][1]+(i-a*(n[1][1]+n[0][1]))/2;t.scale(150*a).translate([o,s])}),n)}function fitSize(t,e,n){return fitExtent(t,[[0,0],e],n)}function fitWidth(t,e,n){return fit(t,(function(n){var r=+e,i=r/(n[1][0]-n[0][0]),a=(r-i*(n[1][0]+n[0][0]))/2,o=-i*n[0][1];t.scale(150*i).translate([a,o])}),n)}function fitHeight(t,e,n){return fit(t,(function(n){var r=+e,i=r/(n[1][1]-n[0][1]),a=-i*n[0][0],o=(r-i*(n[1][1]+n[0][1]))/2;t.scale(150*i).translate([a,o])}),n)}var maxDepth=16,cosMinDistance=cos$1(30*radians);function resample(t,e){return+e?resample$1(t,e):resampleNone(t)}function resampleNone(t){return transformer({point:function(e,n){e=t(e,n);this.stream.point(e[0],e[1])}})}function resample$1(t,e){function n(r,i,a,o,s,u,l,c,f,h,d,p,v,m){var g=l-r,y=c-i,b=g*g+y*y;if(b>4*e&&v--){var _=o+h,x=s+d,w=u+p,$=sqrt$2(_*_+x*x+w*w),k=asin$1(w/=$),M=abs$1(abs$1(w)-1)<epsilon$2||abs$1(a-f)<epsilon$2?(a+f)/2:atan2$1(x,_),S=t(M,k),A=S[0],z=S[1],E=A-r,T=z-i,R=y*E-g*T;if(R*R/b>e||abs$1((g*E+y*T)/b-.5)>.3||o*h+s*d+u*p<cosMinDistance){n(r,i,a,o,s,u,A,z,M,_/=$,x/=$,w,v,m);m.point(A,z);n(A,z,M,_,x,w,l,c,f,h,d,p,v,m)}}}return function(e){var r,i,a,o,s,u,l,c,f,h,d,p;var v={point:m,lineStart:g,lineEnd:b,polygonStart:function(){e.polygonStart();v.lineStart=_},polygonEnd:function(){e.polygonEnd();v.lineStart=g}};function m(n,r){n=t(n,r);e.point(n[0],n[1])}function g(){c=NaN;v.point=y;e.lineStart()}function y(r,i){var a=cartesian([r,i]),o=t(r,i);n(c,f,l,h,d,p,c=o[0],f=o[1],l=r,h=a[0],d=a[1],p=a[2],maxDepth,e);e.point(c,f)}function b(){v.point=m;e.lineEnd()}function _(){g();v.point=x;v.lineEnd=w}function x(t,e){y(r=t,e),i=c,a=f,o=h,s=d,u=p;v.point=y}function w(){n(c,f,l,h,d,p,i,a,r,o,s,u,maxDepth,e);v.lineEnd=b;b()}return v}}var transformRadians=transformer({point:function(t,e){this.stream.point(t*radians,e*radians)}});function transformRotate(t){return transformer({point:function(e,n){var r=t(e,n);return this.stream.point(r[0],r[1])}})}function projection(t){return projectionMutator((function(){return t}))()}function projectionMutator(t){var e,n=150,r=480,i=250,a,o,s=0,u=0,l=0,c=0,f=0,h,d,p=null,v=clipAntimeridian,m=null,g,y,b,_=identity$5,x=.5,w=resample(A,x),$,k;function M(t){t=d(t[0]*radians,t[1]*radians);return[t[0]*n+a,o-t[1]*n]}function S(t){t=d.invert((t[0]-a)/n,(o-t[1])/n);return t&&[t[0]*degrees,t[1]*degrees]}function A(t,r){return t=e(t,r),[t[0]*n+a,o-t[1]*n]}M.stream=function(t){return $&&k===t?$:$=transformRadians(transformRotate(h)(v(w(_(k=t)))))};M.preclip=function(t){return arguments.length?(v=t,p=undefined,E()):v};M.postclip=function(t){return arguments.length?(_=t,m=g=y=b=null,E()):_};M.clipAngle=function(t){return arguments.length?(v=+t?clipCircle(p=t*radians):(p=null,clipAntimeridian),E()):p*degrees};M.clipExtent=function(t){return arguments.length?(_=t==null?(m=g=y=b=null,identity$5):clipRectangle(m=+t[0][0],g=+t[0][1],y=+t[1][0],b=+t[1][1]),E()):m==null?null:[[m,g],[y,b]]};M.scale=function(t){return arguments.length?(n=+t,z()):n};M.translate=function(t){return arguments.length?(r=+t[0],i=+t[1],z()):[r,i]};M.center=function(t){return arguments.length?(s=t[0]%360*radians,u=t[1]%360*radians,z()):[s*degrees,u*degrees]};M.rotate=function(t){return arguments.length?(l=t[0]%360*radians,c=t[1]%360*radians,f=t.length>2?t[2]%360*radians:0,z()):[l*degrees,c*degrees,f*degrees]};M.precision=function(t){return arguments.length?(w=resample(A,x=t*t),E()):sqrt$2(x)};M.fitExtent=function(t,e){return fitExtent(M,t,e)};M.fitSize=function(t,e){return fitSize(M,t,e)};M.fitWidth=function(t,e){return fitWidth(M,t,e)};M.fitHeight=function(t,e){return fitHeight(M,t,e)};function z(){d=compose(h=rotateRadians(l,c,f),e);var t=e(s,u);a=r-t[0]*n;o=i+t[1]*n;return E()}function E(){$=k=null;return M}return function(){e=t.apply(this,arguments);M.invert=e.invert&&S;return z()}}function conicProjection(t){var e=0,n=pi$1/3,r=projectionMutator(t),i=r(e,n);i.parallels=function(t){return arguments.length?r(e=t[0]*radians,n=t[1]*radians):[e*degrees,n*degrees]};return i}function cylindricalEqualAreaRaw(t){var e=cos$1(t);function n(t,n){return[t*e,sin$1(n)/e]}n.invert=function(t,n){return[t/e,asin$1(n*e)]};return n}function conicEqualAreaRaw(t,e){var n=sin$1(t),r=(n+sin$1(e))/2;if(abs$1(r)<epsilon$2)return cylindricalEqualAreaRaw(t);var i=1+n*(2*r-n),a=sqrt$2(i)/r;function o(t,e){var n=sqrt$2(i-2*r*sin$1(e))/r;return[n*sin$1(t*=r),a-n*cos$1(t)]}o.invert=function(t,e){var n=a-e;return[atan2$1(t,abs$1(n))/r*sign$1(n),asin$1((i-(t*t+n*n)*r*r)/(2*r))]};return o}function conicEqualArea(){return conicProjection(conicEqualAreaRaw).scale(155.424).center([0,33.6442])}function albers(){return conicEqualArea().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function multiplex(t){var e=t.length;return{point:function(n,r){var i=-1;while(++i<e)t[i].point(n,r)},sphere:function(){var n=-1;while(++n<e)t[n].sphere()},lineStart:function(){var n=-1;while(++n<e)t[n].lineStart()},lineEnd:function(){var n=-1;while(++n<e)t[n].lineEnd()},polygonStart:function(){var n=-1;while(++n<e)t[n].polygonStart()},polygonEnd:function(){var n=-1;while(++n<e)t[n].polygonEnd()}}}function albersUsa(){var t,e,n=albers(),r,i=conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),a,o=conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),s,u,l={point:function(t,e){u=[t,e]}};function c(t){var e=t[0],n=t[1];return u=null,(r.point(e,n),u)||(a.point(e,n),u)||(s.point(e,n),u)}c.invert=function(t){var e=n.scale(),r=n.translate(),a=(t[0]-r[0])/e,s=(t[1]-r[1])/e;return(s>=.12&&s<.234&&a>=-.425&&a<-.214?i:s>=.166&&s<.234&&a>=-.214&&a<-.115?o:n).invert(t)};c.stream=function(r){return t&&e===r?t:t=multiplex([n.stream(e=r),i.stream(r),o.stream(r)])};c.precision=function(t){if(!arguments.length)return n.precision();n.precision(t),i.precision(t),o.precision(t);return f()};c.scale=function(t){if(!arguments.length)return n.scale();n.scale(t),i.scale(t*.35),o.scale(t);return c.translate(n.translate())};c.translate=function(t){if(!arguments.length)return n.translate();var e=n.scale(),u=+t[0],c=+t[1];r=n.translate(t).clipExtent([[u-.455*e,c-.238*e],[u+.455*e,c+.238*e]]).stream(l);a=i.translate([u-.307*e,c+.201*e]).clipExtent([[u-.425*e+epsilon$2,c+.12*e+epsilon$2],[u-.214*e-epsilon$2,c+.234*e-epsilon$2]]).stream(l);s=o.translate([u-.205*e,c+.212*e]).clipExtent([[u-.214*e+epsilon$2,c+.166*e+epsilon$2],[u-.115*e-epsilon$2,c+.234*e-epsilon$2]]).stream(l);return f()};c.fitExtent=function(t,e){return fitExtent(c,t,e)};c.fitSize=function(t,e){return fitSize(c,t,e)};c.fitWidth=function(t,e){return fitWidth(c,t,e)};c.fitHeight=function(t,e){return fitHeight(c,t,e)};function f(){t=e=null;return c}return c.scale(1070)}function azimuthalRaw(t){return function(e,n){var r=cos$1(e),i=cos$1(n),a=t(r*i);return[a*i*sin$1(e),a*sin$1(n)]}}function azimuthalInvert(t){return function(e,n){var r=sqrt$2(e*e+n*n),i=t(r),a=sin$1(i),o=cos$1(i);return[atan2$1(e*a,r*o),asin$1(r&&n*a/r)]}}var azimuthalEqualAreaRaw=azimuthalRaw((function(t){return sqrt$2(2/(1+t))}));azimuthalEqualAreaRaw.invert=azimuthalInvert((function(t){return 2*asin$1(t/2)}));function azimuthalEqualArea(){return projection(azimuthalEqualAreaRaw).scale(124.75).clipAngle(180-.001)}var azimuthalEquidistantRaw=azimuthalRaw((function(t){return(t=acos$1(t))&&t/sin$1(t)}));azimuthalEquidistantRaw.invert=azimuthalInvert((function(t){return t}));function azimuthalEquidistant(){return projection(azimuthalEquidistantRaw).scale(79.4188).clipAngle(180-.001)}function mercatorRaw(t,e){return[t,log$1(tan((halfPi$1+e)/2))]}mercatorRaw.invert=function(t,e){return[t,2*atan(exp(e))-halfPi$1]};function mercator(){return mercatorProjection(mercatorRaw).scale(961/tau$1)}function mercatorProjection(t){var e=projection(t),n=e.center,r=e.scale,i=e.translate,a=e.clipExtent,o=null,s,u,l;e.scale=function(t){return arguments.length?(r(t),c()):r()};e.translate=function(t){return arguments.length?(i(t),c()):i()};e.center=function(t){return arguments.length?(n(t),c()):n()};e.clipExtent=function(t){return arguments.length?(t==null?o=s=u=l=null:(o=+t[0][0],s=+t[0][1],u=+t[1][0],l=+t[1][1]),c()):o==null?null:[[o,s],[u,l]]};function c(){var n=pi$1*r(),i=e(rotation(e.rotate()).invert([0,0]));return a(o==null?[[i[0]-n,i[1]-n],[i[0]+n,i[1]+n]]:t===mercatorRaw?[[Math.max(i[0]-n,o),s],[Math.min(i[0]+n,u),l]]:[[o,Math.max(i[1]-n,s)],[u,Math.min(i[1]+n,l)]])}return c()}function tany(t){return tan((halfPi$1+t)/2)}function conicConformalRaw(t,e){var n=cos$1(t),r=t===e?sin$1(t):log$1(n/cos$1(e))/log$1(tany(e)/tany(t)),i=n*pow$1(tany(t),r)/r;if(!r)return mercatorRaw;function a(t,e){if(i>0){if(e<-halfPi$1+epsilon$2)e=-halfPi$1+epsilon$2}else{if(e>halfPi$1-epsilon$2)e=halfPi$1-epsilon$2}var n=i/pow$1(tany(e),r);return[n*sin$1(r*t),i-n*cos$1(r*t)]}a.invert=function(t,e){var n=i-e,a=sign$1(r)*sqrt$2(t*t+n*n);return[atan2$1(t,abs$1(n))/r*sign$1(n),2*atan(pow$1(i/a,1/r))-halfPi$1]};return a}function conicConformal(){return conicProjection(conicConformalRaw).scale(109.5).parallels([30,30])}function equirectangularRaw(t,e){return[t,e]}equirectangularRaw.invert=equirectangularRaw;function equirectangular(){return projection(equirectangularRaw).scale(152.63)}function conicEquidistantRaw(t,e){var n=cos$1(t),r=t===e?sin$1(t):(n-cos$1(e))/(e-t),i=n/r+t;if(abs$1(r)<epsilon$2)return equirectangularRaw;function a(t,e){var n=i-e,a=r*t;return[n*sin$1(a),i-n*cos$1(a)]}a.invert=function(t,e){var n=i-e;return[atan2$1(t,abs$1(n))/r*sign$1(n),i-sign$1(r)*sqrt$2(t*t+n*n)]};return a}function conicEquidistant(){return conicProjection(conicEquidistantRaw).scale(131.154).center([0,13.9389])}function gnomonicRaw(t,e){var n=cos$1(e),r=cos$1(t)*n;return[n*sin$1(t)/r,sin$1(e)/r]}gnomonicRaw.invert=azimuthalInvert(atan);function gnomonic(){return projection(gnomonicRaw).scale(144.049).clipAngle(60)}function scaleTranslate(t,e,n,r){return t===1&&e===1&&n===0&&r===0?identity$5:transformer({point:function(i,a){this.stream.point(i*t+n,a*e+r)}})}function identity$4(){var t=1,e=0,n=0,r=1,i=1,a=identity$5,o=null,s,u,l,c=identity$5,f,h,d;function p(){f=h=null;return d}return d={stream:function(t){return f&&h===t?f:f=a(c(h=t))},postclip:function(t){return arguments.length?(c=t,o=s=u=l=null,p()):c},clipExtent:function(t){return arguments.length?(c=t==null?(o=s=u=l=null,identity$5):clipRectangle(o=+t[0][0],s=+t[0][1],u=+t[1][0],l=+t[1][1]),p()):o==null?null:[[o,s],[u,l]]},scale:function(o){return arguments.length?(a=scaleTranslate((t=+o)*r,t*i,e,n),p()):t},translate:function(o){return arguments.length?(a=scaleTranslate(t*r,t*i,e=+o[0],n=+o[1]),p()):[e,n]},reflectX:function(o){return arguments.length?(a=scaleTranslate(t*(r=o?-1:1),t*i,e,n),p()):r<0},reflectY:function(o){return arguments.length?(a=scaleTranslate(t*r,t*(i=o?-1:1),e,n),p()):i<0},fitExtent:function(t,e){return fitExtent(d,t,e)},fitSize:function(t,e){return fitSize(d,t,e)},fitWidth:function(t,e){return fitWidth(d,t,e)},fitHeight:function(t,e){return fitHeight(d,t,e)}}}function naturalEarth1Raw(t,e){var n=e*e,r=n*n;return[t*(.8707-.131979*n+r*(-.013791+r*(.003971*n-.001529*r))),e*(1.007226+n*(.015085+r*(-.044475+.028874*n-.005916*r)))]}naturalEarth1Raw.invert=function(t,e){var n=e,r=25,i;do{var a=n*n,o=a*a;n-=i=(n*(1.007226+a*(.015085+o*(-.044475+.028874*a-.005916*o)))-e)/(1.007226+a*(.015085*3+o*(-.044475*7+.028874*9*a-.005916*11*o)))}while(abs$1(i)>epsilon$2&&--r>0);return[t/(.8707+(a=n*n)*(-.131979+a*(-.013791+a*a*a*(.003971-.001529*a)))),n]};function naturalEarth1(){return projection(naturalEarth1Raw).scale(175.295)}function orthographicRaw(t,e){return[cos$1(e)*sin$1(t),sin$1(e)]}orthographicRaw.invert=azimuthalInvert(asin$1);function orthographic(){return projection(orthographicRaw).scale(249.5).clipAngle(90+epsilon$2)}function stereographicRaw(t,e){var n=cos$1(e),r=1+cos$1(t)*n;return[n*sin$1(t)/r,sin$1(e)/r]}stereographicRaw.invert=azimuthalInvert((function(t){return 2*atan(t)}));function stereographic(){return projection(stereographicRaw).scale(250).clipAngle(142)}function transverseMercatorRaw(t,e){return[log$1(tan((halfPi$1+e)/2)),-t]}transverseMercatorRaw.invert=function(t,e){return[-e,2*atan(exp(t))-halfPi$1]};function transverseMercator(){var t=mercatorProjection(transverseMercatorRaw),e=t.center,n=t.rotate;t.center=function(t){return arguments.length?e([-t[1],t[0]]):(t=e(),[t[1],-t[0]])};t.rotate=function(t){return arguments.length?n([t[0],t[1],t.length>2?t[2]+90:90]):(t=n(),[t[0],t[1],t[2]-90])};return n([0,0,90]).scale(159.155)}function defaultSeparation$1(t,e){return t.parent===e.parent?1:2}function meanX(t){return t.reduce(meanXReduce,0)/t.length}function meanXReduce(t,e){return t+e.x}function maxY(t){return 1+t.reduce(maxYReduce,0)}function maxYReduce(t,e){return Math.max(t,e.y)}function leafLeft(t){var e;while(e=t.children)t=e[0];return t}function leafRight(t){var e;while(e=t.children)t=e[e.length-1];return t}function cluster(){var t=defaultSeparation$1,e=1,n=1,r=false;function i(i){var a,o=0;i.eachAfter((function(e){var n=e.children;if(n){e.x=meanX(n);e.y=maxY(n)}else{e.x=a?o+=t(e,a):0;e.y=0;a=e}}));var s=leafLeft(i),u=leafRight(i),l=s.x-t(s,u)/2,c=u.x+t(u,s)/2;return i.eachAfter(r?function(t){t.x=(t.x-i.x)*e;t.y=(i.y-t.y)*n}:function(t){t.x=(t.x-l)/(c-l)*e;t.y=(1-(i.y?t.y/i.y:1))*n})}i.separation=function(e){return arguments.length?(t=e,i):t};i.size=function(t){return arguments.length?(r=false,e=+t[0],n=+t[1],i):r?null:[e,n]};i.nodeSize=function(t){return arguments.length?(r=true,e=+t[0],n=+t[1],i):r?[e,n]:null};return i}function count(t){var e=0,n=t.children,r=n&&n.length;if(!r)e=1;else while(--r>=0)e+=n[r].value;t.value=e}function node_count(){return this.eachAfter(count)}function node_each(t){var e=this,n,r=[e],i,a,o;do{n=r.reverse(),r=[];while(e=n.pop()){t(e),i=e.children;if(i)for(a=0,o=i.length;a<o;++a){r.push(i[a])}}}while(r.length);return this}function node_eachBefore(t){var e=this,n=[e],r,i;while(e=n.pop()){t(e),r=e.children;if(r)for(i=r.length-1;i>=0;--i){n.push(r[i])}}return this}function node_eachAfter(t){var e=this,n=[e],r=[],i,a,o;while(e=n.pop()){r.push(e),i=e.children;if(i)for(a=0,o=i.length;a<o;++a){n.push(i[a])}}while(e=r.pop()){t(e)}return this}function node_sum(t){return this.eachAfter((function(e){var n=+t(e.data)||0,r=e.children,i=r&&r.length;while(--i>=0)n+=r[i].value;e.value=n}))}function node_sort(t){return this.eachBefore((function(e){if(e.children){e.children.sort(t)}}))}function node_path(t){var e=this,n=leastCommonAncestor(e,t),r=[e];while(e!==n){e=e.parent;r.push(e)}var i=r.length;while(t!==n){r.splice(i,0,t);t=t.parent}return r}function leastCommonAncestor(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;t=n.pop();e=r.pop();while(t===e){i=t;t=n.pop();e=r.pop()}return i}function node_ancestors(){var t=this,e=[t];while(t=t.parent){e.push(t)}return e}function node_descendants(){var t=[];this.each((function(e){t.push(e)}));return t}function node_leaves(){var t=[];this.eachBefore((function(e){if(!e.children){t.push(e)}}));return t}function node_links(){var t=this,e=[];t.each((function(n){if(n!==t){e.push({source:n.parent,target:n})}}));return e}function hierarchy(t,e){var n=new Node$1(t),r=+t.value&&(n.value=t.value),i,a=[n],o,s,u,l;if(e==null)e=defaultChildren;while(i=a.pop()){if(r)i.value=+i.data.value;if((s=e(i.data))&&(l=s.length)){i.children=new Array(l);for(u=l-1;u>=0;--u){a.push(o=i.children[u]=new Node$1(s[u]));o.parent=i;o.depth=i.depth+1}}}return n.eachBefore(computeHeight)}function node_copy(){return hierarchy(this).eachBefore(copyData)}function defaultChildren(t){return t.children}function copyData(t){t.data=t.data.data}function computeHeight(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function Node$1(t){this.data=t;this.depth=this.height=0;this.parent=null}Node$1.prototype=hierarchy.prototype={constructor:Node$1,count:node_count,each:node_each,eachAfter:node_eachAfter,eachBefore:node_eachBefore,sum:node_sum,sort:node_sort,path:node_path,ancestors:node_ancestors,descendants:node_descendants,leaves:node_leaves,links:node_links,copy:node_copy};var slice$3=Array.prototype.slice;function shuffle(t){var e=t.length,n,r;while(e){r=Math.random()*e--|0;n=t[e];t[e]=t[r];t[r]=n}return t}function enclose(t){var e=0,n=(t=shuffle(slice$3.call(t))).length,r=[],i,a;while(e<n){i=t[e];if(a&&enclosesWeak(a,i))++e;else a=encloseBasis(r=extendBasis(r,i)),e=0}return a}function extendBasis(t,e){var n,r;if(enclosesWeakAll(e,t))return[e];for(n=0;n<t.length;++n){if(enclosesNot(e,t[n])&&enclosesWeakAll(encloseBasis2(t[n],e),t)){return[t[n],e]}}for(n=0;n<t.length-1;++n){for(r=n+1;r<t.length;++r){if(enclosesNot(encloseBasis2(t[n],t[r]),e)&&enclosesNot(encloseBasis2(t[n],e),t[r])&&enclosesNot(encloseBasis2(t[r],e),t[n])&&enclosesWeakAll(encloseBasis3(t[n],t[r],e),t)){return[t[n],t[r],e]}}}throw new Error}function enclosesNot(t,e){var n=t.r-e.r,r=e.x-t.x,i=e.y-t.y;return n<0||n*n<r*r+i*i}function enclosesWeak(t,e){var n=t.r-e.r+1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function enclosesWeakAll(t,e){for(var n=0;n<e.length;++n){if(!enclosesWeak(t,e[n])){return false}}return true}function encloseBasis(t){switch(t.length){case 1:return encloseBasis1(t[0]);case 2:return encloseBasis2(t[0],t[1]);case 3:return encloseBasis3(t[0],t[1],t[2])}}function encloseBasis1(t){return{x:t.x,y:t.y,r:t.r}}function encloseBasis2(t,e){var n=t.x,r=t.y,i=t.r,a=e.x,o=e.y,s=e.r,u=a-n,l=o-r,c=s-i,f=Math.sqrt(u*u+l*l);return{x:(n+a+u/f*c)/2,y:(r+o+l/f*c)/2,r:(f+i+s)/2}}function encloseBasis3(t,e,n){var r=t.x,i=t.y,a=t.r,o=e.x,s=e.y,u=e.r,l=n.x,c=n.y,f=n.r,h=r-o,d=r-l,p=i-s,v=i-c,m=u-a,g=f-a,y=r*r+i*i-a*a,b=y-o*o-s*s+u*u,_=y-l*l-c*c+f*f,x=d*p-h*v,w=(p*_-v*b)/(x*2)-r,$=(v*m-p*g)/x,k=(d*b-h*_)/(x*2)-i,M=(h*g-d*m)/x,S=$*$+M*M-1,A=2*(a+w*$+k*M),z=w*w+k*k-a*a,E=-(S?(A+Math.sqrt(A*A-4*S*z))/(2*S):z/A);return{x:r+w+$*E,y:i+k+M*E,r:E}}function place(t,e,n){var r=t.x,i=t.y,a=e.r+n.r,o=t.r+n.r,s=e.x-r,u=e.y-i,l=s*s+u*u;if(l){var c=.5+((o*=o)-(a*=a))/(2*l),f=Math.sqrt(Math.max(0,2*a*(o+l)-(o-=l)*o-a*a))/(2*l);n.x=r+c*s+f*u;n.y=i+c*u-f*s}else{n.x=r+o;n.y=i}}function intersects(t,e){var n=e.x-t.x,r=e.y-t.y,i=t.r+e.r;return i*i-1e-6>n*n+r*r}function score(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,a=(e.y*n.r+n.y*e.r)/r;return i*i+a*a}function Node(t){this._=t;this.next=null;this.previous=null}function packEnclose(t){if(!(i=t.length))return 0;var e,n,r,i,a,o,s,u,l,c,f;e=t[0],e.x=0,e.y=0;if(!(i>1))return e.r;n=t[1],e.x=-n.r,n.x=e.r,n.y=0;if(!(i>2))return e.r+n.r;place(n,e,r=t[2]);e=new Node(e),n=new Node(n),r=new Node(r);e.next=r.previous=n;n.next=e.previous=r;r.next=n.previous=e;t:for(s=3;s<i;++s){place(e._,n._,r=t[s]),r=new Node(r);u=n.next,l=e.previous,c=n._.r,f=e._.r;do{if(c<=f){if(intersects(u._,r._)){n=u,e.next=n,n.previous=e,--s;continue t}c+=u._.r,u=u.next}else{if(intersects(l._,r._)){e=l,e.next=n,n.previous=e,--s;continue t}f+=l._.r,l=l.previous}}while(u!==l.next);r.previous=e,r.next=n,e.next=n.previous=n=r;a=score(e);while((r=r.next)!==n){if((o=score(r))<a){e=r,a=o}}n=e.next}e=[n._],r=n;while((r=r.next)!==n)e.push(r._);r=enclose(e);for(s=0;s<i;++s)e=t[s],e.x-=r.x,e.y-=r.y;return r.r}function siblings(t){packEnclose(t);return t}function optional(t){return t==null?null:required(t)}function required(t){if(typeof t!=="function")throw new Error;return t}function constantZero(){return 0}function constant$4(t){return function(){return t}}function defaultRadius(t){return Math.sqrt(t.value)}function index$1(){var t=null,e=1,n=1,r=constantZero;function i(i){i.x=e/2,i.y=n/2;if(t){i.eachBefore(radiusLeaf(t)).eachAfter(packChildren(r,.5)).eachBefore(translateChild(1))}else{i.eachBefore(radiusLeaf(defaultRadius)).eachAfter(packChildren(constantZero,1)).eachAfter(packChildren(r,i.r/Math.min(e,n))).eachBefore(translateChild(Math.min(e,n)/(2*i.r)))}return i}i.radius=function(e){return arguments.length?(t=optional(e),i):t};i.size=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]};i.padding=function(t){return arguments.length?(r=typeof t==="function"?t:constant$4(+t),i):r};return i}function radiusLeaf(t){return function(e){if(!e.children){e.r=Math.max(0,+t(e)||0)}}}function packChildren(t,e){return function(n){if(r=n.children){var r,i,a=r.length,o=t(n)*e||0,s;if(o)for(i=0;i<a;++i)r[i].r+=o;s=packEnclose(r);if(o)for(i=0;i<a;++i)r[i].r-=o;n.r=s+o}}}function translateChild(t){return function(e){var n=e.parent;e.r*=t;if(n){e.x=n.x+t*e.x;e.y=n.y+t*e.y}}}function roundNode(t){t.x0=Math.round(t.x0);t.y0=Math.round(t.y0);t.x1=Math.round(t.x1);t.y1=Math.round(t.y1)}function treemapDice(t,e,n,r,i){var a=t.children,o,s=-1,u=a.length,l=t.value&&(r-e)/t.value;while(++s<u){o=a[s],o.y0=n,o.y1=i;o.x0=e,o.x1=e+=o.value*l}}function partition(){var t=1,e=1,n=0,r=false;function i(i){var o=i.height+1;i.x0=i.y0=n;i.x1=t;i.y1=e/o;i.eachBefore(a(e,o));if(r)i.eachBefore(roundNode);return i}function a(t,e){return function(r){if(r.children){treemapDice(r,r.x0,t*(r.depth+1)/e,r.x1,t*(r.depth+2)/e)}var i=r.x0,a=r.y0,o=r.x1-n,s=r.y1-n;if(o<i)i=o=(i+o)/2;if(s<a)a=s=(a+s)/2;r.x0=i;r.y0=a;r.x1=o;r.y1=s}}i.round=function(t){return arguments.length?(r=!!t,i):r};i.size=function(n){return arguments.length?(t=+n[0],e=+n[1],i):[t,e]};i.padding=function(t){return arguments.length?(n=+t,i):n};return i}var keyPrefix="$",preroot={depth:-1},ambiguous={};function defaultId(t){return t.id}function defaultParentId(t){return t.parentId}function stratify(){var t=defaultId,e=defaultParentId;function n(n){var r,i,a=n.length,o,s,u,l=new Array(a),c,f,h={};for(i=0;i<a;++i){r=n[i],u=l[i]=new Node$1(r);if((c=t(r,i,n))!=null&&(c+="")){f=keyPrefix+(u.id=c);h[f]=f in h?ambiguous:u}}for(i=0;i<a;++i){u=l[i],c=e(n[i],i,n);if(c==null||!(c+="")){if(o)throw new Error("multiple roots");o=u}else{s=h[keyPrefix+c];if(!s)throw new Error("missing: "+c);if(s===ambiguous)throw new Error("ambiguous: "+c);if(s.children)s.children.push(u);else s.children=[u];u.parent=s}}if(!o)throw new Error("no root");o.parent=preroot;o.eachBefore((function(t){t.depth=t.parent.depth+1;--a})).eachBefore(computeHeight);o.parent=null;if(a>0)throw new Error("cycle");return o}n.id=function(e){return arguments.length?(t=required(e),n):t};n.parentId=function(t){return arguments.length?(e=required(t),n):e};return n}function defaultSeparation(t,e){return t.parent===e.parent?1:2}function nextLeft(t){var e=t.children;return e?e[0]:t.t}function nextRight(t){var e=t.children;return e?e[e.length-1]:t.t}function moveSubtree(t,e,n){var r=n/(e.i-t.i);e.c-=r;e.s+=n;t.c+=r;e.z+=n;e.m+=n}function executeShifts(t){var e=0,n=0,r=t.children,i=r.length,a;while(--i>=0){a=r[i];a.z+=e;a.m+=e;e+=a.s+(n+=a.c)}}function nextAncestor(t,e,n){return t.a.parent===e.parent?t.a:n}function TreeNode(t,e){this._=t;this.parent=null;this.children=null;this.A=null;this.a=this;this.z=0;this.m=0;this.c=0;this.s=0;this.t=null;this.i=e}TreeNode.prototype=Object.create(Node$1.prototype);function treeRoot(t){var e=new TreeNode(t,0),n,r=[e],i,a,o,s;while(n=r.pop()){if(a=n._.children){n.children=new Array(s=a.length);for(o=s-1;o>=0;--o){r.push(i=n.children[o]=new TreeNode(a[o],o));i.parent=n}}}(e.parent=new TreeNode(null,0)).children=[e];return e}function tree(){var t=defaultSeparation,e=1,n=1,r=null;function i(i){var s=treeRoot(i);s.eachAfter(a),s.parent.m=-s.z;s.eachBefore(o);if(r)i.eachBefore(u);else{var l=i,c=i,f=i;i.eachBefore((function(t){if(t.x<l.x)l=t;if(t.x>c.x)c=t;if(t.depth>f.depth)f=t}));var h=l===c?1:t(l,c)/2,d=h-l.x,p=e/(c.x+h+d),v=n/(f.depth||1);i.eachBefore((function(t){t.x=(t.x+d)*p;t.y=t.depth*v}))}return i}function a(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){executeShifts(e);var a=(n[0].z+n[n.length-1].z)/2;if(i){e.z=i.z+t(e._,i._);e.m=e.z-a}else{e.z=a}}else if(i){e.z=i.z+t(e._,i._)}e.parent.A=s(e,i,e.parent.A||r[0])}function o(t){t._.x=t.z+t.parent.m;t.m+=t.parent.m}function s(e,n,r){if(n){var i=e,a=e,o=n,s=i.parent.children[0],u=i.m,l=a.m,c=o.m,f=s.m,h;while(o=nextRight(o),i=nextLeft(i),o&&i){s=nextLeft(s);a=nextRight(a);a.a=e;h=o.z+c-i.z-u+t(o._,i._);if(h>0){moveSubtree(nextAncestor(o,e,r),e,h);u+=h;l+=h}c+=o.m;u+=i.m;f+=s.m;l+=a.m}if(o&&!nextRight(a)){a.t=o;a.m+=c-l}if(i&&!nextLeft(s)){s.t=i;s.m+=u-f;r=e}}return r}function u(t){t.x*=e;t.y=t.depth*n}i.separation=function(e){return arguments.length?(t=e,i):t};i.size=function(t){return arguments.length?(r=false,e=+t[0],n=+t[1],i):r?null:[e,n]};i.nodeSize=function(t){return arguments.length?(r=true,e=+t[0],n=+t[1],i):r?[e,n]:null};return i}function treemapSlice(t,e,n,r,i){var a=t.children,o,s=-1,u=a.length,l=t.value&&(i-n)/t.value;while(++s<u){o=a[s],o.x0=e,o.x1=r;o.y0=n,o.y1=n+=o.value*l}}var phi=(1+Math.sqrt(5))/2;function squarifyRatio(t,e,n,r,i,a){var o=[],s=e.children,u,l,c=0,f=0,h=s.length,d,p,v=e.value,m,g,y,b,_,x,w;while(c<h){d=i-n,p=a-r;do{m=s[f++].value}while(!m&&f<h);g=y=m;x=Math.max(p/d,d/p)/(v*t);w=m*m*x;_=Math.max(y/w,w/g);for(;f<h;++f){m+=l=s[f].value;if(l<g)g=l;if(l>y)y=l;w=m*m*x;b=Math.max(y/w,w/g);if(b>_){m-=l;break}_=b}o.push(u={value:m,dice:d<p,children:s.slice(c,f)});if(u.dice)treemapDice(u,n,r,i,v?r+=p*m/v:a);else treemapSlice(u,n,r,v?n+=d*m/v:i,a);v-=m,c=f}return o}var squarify=function t(e){function n(t,n,r,i,a){squarifyRatio(e,t,n,r,i,a)}n.ratio=function(e){return t((e=+e)>1?e:1)};return n}(phi);function index(){var t=squarify,e=false,n=1,r=1,i=[0],a=constantZero,o=constantZero,s=constantZero,u=constantZero,l=constantZero;function c(t){t.x0=t.y0=0;t.x1=n;t.y1=r;t.eachBefore(f);i=[0];if(e)t.eachBefore(roundNode);return t}function f(e){var n=i[e.depth],r=e.x0+n,c=e.y0+n,f=e.x1-n,h=e.y1-n;if(f<r)r=f=(r+f)/2;if(h<c)c=h=(c+h)/2;e.x0=r;e.y0=c;e.x1=f;e.y1=h;if(e.children){n=i[e.depth+1]=a(e)/2;r+=l(e)-n;c+=o(e)-n;f-=s(e)-n;h-=u(e)-n;if(f<r)r=f=(r+f)/2;if(h<c)c=h=(c+h)/2;t(e,r,c,f,h)}}c.round=function(t){return arguments.length?(e=!!t,c):e};c.size=function(t){return arguments.length?(n=+t[0],r=+t[1],c):[n,r]};c.tile=function(e){return arguments.length?(t=required(e),c):t};c.padding=function(t){return arguments.length?c.paddingInner(t).paddingOuter(t):c.paddingInner()};c.paddingInner=function(t){return arguments.length?(a=typeof t==="function"?t:constant$4(+t),c):a};c.paddingOuter=function(t){return arguments.length?c.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):c.paddingTop()};c.paddingTop=function(t){return arguments.length?(o=typeof t==="function"?t:constant$4(+t),c):o};c.paddingRight=function(t){return arguments.length?(s=typeof t==="function"?t:constant$4(+t),c):s};c.paddingBottom=function(t){return arguments.length?(u=typeof t==="function"?t:constant$4(+t),c):u};c.paddingLeft=function(t){return arguments.length?(l=typeof t==="function"?t:constant$4(+t),c):l};return c}function binary(t,e,n,r,i){var a=t.children,o,s=a.length,u,l=new Array(s+1);for(l[0]=u=o=0;o<s;++o){l[o+1]=u+=a[o].value}c(0,s,t.value,e,n,r,i);function c(t,e,n,r,i,o,s){if(t>=e-1){var u=a[t];u.x0=r,u.y0=i;u.x1=o,u.y1=s;return}var f=l[t],h=n/2+f,d=t+1,p=e-1;while(d<p){var v=d+p>>>1;if(l[v]<h)d=v+1;else p=v}if(h-l[d-1]<l[d]-h&&t+1<d)--d;var m=l[d]-f,g=n-m;if(o-r>s-i){var y=(r*g+o*m)/n;c(t,d,m,r,i,y,s);c(d,e,g,y,i,o,s)}else{var b=(i*g+s*m)/n;c(t,d,m,r,i,o,b);c(d,e,g,r,b,o,s)}}}function sliceDice(t,e,n,r,i){(t.depth&1?treemapSlice:treemapDice)(t,e,n,r,i)}var resquarify=function t(e){function n(t,n,r,i,a){if((o=t._squarify)&&o.ratio===e){var o,s,u,l,c=-1,f,h=o.length,d=t.value;while(++c<h){s=o[c],u=s.children;for(l=s.value=0,f=u.length;l<f;++l)s.value+=u[l].value;if(s.dice)treemapDice(s,n,r,i,r+=(a-r)*s.value/d);else treemapSlice(s,n,r,n+=(i-n)*s.value/d,a);d-=s.value}}else{t._squarify=o=squarifyRatio(e,t,n,r,i,a);o.ratio=e}}n.ratio=function(e){return t((e=+e)>1?e:1)};return n}(phi);function area$1(t){var e=-1,n=t.length,r,i=t[n-1],a=0;while(++e<n){r=i;i=t[e];a+=r[1]*i[0]-r[0]*i[1]}return a/2}function centroid(t){var e=-1,n=t.length,r=0,i=0,a,o=t[n-1],s,u=0;while(++e<n){a=o;o=t[e];u+=s=a[0]*o[1]-o[0]*a[1];r+=(a[0]+o[0])*s;i+=(a[1]+o[1])*s}return u*=3,[r/u,i/u]}function cross$1(t,e,n){return(e[0]-t[0])*(n[1]-t[1])-(e[1]-t[1])*(n[0]-t[0])}function lexicographicOrder(t,e){return t[0]-e[0]||t[1]-e[1]}function computeUpperHullIndexes(t){var e=t.length,n=[0,1],r=2;for(var i=2;i<e;++i){while(r>1&&cross$1(t[n[r-2]],t[n[r-1]],t[i])<=0)--r;n[r++]=i}return n.slice(0,r)}function hull(t){if((n=t.length)<3)return null;var e,n,r=new Array(n),i=new Array(n);for(e=0;e<n;++e)r[e]=[+t[e][0],+t[e][1],e];r.sort(lexicographicOrder);for(e=0;e<n;++e)i[e]=[r[e][0],-r[e][1]];var a=computeUpperHullIndexes(r),o=computeUpperHullIndexes(i);var s=o[0]===a[0],u=o[o.length-1]===a[a.length-1],l=[];for(e=a.length-1;e>=0;--e)l.push(t[r[a[e]][2]]);for(e=+s;e<o.length-u;++e)l.push(t[r[o[e]][2]]);return l}function contains(t,e){var n=t.length,r=t[n-1],i=e[0],a=e[1],o=r[0],s=r[1],u,l,c=false;for(var f=0;f<n;++f){r=t[f],u=r[0],l=r[1];if(l>a!==s>a&&i<(o-u)*(a-l)/(s-l)+u)c=!c;o=u,s=l}return c}function length(t){var e=-1,n=t.length,r=t[n-1],i,a,o=r[0],s=r[1],u=0;while(++e<n){i=o;a=s;r=t[e];o=r[0];s=r[1];i-=o;a-=s;u+=Math.sqrt(i*i+a*a)}return u}var slice$2=[].slice;var noabort={};function Queue(t){this._size=t;this._call=this._error=null;this._tasks=[];this._data=[];this._waiting=this._active=this._ended=this._start=0}Queue.prototype=queue.prototype={constructor:Queue,defer:function(t){if(typeof t!=="function")throw new Error("invalid callback");if(this._call)throw new Error("defer after await");if(this._error!=null)return this;var e=slice$2.call(arguments,1);e.push(t);++this._waiting,this._tasks.push(e);poke(this);return this},abort:function(){if(this._error==null)abort(this,new Error("abort"));return this},await:function(t){if(typeof t!=="function")throw new Error("invalid callback");if(this._call)throw new Error("multiple await");this._call=function(e,n){t.apply(null,[e].concat(n))};maybeNotify(this);return this},awaitAll:function(t){if(typeof t!=="function")throw new Error("invalid callback");if(this._call)throw new Error("multiple await");this._call=t;maybeNotify(this);return this}};function poke(t){if(!t._start){try{start(t)}catch(e){if(t._tasks[t._ended+t._active-1])abort(t,e);else if(!t._data)throw e}}}function start(t){while(t._start=t._waiting&&t._active<t._size){var e=t._ended+t._active,n=t._tasks[e],r=n.length-1,i=n[r];n[r]=end(t,e);--t._waiting,++t._active;n=i.apply(null,n);if(!t._tasks[e])continue;t._tasks[e]=n||noabort}}function end(t,e){return function(n,r){if(!t._tasks[e])return;--t._active,++t._ended;t._tasks[e]=null;if(t._error!=null)return;if(n!=null){abort(t,n)}else{t._data[e]=r;if(t._waiting)poke(t);else maybeNotify(t)}}}function abort(t,e){var n=t._tasks.length,r;t._error=e;t._data=undefined;t._waiting=NaN;while(--n>=0){if(r=t._tasks[n]){t._tasks[n]=null;if(r.abort){try{r.abort()}catch(e){}}}}t._active=NaN;maybeNotify(t)}function maybeNotify(t){if(!t._active&&t._call){var e=t._data;t._data=undefined;t._call(t._error,e)}}function queue(t){if(t==null)t=Infinity;else if(!((t=+t)>=1))throw new Error("invalid concurrency");return new Queue(t)}function defaultSource(){return Math.random()}var uniform=function t(e){function n(t,n){t=t==null?0:+t;n=n==null?1:+n;if(arguments.length===1)n=t,t=0;else n-=t;return function(){return e()*n+t}}n.source=t;return n}(defaultSource);var normal=function t(e){function n(t,n){var r,i;t=t==null?0:+t;n=n==null?1:+n;return function(){var a;if(r!=null)a=r,r=null;else do{r=e()*2-1;a=e()*2-1;i=r*r+a*a}while(!i||i>1);return t+n*a*Math.sqrt(-2*Math.log(i)/i)}}n.source=t;return n}(defaultSource);var logNormal=function t(e){function n(){var t=normal.source(e).apply(this,arguments);return function(){return Math.exp(t())}}n.source=t;return n}(defaultSource);var irwinHall=function t(e){function n(t){return function(){for(var n=0,r=0;r<t;++r)n+=e();return n}}n.source=t;return n}(defaultSource);var bates=function t(e){function n(t){var n=irwinHall.source(e)(t);return function(){return n()/t}}n.source=t;return n}(defaultSource);var exponential=function t(e){function n(t){return function(){return-Math.log(1-e())/t}}n.source=t;return n}(defaultSource);function request(t,e){var n,r=dispatch("beforesend","progress","load","error"),i,a=map$1(),o=new XMLHttpRequest,s=null,u=null,l,c,f=0;if(typeof XDomainRequest!=="undefined"&&!("withCredentials"in o)&&/^(http(s)?:)?\/\//.test(t))o=new XDomainRequest;"onload"in o?o.onload=o.onerror=o.ontimeout=h:o.onreadystatechange=function(t){o.readyState>3&&h(t)};function h(t){var e=o.status,i;if(!e&&hasResponse(o)||e>=200&&e<300||e===304){if(l){try{i=l.call(n,o)}catch(a){r.call("error",n,a);return}}else{i=o}r.call("load",n,i)}else{r.call("error",n,t)}}o.onprogress=function(t){r.call("progress",n,t)};n={header:function(t,e){t=(t+"").toLowerCase();if(arguments.length<2)return a.get(t);if(e==null)a.remove(t);else a.set(t,e+"");return n},mimeType:function(t){if(!arguments.length)return i;i=t==null?null:t+"";return n},responseType:function(t){if(!arguments.length)return c;c=t;return n},timeout:function(t){if(!arguments.length)return f;f=+t;return n},user:function(t){return arguments.length<1?s:(s=t==null?null:t+"",n)},password:function(t){return arguments.length<1?u:(u=t==null?null:t+"",n)},response:function(t){l=t;return n},get:function(t,e){return n.send("GET",t,e)},post:function(t,e){return n.send("POST",t,e)},send:function(e,l,h){o.open(e,t,true,s,u);if(i!=null&&!a.has("accept"))a.set("accept",i+",*/*");if(o.setRequestHeader)a.each((function(t,e){o.setRequestHeader(e,t)}));if(i!=null&&o.overrideMimeType)o.overrideMimeType(i);if(c!=null)o.responseType=c;if(f>0)o.timeout=f;if(h==null&&typeof l==="function")h=l,l=null;if(h!=null&&h.length===1)h=fixCallback(h);if(h!=null)n.on("error",h).on("load",(function(t){h(null,t)}));r.call("beforesend",n,o);o.send(l==null?null:l);return n},abort:function(){o.abort();return n},on:function(){var t=r.on.apply(r,arguments);return t===r?n:t}};if(e!=null){if(typeof e!=="function")throw new Error("invalid callback: "+e);return n.get(e)}return n}function fixCallback(t){return function(e,n){t(e==null?n:null)}}function hasResponse(t){var e=t.responseType;return e&&e!=="text"?t.response:t.responseText}function type(t,e){return function(n,r){var i=request(n).mimeType(t).response(e);if(r!=null){if(typeof r!=="function")throw new Error("invalid callback: "+r);return i.get(r)}return i}}var html=type("text/html",(function(t){return document.createRange().createContextualFragment(t.responseText)}));var json=type("application/json",(function(t){return JSON.parse(t.responseText)}));var text=type("text/plain",(function(t){return t.responseText}));var xml=type("application/xml",(function(t){var e=t.responseXML;if(!e)throw new Error("parse error");return e}));function dsv(t,e){return function(n,r,i){if(arguments.length<3)i=r,r=null;var a=request(n).mimeType(t);a.row=function(t){return arguments.length?a.response(responseOf(e,r=t)):r};a.row(r);return i?a.get(i):a}}function responseOf(t,e){return function(n){return t(n.responseText,e)}}var csv=dsv("text/csv",csvParse);var tsv=dsv("text/tab-separated-values",tsvParse);var array=Array.prototype;var map=array.map;var slice$1=array.slice;var implicit={name:"implicit"};function ordinal(t){var e=map$1(),n=[],r=implicit;t=t==null?[]:slice$1.call(t);function i(i){var a=i+"",o=e.get(a);if(!o){if(r!==implicit)return r;e.set(a,o=n.push(i))}return t[(o-1)%t.length]}i.domain=function(t){if(!arguments.length)return n.slice();n=[],e=map$1();var r=-1,a=t.length,o,s;while(++r<a)if(!e.has(s=(o=t[r])+""))e.set(s,n.push(o));return i};i.range=function(e){return arguments.length?(t=slice$1.call(e),i):t.slice()};i.unknown=function(t){return arguments.length?(r=t,i):r};i.copy=function(){return ordinal().domain(n).range(t).unknown(r)};return i}function band(){var t=ordinal().unknown(undefined),e=t.domain,n=t.range,r=[0,1],i,a,o=false,s=0,u=0,l=.5;delete t.unknown;function c(){var t=e().length,c=r[1]<r[0],f=r[c-0],h=r[1-c];i=(h-f)/Math.max(1,t-s+u*2);if(o)i=Math.floor(i);f+=(h-f-i*(t-s))*l;a=i*(1-s);if(o)f=Math.round(f),a=Math.round(a);var d=sequence(t).map((function(t){return f+i*t}));return n(c?d.reverse():d)}t.domain=function(t){return arguments.length?(e(t),c()):e()};t.range=function(t){return arguments.length?(r=[+t[0],+t[1]],c()):r.slice()};t.rangeRound=function(t){return r=[+t[0],+t[1]],o=true,c()};t.bandwidth=function(){return a};t.step=function(){return i};t.round=function(t){return arguments.length?(o=!!t,c()):o};t.padding=function(t){return arguments.length?(s=u=Math.max(0,Math.min(1,t)),c()):s};t.paddingInner=function(t){return arguments.length?(s=Math.max(0,Math.min(1,t)),c()):s};t.paddingOuter=function(t){return arguments.length?(u=Math.max(0,Math.min(1,t)),c()):u};t.align=function(t){return arguments.length?(l=Math.max(0,Math.min(1,t)),c()):l};t.copy=function(){return band().domain(e()).range(r).round(o).paddingInner(s).paddingOuter(u).align(l)};return c()}function pointish(t){var e=t.copy;t.padding=t.paddingOuter;delete t.paddingInner;delete t.paddingOuter;t.copy=function(){return pointish(e())};return t}function point$4(){return pointish(band().paddingInner(1))}function constant$3(t){return function(){return t}}function number$1(t){return+t}var unit=[0,1];function deinterpolateLinear(t,e){return(e-=t=+t)?function(n){return(n-t)/e}:constant$3(e)}function deinterpolateClamp(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=e?0:t>=n?1:r(t)}}}function reinterpolateClamp(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=0?e:t>=1?n:r(t)}}}function bimap(t,e,n,r){var i=t[0],a=t[1],o=e[0],s=e[1];if(a<i)i=n(a,i),o=r(s,o);else i=n(i,a),o=r(o,s);return function(t){return o(i(t))}}function polymap(t,e,n,r){var i=Math.min(t.length,e.length)-1,a=new Array(i),o=new Array(i),s=-1;if(t[i]<t[0]){t=t.slice().reverse();e=e.slice().reverse()}while(++s<i){a[s]=n(t[s],t[s+1]);o[s]=r(e[s],e[s+1])}return function(e){var n=bisectRight(t,e,1,i)-1;return o[n](a[n](e))}}function copy(t,e){return e.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp())}function continuous(t,e){var n=unit,r=unit,i=interpolateValue,a=false,o,s,u;function l(){o=Math.min(n.length,r.length)>2?polymap:bimap;s=u=null;return c}function c(e){return(s||(s=o(n,r,a?deinterpolateClamp(t):t,i)))(+e)}c.invert=function(t){return(u||(u=o(r,n,deinterpolateLinear,a?reinterpolateClamp(e):e)))(+t)};c.domain=function(t){return arguments.length?(n=map.call(t,number$1),l()):n.slice()};c.range=function(t){return arguments.length?(r=slice$1.call(t),l()):r.slice()};c.rangeRound=function(t){return r=slice$1.call(t),i=interpolateRound,l()};c.clamp=function(t){return arguments.length?(a=!!t,l()):a};c.interpolate=function(t){return arguments.length?(i=t,l()):i};return l()}function tickFormat(t,e,n){var r=t[0],i=t[t.length-1],a=tickStep(r,i,e==null?10:e),o;n=formatSpecifier(n==null?",f":n);switch(n.type){case"s":{var s=Math.max(Math.abs(r),Math.abs(i));if(n.precision==null&&!isNaN(o=precisionPrefix(a,s)))n.precision=o;return formatPrefix(n,s)}case"":case"e":case"g":case"p":case"r":{if(n.precision==null&&!isNaN(o=precisionRound(a,Math.max(Math.abs(r),Math.abs(i)))))n.precision=o-(n.type==="e");break}case"f":case"%":{if(n.precision==null&&!isNaN(o=precisionFixed(a)))n.precision=o-(n.type==="%")*2;break}}return format(n)}function linearish(t){var e=t.domain;t.ticks=function(t){var n=e();return ticks(n[0],n[n.length-1],t==null?10:t)};t.tickFormat=function(t,n){return tickFormat(e(),t,n)};t.nice=function(n){if(n==null)n=10;var r=e(),i=0,a=r.length-1,o=r[i],s=r[a],u;if(s<o){u=o,o=s,s=u;u=i,i=a,a=u}u=tickIncrement(o,s,n);if(u>0){o=Math.floor(o/u)*u;s=Math.ceil(s/u)*u;u=tickIncrement(o,s,n)}else if(u<0){o=Math.ceil(o*u)/u;s=Math.floor(s*u)/u;u=tickIncrement(o,s,n)}if(u>0){r[i]=Math.floor(o/u)*u;r[a]=Math.ceil(s/u)*u;e(r)}else if(u<0){r[i]=Math.ceil(o*u)/u;r[a]=Math.floor(s*u)/u;e(r)}return t};return t}function linear(){var t=continuous(deinterpolateLinear,reinterpolate$1);t.copy=function(){return copy(t,linear())};return linearish(t)}function identity$3(){var t=[0,1];function e(t){return+t}e.invert=e;e.domain=e.range=function(n){return arguments.length?(t=map.call(n,number$1),e):t.slice()};e.copy=function(){return identity$3().domain(t)};return linearish(e)}function nice(t,e){t=t.slice();var n=0,r=t.length-1,i=t[n],a=t[r],o;if(a<i){o=n,n=r,r=o;o=i,i=a,a=o}t[n]=e.floor(i);t[r]=e.ceil(a);return t}function deinterpolate(t,e){return(e=Math.log(e/t))?function(n){return Math.log(n/t)/e}:constant$3(e)}function reinterpolate(t,e){return t<0?function(n){return-Math.pow(-e,n)*Math.pow(-t,1-n)}:function(n){return Math.pow(e,n)*Math.pow(t,1-n)}}function pow10(t){return isFinite(t)?+("1e"+t):t<0?0:t}function powp(t){return t===10?pow10:t===Math.E?Math.exp:function(e){return Math.pow(t,e)}}function logp(t){return t===Math.E?Math.log:t===10&&Math.log10||t===2&&Math.log2||(t=Math.log(t),function(e){return Math.log(e)/t})}function reflect(t){return function(e){return-t(-e)}}function log(){var t=continuous(deinterpolate,reinterpolate).domain([1,10]),e=t.domain,n=10,r=logp(10),i=powp(10);function a(){r=logp(n),i=powp(n);if(e()[0]<0)r=reflect(r),i=reflect(i);return t}t.base=function(t){return arguments.length?(n=+t,a()):n};t.domain=function(t){return arguments.length?(e(t),a()):e()};t.ticks=function(t){var a=e(),o=a[0],s=a[a.length-1],u;if(u=s<o)l=o,o=s,s=l;var l=r(o),c=r(s),f,h,d,p=t==null?10:+t,v=[];if(!(n%1)&&c-l<p){l=Math.round(l)-1,c=Math.round(c)+1;if(o>0)for(;l<c;++l){for(h=1,f=i(l);h<n;++h){d=f*h;if(d<o)continue;if(d>s)break;v.push(d)}}else for(;l<c;++l){for(h=n-1,f=i(l);h>=1;--h){d=f*h;if(d<o)continue;if(d>s)break;v.push(d)}}}else{v=ticks(l,c,Math.min(c-l,p)).map(i)}return u?v.reverse():v};t.tickFormat=function(e,a){if(a==null)a=n===10?".0e":",";if(typeof a!=="function")a=format(a);if(e===Infinity)return a;if(e==null)e=10;var o=Math.max(1,n*e/t.ticks().length);return function(t){var e=t/i(Math.round(r(t)));if(e*n<n-.5)e*=n;return e<=o?a(t):""}};t.nice=function(){return e(nice(e(),{floor:function(t){return i(Math.floor(r(t)))},ceil:function(t){return i(Math.ceil(r(t)))}}))};t.copy=function(){return copy(t,log().base(n))};return t}function raise(t,e){return t<0?-Math.pow(-t,e):Math.pow(t,e)}function pow(){var t=1,e=continuous(r,i),n=e.domain;function r(e,n){return(n=raise(n,t)-(e=raise(e,t)))?function(r){return(raise(r,t)-e)/n}:constant$3(n)}function i(e,n){n=raise(n,t)-(e=raise(e,t));return function(r){return raise(e+n*r,1/t)}}e.exponent=function(e){return arguments.length?(t=+e,n(n())):t};e.copy=function(){return copy(e,pow().exponent(t))};return linearish(e)}function sqrt$1(){return pow().exponent(.5)}function quantile(){var t=[],e=[],n=[];function r(){var r=0,a=Math.max(1,e.length);n=new Array(a-1);while(++r<a)n[r-1]=threshold$1(t,r/a);return i}function i(t){if(!isNaN(t=+t))return e[bisectRight(n,t)]}i.invertExtent=function(r){var i=e.indexOf(r);return i<0?[NaN,NaN]:[i>0?n[i-1]:t[0],i<n.length?n[i]:t[t.length-1]]};i.domain=function(e){if(!arguments.length)return t.slice();t=[];for(var n=0,i=e.length,a;n<i;++n)if(a=e[n],a!=null&&!isNaN(a=+a))t.push(a);t.sort(ascending$2);return r()};i.range=function(t){return arguments.length?(e=slice$1.call(t),r()):e.slice()};i.quantiles=function(){return n.slice()};i.copy=function(){return quantile().domain(t).range(e)};return i}function quantize$1(){var t=0,e=1,n=1,r=[.5],i=[0,1];function a(t){if(t<=t)return i[bisectRight(r,t,0,n)]}function o(){var i=-1;r=new Array(n);while(++i<n)r[i]=((i+1)*e-(i-n)*t)/(n+1);return a}a.domain=function(n){return arguments.length?(t=+n[0],e=+n[1],o()):[t,e]};a.range=function(t){return arguments.length?(n=(i=slice$1.call(t)).length-1,o()):i.slice()};a.invertExtent=function(a){var o=i.indexOf(a);return o<0?[NaN,NaN]:o<1?[t,r[0]]:o>=n?[r[n-1],e]:[r[o-1],r[o]]};a.copy=function(){return quantize$1().domain([t,e]).range(i)};return linearish(a)}function threshold(){var t=[.5],e=[0,1],n=1;function r(r){if(r<=r)return e[bisectRight(t,r,0,n)]}r.domain=function(i){return arguments.length?(t=slice$1.call(i),n=Math.min(t.length,e.length-1),r):t.slice()};r.range=function(i){return arguments.length?(e=slice$1.call(i),n=Math.min(t.length,e.length-1),r):e.slice()};r.invertExtent=function(n){var r=e.indexOf(n);return[t[r-1],t[r]]};r.copy=function(){return threshold().domain(t).range(e)};return r}var t0=new Date,t1=new Date;function newInterval(t,e,n,r){function i(e){return t(e=new Date(+e)),e}i.floor=i;i.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n};i.round=function(t){var e=i(t),n=i.ceil(t);return t-e<n-t?e:n};i.offset=function(t,n){return e(t=new Date(+t),n==null?1:Math.floor(n)),t};i.range=function(n,r,a){var o=[],s;n=i.ceil(n);a=a==null?1:Math.floor(a);if(!(n<r)||!(a>0))return o;do{o.push(s=new Date(+n)),e(n,a),t(n)}while(s<n&&n<r);return o};i.filter=function(n){return newInterval((function(e){if(e>=e)while(t(e),!n(e))e.setTime(e-1)}),(function(t,r){if(t>=t){if(r<0)while(++r<=0){while(e(t,-1),!n(t)){}}else while(--r>=0){while(e(t,+1),!n(t)){}}}}))};if(n){i.count=function(e,r){t0.setTime(+e),t1.setTime(+r);t(t0),t(t1);return Math.floor(n(t0,t1))};i.every=function(t){t=Math.floor(t);return!isFinite(t)||!(t>0)?null:!(t>1)?i:i.filter(r?function(e){return r(e)%t===0}:function(e){return i.count(0,e)%t===0})}}return i}var millisecond=newInterval((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));millisecond.every=function(t){t=Math.floor(t);if(!isFinite(t)||!(t>0))return null;if(!(t>1))return millisecond;return newInterval((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,n){e.setTime(+e+n*t)}),(function(e,n){return(n-e)/t}))};var milliseconds=millisecond.range;var durationSecond$1=1e3;var durationMinute$1=6e4;var durationHour$1=36e5;var durationDay$1=864e5;var durationWeek$1=6048e5;var second=newInterval((function(t){t.setTime(Math.floor(t/durationSecond$1)*durationSecond$1)}),(function(t,e){t.setTime(+t+e*durationSecond$1)}),(function(t,e){return(e-t)/durationSecond$1}),(function(t){return t.getUTCSeconds()}));var seconds=second.range;var minute=newInterval((function(t){t.setTime(Math.floor(t/durationMinute$1)*durationMinute$1)}),(function(t,e){t.setTime(+t+e*durationMinute$1)}),(function(t,e){return(e-t)/durationMinute$1}),(function(t){return t.getMinutes()}));var minutes=minute.range;var hour=newInterval((function(t){var e=t.getTimezoneOffset()*durationMinute$1%durationHour$1;if(e<0)e+=durationHour$1;t.setTime(Math.floor((+t-e)/durationHour$1)*durationHour$1+e)}),(function(t,e){t.setTime(+t+e*durationHour$1)}),(function(t,e){return(e-t)/durationHour$1}),(function(t){return t.getHours()}));var hours=hour.range;var day=newInterval((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*durationMinute$1)/durationDay$1}),(function(t){return t.getDate()-1}));var days=day.range;function weekday(t){return newInterval((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7);e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e*7)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*durationMinute$1)/durationWeek$1}))}var sunday=weekday(0);var monday=weekday(1);var tuesday=weekday(2);var wednesday=weekday(3);var thursday=weekday(4);var friday=weekday(5);var saturday=weekday(6);var sundays=sunday.range;var mondays=monday.range;var tuesdays=tuesday.range;var wednesdays=wednesday.range;var thursdays=thursday.range;var fridays=friday.range;var saturdays=saturday.range;var month=newInterval((function(t){t.setDate(1);t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12}),(function(t){return t.getMonth()}));var months=month.range;var year=newInterval((function(t){t.setMonth(0,1);t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));year.every=function(t){return!isFinite(t=Math.floor(t))||!(t>0)?null:newInterval((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t);e.setMonth(0,1);e.setHours(0,0,0,0)}),(function(e,n){e.setFullYear(e.getFullYear()+n*t)}))};var years=year.range;var utcMinute=newInterval((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+e*durationMinute$1)}),(function(t,e){return(e-t)/durationMinute$1}),(function(t){return t.getUTCMinutes()}));var utcMinutes=utcMinute.range;var utcHour=newInterval((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+e*durationHour$1)}),(function(t,e){return(e-t)/durationHour$1}),(function(t){return t.getUTCHours()}));var utcHours=utcHour.range;var utcDay=newInterval((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/durationDay$1}),(function(t){return t.getUTCDate()-1}));var utcDays=utcDay.range;function utcWeekday(t){return newInterval((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7);e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e*7)}),(function(t,e){return(e-t)/durationWeek$1}))}var utcSunday=utcWeekday(0);var utcMonday=utcWeekday(1);var utcTuesday=utcWeekday(2);var utcWednesday=utcWeekday(3);var utcThursday=utcWeekday(4);var utcFriday=utcWeekday(5);var utcSaturday=utcWeekday(6);var utcSundays=utcSunday.range;var utcMondays=utcMonday.range;var utcTuesdays=utcTuesday.range;var utcWednesdays=utcWednesday.range;var utcThursdays=utcThursday.range;var utcFridays=utcFriday.range;var utcSaturdays=utcSaturday.range;var utcMonth=newInterval((function(t){t.setUTCDate(1);t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12}),(function(t){return t.getUTCMonth()}));var utcMonths=utcMonth.range;var utcYear=newInterval((function(t){t.setUTCMonth(0,1);t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));utcYear.every=function(t){return!isFinite(t=Math.floor(t))||!(t>0)?null:newInterval((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t);e.setUTCMonth(0,1);e.setUTCHours(0,0,0,0)}),(function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)}))};var utcYears=utcYear.range;function localDate(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);e.setFullYear(t.y);return e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function utcDate(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));e.setUTCFullYear(t.y);return e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function newYear(t){return{y:t,m:0,d:1,H:0,M:0,S:0,L:0}}function formatLocale(t){var e=t.dateTime,n=t.date,r=t.time,i=t.periods,a=t.days,o=t.shortDays,s=t.months,u=t.shortMonths;var l=formatRe(i),c=formatLookup(i),f=formatRe(a),h=formatLookup(a),d=formatRe(o),p=formatLookup(o),v=formatRe(s),m=formatLookup(s),g=formatRe(u),y=formatLookup(u);var b={a:P,A:N,b:L,B:O,c:null,d:formatDayOfMonth,e:formatDayOfMonth,f:formatMicroseconds,H:formatHour24,I:formatHour12,j:formatDayOfYear,L:formatMilliseconds,m:formatMonthNumber,M:formatMinutes,p:D,Q:formatUnixTimestamp,s:formatUnixTimestampSeconds,S:formatSeconds,u:formatWeekdayNumberMonday,U:formatWeekNumberSunday,V:formatWeekNumberISO,w:formatWeekdayNumberSunday,W:formatWeekNumberMonday,x:null,X:null,y:formatYear,Y:formatFullYear,Z:formatZone,"%":formatLiteralPercent};var _={a:I,A:F,b:B,B:H,c:null,d:formatUTCDayOfMonth,e:formatUTCDayOfMonth,f:formatUTCMicroseconds,H:formatUTCHour24,I:formatUTCHour12,j:formatUTCDayOfYear,L:formatUTCMilliseconds,m:formatUTCMonthNumber,M:formatUTCMinutes,p:j,Q:formatUnixTimestamp,s:formatUnixTimestampSeconds,S:formatUTCSeconds,u:formatUTCWeekdayNumberMonday,U:formatUTCWeekNumberSunday,V:formatUTCWeekNumberISO,w:formatUTCWeekdayNumberSunday,W:formatUTCWeekNumberMonday,x:null,X:null,y:formatUTCYear,Y:formatUTCFullYear,Z:formatUTCZone,"%":formatLiteralPercent};var x={a:S,A:A,b:z,B:E,c:T,d:parseDayOfMonth,e:parseDayOfMonth,f:parseMicroseconds,H:parseHour24,I:parseHour24,j:parseDayOfYear,L:parseMilliseconds,m:parseMonthNumber,M:parseMinutes,p:M,Q:parseUnixTimestamp,s:parseUnixTimestampSeconds,S:parseSeconds,u:parseWeekdayNumberMonday,U:parseWeekNumberSunday,V:parseWeekNumberISO,w:parseWeekdayNumberSunday,W:parseWeekNumberMonday,x:R,X:C,y:parseYear,Y:parseFullYear,Z:parseZone,"%":parseLiteralPercent};b.x=w(n,b);b.X=w(r,b);b.c=w(e,b);_.x=w(n,_);_.X=w(r,_);_.c=w(e,_);function w(t,e){return function(n){var r=[],i=-1,a=0,o=t.length,s,u,l;if(!(n instanceof Date))n=new Date(+n);while(++i<o){if(t.charCodeAt(i)===37){r.push(t.slice(a,i));if((u=pads[s=t.charAt(++i)])!=null)s=t.charAt(++i);else u=s==="e"?" ":"0";if(l=e[s])s=l(n,u);r.push(s);a=i+1}}r.push(t.slice(a,i));return r.join("")}}function $(t,e){return function(n){var r=newYear(1900),i=k(r,t,n+="",0),a,o;if(i!=n.length)return null;if("Q"in r)return new Date(r.Q);if("p"in r)r.H=r.H%12+r.p*12;if("V"in r){if(r.V<1||r.V>53)return null;if(!("w"in r))r.w=1;if("Z"in r){a=utcDate(newYear(r.y)),o=a.getUTCDay();a=o>4||o===0?utcMonday.ceil(a):utcMonday(a);a=utcDay.offset(a,(r.V-1)*7);r.y=a.getUTCFullYear();r.m=a.getUTCMonth();r.d=a.getUTCDate()+(r.w+6)%7}else{a=e(newYear(r.y)),o=a.getDay();a=o>4||o===0?monday.ceil(a):monday(a);a=day.offset(a,(r.V-1)*7);r.y=a.getFullYear();r.m=a.getMonth();r.d=a.getDate()+(r.w+6)%7}}else if("W"in r||"U"in r){if(!("w"in r))r.w="u"in r?r.u%7:"W"in r?1:0;o="Z"in r?utcDate(newYear(r.y)).getUTCDay():e(newYear(r.y)).getDay();r.m=0;r.d="W"in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7}if("Z"in r){r.H+=r.Z/100|0;r.M+=r.Z%100;return utcDate(r)}return e(r)}}function k(t,e,n,r){var i=0,a=e.length,o=n.length,s,u;while(i<a){if(r>=o)return-1;s=e.charCodeAt(i++);if(s===37){s=e.charAt(i++);u=x[s in pads?e.charAt(i++):s];if(!u||(r=u(t,n,r))<0)return-1}else if(s!=n.charCodeAt(r++)){return-1}}return r}function M(t,e,n){var r=l.exec(e.slice(n));return r?(t.p=c[r[0].toLowerCase()],n+r[0].length):-1}function S(t,e,n){var r=d.exec(e.slice(n));return r?(t.w=p[r[0].toLowerCase()],n+r[0].length):-1}function A(t,e,n){var r=f.exec(e.slice(n));return r?(t.w=h[r[0].toLowerCase()],n+r[0].length):-1}function z(t,e,n){var r=g.exec(e.slice(n));return r?(t.m=y[r[0].toLowerCase()],n+r[0].length):-1}function E(t,e,n){var r=v.exec(e.slice(n));return r?(t.m=m[r[0].toLowerCase()],n+r[0].length):-1}function T(t,n,r){return k(t,e,n,r)}function R(t,e,r){return k(t,n,e,r)}function C(t,e,n){return k(t,r,e,n)}function P(t){return o[t.getDay()]}function N(t){return a[t.getDay()]}function L(t){return u[t.getMonth()]}function O(t){return s[t.getMonth()]}function D(t){return i[+(t.getHours()>=12)]}function I(t){return o[t.getUTCDay()]}function F(t){return a[t.getUTCDay()]}function B(t){return u[t.getUTCMonth()]}function H(t){return s[t.getUTCMonth()]}function j(t){return i[+(t.getUTCHours()>=12)]}return{format:function(t){var e=w(t+="",b);e.toString=function(){return t};return e},parse:function(t){var e=$(t+="",localDate);e.toString=function(){return t};return e},utcFormat:function(t){var e=w(t+="",_);e.toString=function(){return t};return e},utcParse:function(t){var e=$(t,utcDate);e.toString=function(){return t};return e}}}var pads={"-":"",_:" ",0:"0"},numberRe=/^\s*\d+/,percentRe=/^%/,requoteRe=/[\\^$*+?|[\]().{}]/g;function pad(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",a=i.length;return r+(a<n?new Array(n-a+1).join(e)+i:i)}function requote(t){return t.replace(requoteRe,"\\$&")}function formatRe(t){return new RegExp("^(?:"+t.map(requote).join("|")+")","i")}function formatLookup(t){var e={},n=-1,r=t.length;while(++n<r)e[t[n].toLowerCase()]=n;return e}function parseWeekdayNumberSunday(t,e,n){var r=numberRe.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function parseWeekdayNumberMonday(t,e,n){var r=numberRe.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function parseWeekNumberSunday(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function parseWeekNumberISO(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function parseWeekNumberMonday(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function parseFullYear(t,e,n){var r=numberRe.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function parseYear(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function parseZone(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function parseMonthNumber(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function parseDayOfMonth(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function parseDayOfYear(t,e,n){var r=numberRe.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function parseHour24(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function parseMinutes(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function parseSeconds(t,e,n){var r=numberRe.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function parseMilliseconds(t,e,n){var r=numberRe.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function parseMicroseconds(t,e,n){var r=numberRe.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function parseLiteralPercent(t,e,n){var r=percentRe.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function parseUnixTimestamp(t,e,n){var r=numberRe.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function parseUnixTimestampSeconds(t,e,n){var r=numberRe.exec(e.slice(n));return r?(t.Q=+r[0]*1e3,n+r[0].length):-1}function formatDayOfMonth(t,e){return pad(t.getDate(),e,2)}function formatHour24(t,e){return pad(t.getHours(),e,2)}function formatHour12(t,e){return pad(t.getHours()%12||12,e,2)}function formatDayOfYear(t,e){return pad(1+day.count(year(t),t),e,3)}function formatMilliseconds(t,e){return pad(t.getMilliseconds(),e,3)}function formatMicroseconds(t,e){return formatMilliseconds(t,e)+"000"}function formatMonthNumber(t,e){return pad(t.getMonth()+1,e,2)}function formatMinutes(t,e){return pad(t.getMinutes(),e,2)}function formatSeconds(t,e){return pad(t.getSeconds(),e,2)}function formatWeekdayNumberMonday(t){var e=t.getDay();return e===0?7:e}function formatWeekNumberSunday(t,e){return pad(sunday.count(year(t),t),e,2)}function formatWeekNumberISO(t,e){var n=t.getDay();t=n>=4||n===0?thursday(t):thursday.ceil(t);return pad(thursday.count(year(t),t)+(year(t).getDay()===4),e,2)}function formatWeekdayNumberSunday(t){return t.getDay()}function formatWeekNumberMonday(t,e){return pad(monday.count(year(t),t),e,2)}function formatYear(t,e){return pad(t.getFullYear()%100,e,2)}function formatFullYear(t,e){return pad(t.getFullYear()%1e4,e,4)}function formatZone(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+pad(e/60|0,"0",2)+pad(e%60,"0",2)}function formatUTCDayOfMonth(t,e){return pad(t.getUTCDate(),e,2)}function formatUTCHour24(t,e){return pad(t.getUTCHours(),e,2)}function formatUTCHour12(t,e){return pad(t.getUTCHours()%12||12,e,2)}function formatUTCDayOfYear(t,e){return pad(1+utcDay.count(utcYear(t),t),e,3)}function formatUTCMilliseconds(t,e){return pad(t.getUTCMilliseconds(),e,3)}function formatUTCMicroseconds(t,e){return formatUTCMilliseconds(t,e)+"000"}function formatUTCMonthNumber(t,e){return pad(t.getUTCMonth()+1,e,2)}function formatUTCMinutes(t,e){return pad(t.getUTCMinutes(),e,2)}function formatUTCSeconds(t,e){return pad(t.getUTCSeconds(),e,2)}function formatUTCWeekdayNumberMonday(t){var e=t.getUTCDay();return e===0?7:e}function formatUTCWeekNumberSunday(t,e){return pad(utcSunday.count(utcYear(t),t),e,2)}function formatUTCWeekNumberISO(t,e){var n=t.getUTCDay();t=n>=4||n===0?utcThursday(t):utcThursday.ceil(t);return pad(utcThursday.count(utcYear(t),t)+(utcYear(t).getUTCDay()===4),e,2)}function formatUTCWeekdayNumberSunday(t){return t.getUTCDay()}function formatUTCWeekNumberMonday(t,e){return pad(utcMonday.count(utcYear(t),t),e,2)}function formatUTCYear(t,e){return pad(t.getUTCFullYear()%100,e,2)}function formatUTCFullYear(t,e){return pad(t.getUTCFullYear()%1e4,e,4)}function formatUTCZone(){return"+0000"}function formatLiteralPercent(){return"%"}function formatUnixTimestamp(t){return+t}function formatUnixTimestampSeconds(t){return Math.floor(+t/1e3)}var locale;var timeFormat;var timeParse;var utcFormat;var utcParse;defaultLocale({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function defaultLocale(t){locale=formatLocale(t);timeFormat=locale.format;timeParse=locale.parse;utcFormat=locale.utcFormat;utcParse=locale.utcParse;return locale}var isoSpecifier="%Y-%m-%dT%H:%M:%S.%LZ";function formatIsoNative(t){return t.toISOString()}var formatIso=Date.prototype.toISOString?formatIsoNative:utcFormat(isoSpecifier);function parseIsoNative(t){var e=new Date(t);return isNaN(e)?null:e}var parseIso=+new Date("2000-01-01T00:00:00.000Z")?parseIsoNative:utcParse(isoSpecifier);var durationSecond=1e3,durationMinute=durationSecond*60,durationHour=durationMinute*60,durationDay=durationHour*24,durationWeek=durationDay*7,durationMonth=durationDay*30,durationYear=durationDay*365;function date(t){return new Date(t)}function number(t){return t instanceof Date?+t:+new Date(+t)}function calendar(t,e,n,r,i,a,o,s,u){var l=continuous(deinterpolateLinear,reinterpolate$1),c=l.invert,f=l.domain;var h=u(".%L"),d=u(":%S"),p=u("%I:%M"),v=u("%I %p"),m=u("%a %d"),g=u("%b %d"),y=u("%B"),b=u("%Y");var _=[[o,1,durationSecond],[o,5,5*durationSecond],[o,15,15*durationSecond],[o,30,30*durationSecond],[a,1,durationMinute],[a,5,5*durationMinute],[a,15,15*durationMinute],[a,30,30*durationMinute],[i,1,durationHour],[i,3,3*durationHour],[i,6,6*durationHour],[i,12,12*durationHour],[r,1,durationDay],[r,2,2*durationDay],[n,1,durationWeek],[e,1,durationMonth],[e,3,3*durationMonth],[t,1,durationYear]];function x(s){return(o(s)<s?h:a(s)<s?d:i(s)<s?p:r(s)<s?v:e(s)<s?n(s)<s?m:g:t(s)<s?y:b)(s)}function w(e,n,r,i){if(e==null)e=10;if(typeof e==="number"){var a=Math.abs(r-n)/e,o=bisector((function(t){return t[2]})).right(_,a);if(o===_.length){i=tickStep(n/durationYear,r/durationYear,e);e=t}else if(o){o=_[a/_[o-1][2]<_[o][2]/a?o-1:o];i=o[1];e=o[0]}else{i=Math.max(tickStep(n,r,e),1);e=s}}return i==null?e:e.every(i)}l.invert=function(t){return new Date(c(t))};l.domain=function(t){return arguments.length?f(map.call(t,number)):f().map(date)};l.ticks=function(t,e){var n=f(),r=n[0],i=n[n.length-1],a=i<r,o;if(a)o=r,r=i,i=o;o=w(t,r,i,e);o=o?o.range(r,i+1):[];return a?o.reverse():o};l.tickFormat=function(t,e){return e==null?x:u(e)};l.nice=function(t,e){var n=f();return(t=w(t,n[0],n[n.length-1],e))?f(nice(n,t)):l};l.copy=function(){return copy(l,calendar(t,e,n,r,i,a,o,s,u))};return l}function time(){return calendar(year,month,sunday,day,hour,minute,second,millisecond,timeFormat).domain([new Date(2e3,0,1),new Date(2e3,0,2)])}function utcTime(){return calendar(utcYear,utcMonth,utcSunday,utcDay,utcHour,utcMinute,second,millisecond,utcFormat).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)])}function colors(t){return t.match(/.{6}/g).map((function(t){return"#"+t}))}var category10=colors("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf");var category20b=colors("393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6");var category20c=colors("3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9");var category20=colors("1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5");var cubehelix=cubehelixLong(cubehelix$3(300,.5,0),cubehelix$3(-240,.5,1));var warm=cubehelixLong(cubehelix$3(-100,.75,.35),cubehelix$3(80,1.5,.8));var cool=cubehelixLong(cubehelix$3(260,.75,.35),cubehelix$3(80,1.5,.8));var rainbow=cubehelix$3();function rainbow$1(t){if(t<0||t>1)t-=Math.floor(t);var e=Math.abs(t-.5);rainbow.h=360*t-100;rainbow.s=1.5-1.5*e;rainbow.l=.8-.9*e;return rainbow+""}function ramp(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}var viridis=ramp(colors("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"));var magma=ramp(colors("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf"));var inferno=ramp(colors("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4"));var plasma=ramp(colors("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function sequential(t){var e=0,n=1,r=false;function i(i){var a=(i-e)/(n-e);return t(r?Math.max(0,Math.min(1,a)):a)}i.domain=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]};i.clamp=function(t){return arguments.length?(r=!!t,i):r};i.interpolator=function(e){return arguments.length?(t=e,i):t};i.copy=function(){return sequential(t).domain([e,n]).clamp(r)};return linearish(i)}function constant$2(t){return function e(){return t}}var abs=Math.abs;var atan2=Math.atan2;var cos=Math.cos;var max=Math.max;var min=Math.min;var sin=Math.sin;var sqrt=Math.sqrt;var epsilon$1=1e-12;var pi=Math.PI;var halfPi=pi/2;var tau=2*pi;function acos(t){return t>1?0:t<-1?pi:Math.acos(t)}function asin(t){return t>=1?halfPi:t<=-1?-halfPi:Math.asin(t)}function arcInnerRadius(t){return t.innerRadius}function arcOuterRadius(t){return t.outerRadius}function arcStartAngle(t){return t.startAngle}function arcEndAngle(t){return t.endAngle}function arcPadAngle(t){return t&&t.padAngle}function intersect(t,e,n,r,i,a,o,s){var u=n-t,l=r-e,c=o-i,f=s-a,h=(c*(e-a)-f*(t-i))/(f*u-c*l);return[t+h*u,e+h*l]}function cornerTangents(t,e,n,r,i,a,o){var s=t-n,u=e-r,l=(o?a:-a)/sqrt(s*s+u*u),c=l*u,f=-l*s,h=t+c,d=e+f,p=n+c,v=r+f,m=(h+p)/2,g=(d+v)/2,y=p-h,b=v-d,_=y*y+b*b,x=i-a,w=h*v-p*d,$=(b<0?-1:1)*sqrt(max(0,x*x*_-w*w)),k=(w*b-y*$)/_,M=(-w*y-b*$)/_,S=(w*b+y*$)/_,A=(-w*y+b*$)/_,z=k-m,E=M-g,T=S-m,R=A-g;if(z*z+E*E>T*T+R*R)k=S,M=A;return{cx:k,cy:M,x01:-c,y01:-f,x11:k*(i/x-1),y11:M*(i/x-1)}}function arc(){var t=arcInnerRadius,e=arcOuterRadius,n=constant$2(0),r=null,i=arcStartAngle,a=arcEndAngle,o=arcPadAngle,s=null;function u(){var u,l,c=+t.apply(this,arguments),f=+e.apply(this,arguments),h=i.apply(this,arguments)-halfPi,d=a.apply(this,arguments)-halfPi,p=abs(d-h),v=d>h;if(!s)s=u=path();if(f<c)l=f,f=c,c=l;if(!(f>epsilon$1))s.moveTo(0,0);else if(p>tau-epsilon$1){s.moveTo(f*cos(h),f*sin(h));s.arc(0,0,f,h,d,!v);if(c>epsilon$1){s.moveTo(c*cos(d),c*sin(d));s.arc(0,0,c,d,h,v)}}else{var m=h,g=d,y=h,b=d,_=p,x=p,w=o.apply(this,arguments)/2,$=w>epsilon$1&&(r?+r.apply(this,arguments):sqrt(c*c+f*f)),k=min(abs(f-c)/2,+n.apply(this,arguments)),M=k,S=k,A,z;if($>epsilon$1){var E=asin($/c*sin(w)),T=asin($/f*sin(w));if((_-=E*2)>epsilon$1)E*=v?1:-1,y+=E,b-=E;else _=0,y=b=(h+d)/2;if((x-=T*2)>epsilon$1)T*=v?1:-1,m+=T,g-=T;else x=0,m=g=(h+d)/2}var R=f*cos(m),C=f*sin(m),P=c*cos(b),N=c*sin(b);if(k>epsilon$1){var L=f*cos(g),O=f*sin(g),D=c*cos(y),I=c*sin(y);if(p<pi){var F=_>epsilon$1?intersect(R,C,D,I,L,O,P,N):[P,N],B=R-F[0],H=C-F[1],j=L-F[0],q=O-F[1],U=1/sin(acos((B*j+H*q)/(sqrt(B*B+H*H)*sqrt(j*j+q*q)))/2),Y=sqrt(F[0]*F[0]+F[1]*F[1]);M=min(k,(c-Y)/(U-1));S=min(k,(f-Y)/(U+1))}}if(!(x>epsilon$1))s.moveTo(R,C);else if(S>epsilon$1){A=cornerTangents(D,I,R,C,f,S,v);z=cornerTangents(L,O,P,N,f,S,v);s.moveTo(A.cx+A.x01,A.cy+A.y01);if(S<k)s.arc(A.cx,A.cy,S,atan2(A.y01,A.x01),atan2(z.y01,z.x01),!v);else{s.arc(A.cx,A.cy,S,atan2(A.y01,A.x01),atan2(A.y11,A.x11),!v);s.arc(0,0,f,atan2(A.cy+A.y11,A.cx+A.x11),atan2(z.cy+z.y11,z.cx+z.x11),!v);s.arc(z.cx,z.cy,S,atan2(z.y11,z.x11),atan2(z.y01,z.x01),!v)}}else s.moveTo(R,C),s.arc(0,0,f,m,g,!v);if(!(c>epsilon$1)||!(_>epsilon$1))s.lineTo(P,N);else if(M>epsilon$1){A=cornerTangents(P,N,L,O,c,-M,v);z=cornerTangents(R,C,D,I,c,-M,v);s.lineTo(A.cx+A.x01,A.cy+A.y01);if(M<k)s.arc(A.cx,A.cy,M,atan2(A.y01,A.x01),atan2(z.y01,z.x01),!v);else{s.arc(A.cx,A.cy,M,atan2(A.y01,A.x01),atan2(A.y11,A.x11),!v);s.arc(0,0,c,atan2(A.cy+A.y11,A.cx+A.x11),atan2(z.cy+z.y11,z.cx+z.x11),v);s.arc(z.cx,z.cy,M,atan2(z.y11,z.x11),atan2(z.y01,z.x01),!v)}}else s.arc(0,0,c,b,y,v)}s.closePath();if(u)return s=null,u+""||null}u.centroid=function(){var n=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-pi/2;return[cos(r)*n,sin(r)*n]};u.innerRadius=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),u):t};u.outerRadius=function(t){return arguments.length?(e=typeof t==="function"?t:constant$2(+t),u):e};u.cornerRadius=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(+t),u):n};u.padRadius=function(t){return arguments.length?(r=t==null?null:typeof t==="function"?t:constant$2(+t),u):r};u.startAngle=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(+t),u):i};u.endAngle=function(t){return arguments.length?(a=typeof t==="function"?t:constant$2(+t),u):a};u.padAngle=function(t){return arguments.length?(o=typeof t==="function"?t:constant$2(+t),u):o};u.context=function(t){return arguments.length?(s=t==null?null:t,u):s};return u}function Linear(t){this._context=t}Linear.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}}};function curveLinear(t){return new Linear(t)}function x$1(t){return t[0]}function y$1(t){return t[1]}function line(){var t=x$1,e=y$1,n=constant$2(true),r=null,i=curveLinear,a=null;function o(o){var s,u=o.length,l,c=false,f;if(r==null)a=i(f=path());for(s=0;s<=u;++s){if(!(s<u&&n(l=o[s],s,o))===c){if(c=!c)a.lineStart();else a.lineEnd()}if(c)a.point(+t(l,s,o),+e(l,s,o))}if(f)return a=null,f+""||null}o.x=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),o):t};o.y=function(t){return arguments.length?(e=typeof t==="function"?t:constant$2(+t),o):e};o.defined=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(!!t),o):n};o.curve=function(t){return arguments.length?(i=t,r!=null&&(a=i(r)),o):i};o.context=function(t){return arguments.length?(t==null?r=a=null:a=i(r=t),o):r};return o}function area(){var t=x$1,e=null,n=constant$2(0),r=y$1,i=constant$2(true),a=null,o=curveLinear,s=null;function u(u){var l,c,f,h=u.length,d,p=false,v,m=new Array(h),g=new Array(h);if(a==null)s=o(v=path());for(l=0;l<=h;++l){if(!(l<h&&i(d=u[l],l,u))===p){if(p=!p){c=l;s.areaStart();s.lineStart()}else{s.lineEnd();s.lineStart();for(f=l-1;f>=c;--f){s.point(m[f],g[f])}s.lineEnd();s.areaEnd()}}if(p){m[l]=+t(d,l,u),g[l]=+n(d,l,u);s.point(e?+e(d,l,u):m[l],r?+r(d,l,u):g[l])}}if(v)return s=null,v+""||null}function l(){return line().defined(i).curve(o).context(a)}u.x=function(n){return arguments.length?(t=typeof n==="function"?n:constant$2(+n),e=null,u):t};u.x0=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),u):t};u.x1=function(t){return arguments.length?(e=t==null?null:typeof t==="function"?t:constant$2(+t),u):e};u.y=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(+t),r=null,u):n};u.y0=function(t){return arguments.length?(n=typeof t==="function"?t:constant$2(+t),u):n};u.y1=function(t){return arguments.length?(r=t==null?null:typeof t==="function"?t:constant$2(+t),u):r};u.lineX0=u.lineY0=function(){return l().x(t).y(n)};u.lineY1=function(){return l().x(t).y(r)};u.lineX1=function(){return l().x(e).y(n)};u.defined=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(!!t),u):i};u.curve=function(t){return arguments.length?(o=t,a!=null&&(s=o(a)),u):o};u.context=function(t){return arguments.length?(t==null?a=s=null:s=o(a=t),u):a};return u}function descending$1(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}function identity$2(t){return t}function pie(){var t=identity$2,e=descending$1,n=null,r=constant$2(0),i=constant$2(tau),a=constant$2(0);function o(o){var s,u=o.length,l,c,f=0,h=new Array(u),d=new Array(u),p=+r.apply(this,arguments),v=Math.min(tau,Math.max(-tau,i.apply(this,arguments)-p)),m,g=Math.min(Math.abs(v)/u,a.apply(this,arguments)),y=g*(v<0?-1:1),b;for(s=0;s<u;++s){if((b=d[h[s]=s]=+t(o[s],s,o))>0){f+=b}}if(e!=null)h.sort((function(t,n){return e(d[t],d[n])}));else if(n!=null)h.sort((function(t,e){return n(o[t],o[e])}));for(s=0,c=f?(v-u*y)/f:0;s<u;++s,p=m){l=h[s],b=d[l],m=p+(b>0?b*c:0)+y,d[l]={data:o[l],index:s,value:b,startAngle:p,endAngle:m,padAngle:g}}return d}o.value=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(+e),o):t};o.sortValues=function(t){return arguments.length?(e=t,n=null,o):e};o.sort=function(t){return arguments.length?(n=t,e=null,o):n};o.startAngle=function(t){return arguments.length?(r=typeof t==="function"?t:constant$2(+t),o):r};o.endAngle=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(+t),o):i};o.padAngle=function(t){return arguments.length?(a=typeof t==="function"?t:constant$2(+t),o):a};return o}var curveRadialLinear=curveRadial$1(curveLinear);function Radial(t){this._curve=t}Radial.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};function curveRadial$1(t){function e(e){return new Radial(t(e))}e._curve=t;return e}function lineRadial(t){var e=t.curve;t.angle=t.x,delete t.x;t.radius=t.y,delete t.y;t.curve=function(t){return arguments.length?e(curveRadial$1(t)):e()._curve};return t}function lineRadial$1(){return lineRadial(line().curve(curveRadialLinear))}function areaRadial(){var t=area().curve(curveRadialLinear),e=t.curve,n=t.lineX0,r=t.lineX1,i=t.lineY0,a=t.lineY1;t.angle=t.x,delete t.x;t.startAngle=t.x0,delete t.x0;t.endAngle=t.x1,delete t.x1;t.radius=t.y,delete t.y;t.innerRadius=t.y0,delete t.y0;t.outerRadius=t.y1,delete t.y1;t.lineStartAngle=function(){return lineRadial(n())},delete t.lineX0;t.lineEndAngle=function(){return lineRadial(r())},delete t.lineX1;t.lineInnerRadius=function(){return lineRadial(i())},delete t.lineY0;t.lineOuterRadius=function(){return lineRadial(a())},delete t.lineY1;t.curve=function(t){return arguments.length?e(curveRadial$1(t)):e()._curve};return t}function pointRadial(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}var slice=Array.prototype.slice;function linkSource(t){return t.source}function linkTarget(t){return t.target}function link(t){var e=linkSource,n=linkTarget,r=x$1,i=y$1,a=null;function o(){var o,s=slice.call(arguments),u=e.apply(this,s),l=n.apply(this,s);if(!a)a=o=path();t(a,+r.apply(this,(s[0]=u,s)),+i.apply(this,s),+r.apply(this,(s[0]=l,s)),+i.apply(this,s));if(o)return a=null,o+""||null}o.source=function(t){return arguments.length?(e=t,o):e};o.target=function(t){return arguments.length?(n=t,o):n};o.x=function(t){return arguments.length?(r=typeof t==="function"?t:constant$2(+t),o):r};o.y=function(t){return arguments.length?(i=typeof t==="function"?t:constant$2(+t),o):i};o.context=function(t){return arguments.length?(a=t==null?null:t,o):a};return o}function curveHorizontal(t,e,n,r,i){t.moveTo(e,n);t.bezierCurveTo(e=(e+r)/2,n,e,i,r,i)}function curveVertical(t,e,n,r,i){t.moveTo(e,n);t.bezierCurveTo(e,n=(n+i)/2,r,n,r,i)}function curveRadial(t,e,n,r,i){var a=pointRadial(e,n),o=pointRadial(e,n=(n+i)/2),s=pointRadial(r,n),u=pointRadial(r,i);t.moveTo(a[0],a[1]);t.bezierCurveTo(o[0],o[1],s[0],s[1],u[0],u[1])}function linkHorizontal(){return link(curveHorizontal)}function linkVertical(){return link(curveVertical)}function linkRadial(){var t=link(curveRadial);t.angle=t.x,delete t.x;t.radius=t.y,delete t.y;return t}var circle={draw:function(t,e){var n=Math.sqrt(e/pi);t.moveTo(n,0);t.arc(0,0,n,0,tau)}};var cross={draw:function(t,e){var n=Math.sqrt(e/5)/2;t.moveTo(-3*n,-n);t.lineTo(-n,-n);t.lineTo(-n,-3*n);t.lineTo(n,-3*n);t.lineTo(n,-n);t.lineTo(3*n,-n);t.lineTo(3*n,n);t.lineTo(n,n);t.lineTo(n,3*n);t.lineTo(-n,3*n);t.lineTo(-n,n);t.lineTo(-3*n,n);t.closePath()}};var tan30=Math.sqrt(1/3),tan30_2=tan30*2;var diamond={draw:function(t,e){var n=Math.sqrt(e/tan30_2),r=n*tan30;t.moveTo(0,-n);t.lineTo(r,0);t.lineTo(0,n);t.lineTo(-r,0);t.closePath()}};var ka=.8908130915292852,kr=Math.sin(pi/10)/Math.sin(7*pi/10),kx=Math.sin(tau/10)*kr,ky=-Math.cos(tau/10)*kr;var star={draw:function(t,e){var n=Math.sqrt(e*ka),r=kx*n,i=ky*n;t.moveTo(0,-n);t.lineTo(r,i);for(var a=1;a<5;++a){var o=tau*a/5,s=Math.cos(o),u=Math.sin(o);t.lineTo(u*n,-s*n);t.lineTo(s*r-u*i,u*r+s*i)}t.closePath()}};var square={draw:function(t,e){var n=Math.sqrt(e),r=-n/2;t.rect(r,r,n,n)}};var sqrt3=Math.sqrt(3);var triangle={draw:function(t,e){var n=-Math.sqrt(e/(sqrt3*3));t.moveTo(0,n*2);t.lineTo(-sqrt3*n,-n);t.lineTo(sqrt3*n,-n);t.closePath()}};var c=-.5,s=Math.sqrt(3)/2,k=1/Math.sqrt(12),a=(k/2+1)*3;var wye={draw:function(t,e){var n=Math.sqrt(e/a),r=n/2,i=n*k,o=r,u=n*k+n,l=-o,f=u;t.moveTo(r,i);t.lineTo(o,u);t.lineTo(l,f);t.lineTo(c*r-s*i,s*r+c*i);t.lineTo(c*o-s*u,s*o+c*u);t.lineTo(c*l-s*f,s*l+c*f);t.lineTo(c*r+s*i,c*i-s*r);t.lineTo(c*o+s*u,c*u-s*o);t.lineTo(c*l+s*f,c*f-s*l);t.closePath()}};var symbols=[circle,cross,diamond,square,star,triangle,wye];function symbol(){var t=constant$2(circle),e=constant$2(64),n=null;function r(){var r;if(!n)n=r=path();t.apply(this,arguments).draw(n,+e.apply(this,arguments));if(r)return n=null,r+""||null}r.type=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(e),r):t};r.size=function(t){return arguments.length?(e=typeof t==="function"?t:constant$2(+t),r):e};r.context=function(t){return arguments.length?(n=t==null?null:t,r):n};return r}function noop(){}function point$3(t,e,n){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+n)/6)}function Basis(t){this._context=t}Basis.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN;this._point=0},lineEnd:function(){switch(this._point){case 3:point$3(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:point$3(this,t,e);break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e}};function basis(t){return new Basis(t)}function BasisClosed(t){this._context=t}BasisClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN;this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2);this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3);this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3);this._context.closePath();break}case 3:{this.point(this._x2,this._y2);this.point(this._x3,this._y3);this.point(this._x4,this._y4);break}}},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._x2=t,this._y2=e;break;case 1:this._point=2;this._x3=t,this._y3=e;break;case 2:this._point=3;this._x4=t,this._y4=e;this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:point$3(this,t,e);break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e}};function basisClosed(t){return new BasisClosed(t)}function BasisOpen(t){this._context=t}BasisOpen.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN;this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:point$3(this,t,e);break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e}};function basisOpen(t){return new BasisOpen(t)}function Bundle(t,e){this._basis=new Basis(t);this._beta=e}Bundle.prototype={lineStart:function(){this._x=[];this._y=[];this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,n=t.length-1;if(n>0){var r=t[0],i=e[0],a=t[n]-r,o=e[n]-i,s=-1,u;while(++s<=n){u=s/n;this._basis.point(this._beta*t[s]+(1-this._beta)*(r+u*a),this._beta*e[s]+(1-this._beta)*(i+u*o))}}this._x=this._y=null;this._basis.lineEnd()},point:function(t,e){this._x.push(+t);this._y.push(+e)}};var bundle=function t(e){function n(t){return e===1?new Basis(t):new Bundle(t,e)}n.beta=function(e){return t(+e)};return n}(.85);function point$2(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function Cardinal(t,e){this._context=t;this._k=(1-e)/6}Cardinal.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:point$2(this,this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;this._x1=t,this._y1=e;break;case 2:this._point=3;default:point$2(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var cardinal=function t(e){function n(t){return new Cardinal(t,e)}n.tension=function(e){return t(+e)};return n}(0);function CardinalClosed(t,e){this._context=t;this._k=(1-e)/6}CardinalClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN;this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3);this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3);this._context.closePath();break}case 3:{this.point(this._x3,this._y3);this.point(this._x4,this._y4);this.point(this._x5,this._y5);break}}},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._x3=t,this._y3=e;break;case 1:this._point=2;this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3;this._x5=t,this._y5=e;break;default:point$2(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var cardinalClosed=function t(e){function n(t){return new CardinalClosed(t,e)}n.tension=function(e){return t(+e)};return n}(0);function CardinalOpen(t,e){this._context=t;this._k=(1-e)/6}CardinalOpen.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:point$2(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var cardinalOpen=function t(e){function n(t){return new CardinalOpen(t,e)}n.tension=function(e){return t(+e)};return n}(0);function point$1(t,e,n){var r=t._x1,i=t._y1,a=t._x2,o=t._y2;if(t._l01_a>epsilon$1){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,u=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/u;i=(i*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/u}if(t._l23_a>epsilon$1){var l=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,c=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*l+t._x1*t._l23_2a-e*t._l12_2a)/c;o=(o*l+t._y1*t._l23_2a-n*t._l12_2a)/c}t._context.bezierCurveTo(r,i,a,o,t._x2,t._y2)}function CatmullRom(t,e){this._context=t;this._alpha=e}CatmullRom.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;if(this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:point$1(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a;this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a;this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var catmullRom=function t(e){function n(t){return e?new CatmullRom(t,e):new Cardinal(t,0)}n.alpha=function(e){return t(+e)};return n}(.5);function CatmullRomClosed(t,e){this._context=t;this._alpha=e}CatmullRomClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN;this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3);this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3);this._context.closePath();break}case 3:{this.point(this._x3,this._y3);this.point(this._x4,this._y4);this.point(this._x5,this._y5);break}}},point:function(t,e){t=+t,e=+e;if(this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;this._x3=t,this._y3=e;break;case 1:this._point=2;this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3;this._x5=t,this._y5=e;break;default:point$1(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a;this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a;this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var catmullRomClosed=function t(e){function n(t){return e?new CatmullRomClosed(t,e):new CardinalClosed(t,0)}n.alpha=function(e){return t(+e)};return n}(.5);function CatmullRomOpen(t,e){this._context=t;this._alpha=e}CatmullRomOpen.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN;this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(t,e){t=+t,e=+e;if(this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:point$1(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a;this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a;this._x0=this._x1,this._x1=this._x2,this._x2=t;this._y0=this._y1,this._y1=this._y2,this._y2=e}};var catmullRomOpen=function t(e){function n(t){return e?new CatmullRomOpen(t,e):new CardinalOpen(t,0)}n.alpha=function(e){return t(+e)};return n}(.5);function LinearClosed(t){this._context=t}LinearClosed.prototype={areaStart:noop,areaEnd:noop,lineStart:function(){this._point=0},lineEnd:function(){if(this._point)this._context.closePath()},point:function(t,e){t=+t,e=+e;if(this._point)this._context.lineTo(t,e);else this._point=1,this._context.moveTo(t,e)}};function linearClosed(t){return new LinearClosed(t)}function sign(t){return t<0?-1:1}function slope3(t,e,n){var r=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(r||i<0&&-0),o=(n-t._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(sign(a)+sign(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function slope2(t,e){var n=t._x1-t._x0;return n?(3*(t._y1-t._y0)/n-e)/2:e}function point(t,e,n){var r=t._x0,i=t._y0,a=t._x1,o=t._y1,s=(a-r)/3;t._context.bezierCurveTo(r+s,i+s*e,a-s,o-s*n,a,o)}function MonotoneX(t){this._context=t}MonotoneX.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN;this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:point(this,this._t0,slope2(this,this._t0));break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(t,e){var n=NaN;t=+t,e=+e;if(t===this._x1&&e===this._y1)return;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;point(this,slope2(this,n=slope3(this,t,e)),n);break;default:point(this,this._t0,n=slope3(this,t,e));break}this._x0=this._x1,this._x1=t;this._y0=this._y1,this._y1=e;this._t0=n}};function MonotoneY(t){this._context=new ReflectContext(t)}(MonotoneY.prototype=Object.create(MonotoneX.prototype)).point=function(t,e){MonotoneX.prototype.point.call(this,e,t)};function ReflectContext(t){this._context=t}ReflectContext.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,n,r,i,a){this._context.bezierCurveTo(e,t,r,n,a,i)}};function monotoneX(t){return new MonotoneX(t)}function monotoneY(t){return new MonotoneY(t)}function Natural(t){this._context=t}Natural.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[];this._y=[]},lineEnd:function(){var t=this._x,e=this._y,n=t.length;if(n){this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]);if(n===2){this._context.lineTo(t[1],e[1])}else{var r=controlPoints(t),i=controlPoints(e);for(var a=0,o=1;o<n;++a,++o){this._context.bezierCurveTo(r[0][a],i[0][a],r[1][a],i[1][a],t[o],e[o])}}}if(this._line||this._line!==0&&n===1)this._context.closePath();this._line=1-this._line;this._x=this._y=null},point:function(t,e){this._x.push(+t);this._y.push(+e)}};function controlPoints(t){var e,n=t.length-1,r,i=new Array(n),a=new Array(n),o=new Array(n);i[0]=0,a[0]=2,o[0]=t[0]+2*t[1];for(e=1;e<n-1;++e)i[e]=1,a[e]=4,o[e]=4*t[e]+2*t[e+1];i[n-1]=2,a[n-1]=7,o[n-1]=8*t[n-1]+t[n];for(e=1;e<n;++e)r=i[e]/a[e-1],a[e]-=r,o[e]-=r*o[e-1];i[n-1]=o[n-1]/a[n-1];for(e=n-2;e>=0;--e)i[e]=(o[e]-i[e+1])/a[e];a[n-1]=(t[n]+i[n-1])/2;for(e=0;e<n-1;++e)a[e]=2*t[e+1]-i[e+1];return[i,a]}function natural(t){return new Natural(t)}function Step(t,e){this._context=t;this._t=e}Step.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN;this._point=0},lineEnd:function(){if(0<this._t&&this._t<1&&this._point===2)this._context.lineTo(this._x,this._y);if(this._line||this._line!==0&&this._point===1)this._context.closePath();if(this._line>=0)this._t=1-this._t,this._line=1-this._line},point:function(t,e){t=+t,e=+e;switch(this._point){case 0:this._point=1;this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0){this._context.lineTo(this._x,e);this._context.lineTo(t,e)}else{var n=this._x*(1-this._t)+t*this._t;this._context.lineTo(n,this._y);this._context.lineTo(n,e)}break}}this._x=t,this._y=e}};function step(t){return new Step(t,.5)}function stepBefore(t){return new Step(t,0)}function stepAfter(t){return new Step(t,1)}function none$1(t,e){if(!((o=t.length)>1))return;for(var n=1,r,i,a=t[e[0]],o,s=a.length;n<o;++n){i=a,a=t[e[n]];for(r=0;r<s;++r){a[r][1]+=a[r][0]=isNaN(i[r][1])?i[r][0]:i[r][1]}}}function none(t){var e=t.length,n=new Array(e);while(--e>=0)n[e]=e;return n}function stackValue(t,e){return t[e]}function stack(){var t=constant$2([]),e=none,n=none$1,r=stackValue;function i(i){var a=t.apply(this,arguments),o,s=i.length,u=a.length,l=new Array(u),c;for(o=0;o<u;++o){for(var f=a[o],h=l[o]=new Array(s),d=0,p;d<s;++d){h[d]=p=[0,+r(i[d],f,d,i)];p.data=i[d]}h.key=f}for(o=0,c=e(l);o<u;++o){l[c[o]].index=o}n(l,c);return l}i.keys=function(e){return arguments.length?(t=typeof e==="function"?e:constant$2(slice.call(e)),i):t};i.value=function(t){return arguments.length?(r=typeof t==="function"?t:constant$2(+t),i):r};i.order=function(t){return arguments.length?(e=t==null?none:typeof t==="function"?t:constant$2(slice.call(t)),i):e};i.offset=function(t){return arguments.length?(n=t==null?none$1:t,i):n};return i}function expand(t,e){if(!((r=t.length)>0))return;for(var n,r,i=0,a=t[0].length,o;i<a;++i){for(o=n=0;n<r;++n)o+=t[n][i][1]||0;if(o)for(n=0;n<r;++n)t[n][i][1]/=o}none$1(t,e)}function diverging(t,e){if(!((u=t.length)>1))return;for(var n,r=0,i,a,o,s,u,l=t[e[0]].length;r<l;++r){for(o=s=0,n=0;n<u;++n){if((a=(i=t[e[n]][r])[1]-i[0])>=0){i[0]=o,i[1]=o+=a}else if(a<0){i[1]=s,i[0]=s+=a}else{i[0]=o}}}}function silhouette(t,e){if(!((i=t.length)>0))return;for(var n=0,r=t[e[0]],i,a=r.length;n<a;++n){for(var o=0,s=0;o<i;++o)s+=t[o][n][1]||0;r[n][1]+=r[n][0]=-s/2}none$1(t,e)}function wiggle(t,e){if(!((o=t.length)>0)||!((a=(i=t[e[0]]).length)>0))return;for(var n=0,r=1,i,a,o;r<a;++r){for(var s=0,u=0,l=0;s<o;++s){var c=t[e[s]],f=c[r][1]||0,h=c[r-1][1]||0,d=(f-h)/2;for(var p=0;p<s;++p){var v=t[e[p]],m=v[r][1]||0,g=v[r-1][1]||0;d+=m-g}u+=f,l+=d*f}i[r-1][1]+=i[r-1][0]=n;if(u)n-=l/u}i[r-1][1]+=i[r-1][0]=n;none$1(t,e)}function ascending(t){var e=t.map(sum);return none(t).sort((function(t,n){return e[t]-e[n]}))}function sum(t){var e=0,n=-1,r=t.length,i;while(++n<r)if(i=+t[n][1])e+=i;return e}function descending(t){return ascending(t).reverse()}function insideOut(t){var e=t.length,n,r,i=t.map(sum),a=none(t).sort((function(t,e){return i[e]-i[t]})),o=0,s=0,u=[],l=[];for(n=0;n<e;++n){r=a[n];if(o<s){o+=i[r];u.push(r)}else{s+=i[r];l.push(r)}}return l.reverse().concat(u)}function reverse$1(t){return none(t).reverse()}function constant$1(t){return function(){return t}}function x(t){return t[0]}function y(t){return t[1]}function RedBlackTree(){this._=null}function RedBlackNode(t){t.U=t.C=t.L=t.R=t.P=t.N=null}RedBlackTree.prototype={constructor:RedBlackTree,insert:function(t,e){var n,r,i;if(t){e.P=t;e.N=t.N;if(t.N)t.N.P=e;t.N=e;if(t.R){t=t.R;while(t.L)t=t.L;t.L=e}else{t.R=e}n=t}else if(this._){t=RedBlackFirst(this._);e.P=null;e.N=t;t.P=t.L=e;n=t}else{e.P=e.N=null;this._=e;n=null}e.L=e.R=null;e.U=n;e.C=true;t=e;while(n&&n.C){r=n.U;if(n===r.L){i=r.R;if(i&&i.C){n.C=i.C=false;r.C=true;t=r}else{if(t===n.R){RedBlackRotateLeft(this,n);t=n;n=t.U}n.C=false;r.C=true;RedBlackRotateRight(this,r)}}else{i=r.L;if(i&&i.C){n.C=i.C=false;r.C=true;t=r}else{if(t===n.L){RedBlackRotateRight(this,n);t=n;n=t.U}n.C=false;r.C=true;RedBlackRotateLeft(this,r)}}n=t.U}this._.C=false},remove:function(t){if(t.N)t.N.P=t.P;if(t.P)t.P.N=t.N;t.N=t.P=null;var e=t.U,n,r=t.L,i=t.R,a,o;if(!r)a=i;else if(!i)a=r;else a=RedBlackFirst(i);if(e){if(e.L===t)e.L=a;else e.R=a}else{this._=a}if(r&&i){o=a.C;a.C=t.C;a.L=r;r.U=a;if(a!==i){e=a.U;a.U=t.U;t=a.R;e.L=t;a.R=i;i.U=a}else{a.U=e;e=a;t=a.R}}else{o=t.C;t=a}if(t)t.U=e;if(o)return;if(t&&t.C){t.C=false;return}do{if(t===this._)break;if(t===e.L){n=e.R;if(n.C){n.C=false;e.C=true;RedBlackRotateLeft(this,e);n=e.R}if(n.L&&n.L.C||n.R&&n.R.C){if(!n.R||!n.R.C){n.L.C=false;n.C=true;RedBlackRotateRight(this,n);n=e.R}n.C=e.C;e.C=n.R.C=false;RedBlackRotateLeft(this,e);t=this._;break}}else{n=e.L;if(n.C){n.C=false;e.C=true;RedBlackRotateRight(this,e);n=e.L}if(n.L&&n.L.C||n.R&&n.R.C){if(!n.L||!n.L.C){n.R.C=false;n.C=true;RedBlackRotateLeft(this,n);n=e.L}n.C=e.C;e.C=n.L.C=false;RedBlackRotateRight(this,e);t=this._;break}}n.C=true;t=e;e=e.U}while(!t.C);if(t)t.C=false}};function RedBlackRotateLeft(t,e){var n=e,r=e.R,i=n.U;if(i){if(i.L===n)i.L=r;else i.R=r}else{t._=r}r.U=i;n.U=r;n.R=r.L;if(n.R)n.R.U=n;r.L=n}function RedBlackRotateRight(t,e){var n=e,r=e.L,i=n.U;if(i){if(i.L===n)i.L=r;else i.R=r}else{t._=r}r.U=i;n.U=r;n.L=r.R;if(n.L)n.L.U=n;r.R=n}function RedBlackFirst(t){while(t.L)t=t.L;return t}function createEdge(t,e,n,r){var i=[null,null],a=edges.push(i)-1;i.left=t;i.right=e;if(n)setEdgeEnd(i,t,e,n);if(r)setEdgeEnd(i,e,t,r);cells[t.index].halfedges.push(a);cells[e.index].halfedges.push(a);return i}function createBorderEdge(t,e,n){var r=[e,n];r.left=t;return r}function setEdgeEnd(t,e,n,r){if(!t[0]&&!t[1]){t[0]=r;t.left=e;t.right=n}else if(t.left===n){t[1]=r}else{t[0]=r}}function clipEdge(t,e,n,r,i){var a=t[0],o=t[1],s=a[0],u=a[1],l=o[0],c=o[1],f=0,h=1,d=l-s,p=c-u,v;v=e-s;if(!d&&v>0)return;v/=d;if(d<0){if(v<f)return;if(v<h)h=v}else if(d>0){if(v>h)return;if(v>f)f=v}v=r-s;if(!d&&v<0)return;v/=d;if(d<0){if(v>h)return;if(v>f)f=v}else if(d>0){if(v<f)return;if(v<h)h=v}v=n-u;if(!p&&v>0)return;v/=p;if(p<0){if(v<f)return;if(v<h)h=v}else if(p>0){if(v>h)return;if(v>f)f=v}v=i-u;if(!p&&v<0)return;v/=p;if(p<0){if(v>h)return;if(v>f)f=v}else if(p>0){if(v<f)return;if(v<h)h=v}if(!(f>0)&&!(h<1))return true;if(f>0)t[0]=[s+f*d,u+f*p];if(h<1)t[1]=[s+h*d,u+h*p];return true}function connectEdge(t,e,n,r,i){var a=t[1];if(a)return true;var o=t[0],s=t.left,u=t.right,l=s[0],c=s[1],f=u[0],h=u[1],d=(l+f)/2,p=(c+h)/2,v,m;if(h===c){if(d<e||d>=r)return;if(l>f){if(!o)o=[d,n];else if(o[1]>=i)return;a=[d,i]}else{if(!o)o=[d,i];else if(o[1]<n)return;a=[d,n]}}else{v=(l-f)/(h-c);m=p-v*d;if(v<-1||v>1){if(l>f){if(!o)o=[(n-m)/v,n];else if(o[1]>=i)return;a=[(i-m)/v,i]}else{if(!o)o=[(i-m)/v,i];else if(o[1]<n)return;a=[(n-m)/v,n]}}else{if(c<h){if(!o)o=[e,v*e+m];else if(o[0]>=r)return;a=[r,v*r+m]}else{if(!o)o=[r,v*r+m];else if(o[0]<e)return;a=[e,v*e+m]}}}t[0]=o;t[1]=a;return true}function clipEdges(t,e,n,r){var i=edges.length,a;while(i--){if(!connectEdge(a=edges[i],t,e,n,r)||!clipEdge(a,t,e,n,r)||!(Math.abs(a[0][0]-a[1][0])>epsilon||Math.abs(a[0][1]-a[1][1])>epsilon)){delete edges[i]}}}function createCell(t){return cells[t.index]={site:t,halfedges:[]}}function cellHalfedgeAngle(t,e){var n=t.site,r=e.left,i=e.right;if(n===i)i=r,r=n;if(i)return Math.atan2(i[1]-r[1],i[0]-r[0]);if(n===r)r=e[1],i=e[0];else r=e[0],i=e[1];return Math.atan2(r[0]-i[0],i[1]-r[1])}function cellHalfedgeStart(t,e){return e[+(e.left!==t.site)]}function cellHalfedgeEnd(t,e){return e[+(e.left===t.site)]}function sortCellHalfedges(){for(var t=0,e=cells.length,n,r,i,a;t<e;++t){if((n=cells[t])&&(a=(r=n.halfedges).length)){var o=new Array(a),s=new Array(a);for(i=0;i<a;++i)o[i]=i,s[i]=cellHalfedgeAngle(n,edges[r[i]]);o.sort((function(t,e){return s[e]-s[t]}));for(i=0;i<a;++i)s[i]=r[o[i]];for(i=0;i<a;++i)r[i]=s[i]}}}function clipCells(t,e,n,r){var i=cells.length,a,o,s,u,l,c,f,h,d,p,v,m,g=true;for(a=0;a<i;++a){if(o=cells[a]){s=o.site;l=o.halfedges;u=l.length;while(u--){if(!edges[l[u]]){l.splice(u,1)}}u=0,c=l.length;while(u<c){p=cellHalfedgeEnd(o,edges[l[u]]),v=p[0],m=p[1];f=cellHalfedgeStart(o,edges[l[++u%c]]),h=f[0],d=f[1];if(Math.abs(v-h)>epsilon||Math.abs(m-d)>epsilon){l.splice(u,0,edges.push(createBorderEdge(s,p,Math.abs(v-t)<epsilon&&r-m>epsilon?[t,Math.abs(h-t)<epsilon?d:r]:Math.abs(m-r)<epsilon&&n-v>epsilon?[Math.abs(d-r)<epsilon?h:n,r]:Math.abs(v-n)<epsilon&&m-e>epsilon?[n,Math.abs(h-n)<epsilon?d:e]:Math.abs(m-e)<epsilon&&v-t>epsilon?[Math.abs(d-e)<epsilon?h:t,e]:null))-1);++c}}if(c)g=false}}if(g){var y,b,_,x=Infinity;for(a=0,g=null;a<i;++a){if(o=cells[a]){s=o.site;y=s[0]-t;b=s[1]-e;_=y*y+b*b;if(_<x)x=_,g=o}}if(g){var w=[t,e],$=[t,r],k=[n,r],M=[n,e];g.halfedges.push(edges.push(createBorderEdge(s=g.site,w,$))-1,edges.push(createBorderEdge(s,$,k))-1,edges.push(createBorderEdge(s,k,M))-1,edges.push(createBorderEdge(s,M,w))-1)}}for(a=0;a<i;++a){if(o=cells[a]){if(!o.halfedges.length){delete cells[a]}}}}var circlePool=[];var firstCircle;function Circle(){RedBlackNode(this);this.x=this.y=this.arc=this.site=this.cy=null}function attachCircle(t){var e=t.P,n=t.N;if(!e||!n)return;var r=e.site,i=t.site,a=n.site;if(r===a)return;var o=i[0],s=i[1],u=r[0]-o,l=r[1]-s,c=a[0]-o,f=a[1]-s;var h=2*(u*f-l*c);if(h>=-epsilon2)return;var d=u*u+l*l,p=c*c+f*f,v=(f*d-l*p)/h,m=(u*p-c*d)/h;var g=circlePool.pop()||new Circle;g.arc=t;g.site=i;g.x=v+o;g.y=(g.cy=m+s)+Math.sqrt(v*v+m*m);t.circle=g;var y=null,b=circles._;while(b){if(g.y<b.y||g.y===b.y&&g.x<=b.x){if(b.L)b=b.L;else{y=b.P;break}}else{if(b.R)b=b.R;else{y=b;break}}}circles.insert(y,g);if(!y)firstCircle=g}function detachCircle(t){var e=t.circle;if(e){if(!e.P)firstCircle=e.N;circles.remove(e);circlePool.push(e);RedBlackNode(e);t.circle=null}}var beachPool=[];function Beach(){RedBlackNode(this);this.edge=this.site=this.circle=null}function createBeach(t){var e=beachPool.pop()||new Beach;e.site=t;return e}function detachBeach(t){detachCircle(t);beaches.remove(t);beachPool.push(t);RedBlackNode(t)}function removeBeach(t){var e=t.circle,n=e.x,r=e.cy,i=[n,r],a=t.P,o=t.N,s=[t];detachBeach(t);var u=a;while(u.circle&&Math.abs(n-u.circle.x)<epsilon&&Math.abs(r-u.circle.cy)<epsilon){a=u.P;s.unshift(u);detachBeach(u);u=a}s.unshift(u);detachCircle(u);var l=o;while(l.circle&&Math.abs(n-l.circle.x)<epsilon&&Math.abs(r-l.circle.cy)<epsilon){o=l.N;s.push(l);detachBeach(l);l=o}s.push(l);detachCircle(l);var c=s.length,f;for(f=1;f<c;++f){l=s[f];u=s[f-1];setEdgeEnd(l.edge,u.site,l.site,i)}u=s[0];l=s[c-1];l.edge=createEdge(u.site,l.site,null,i);attachCircle(u);attachCircle(l)}function addBeach(t){var e=t[0],n=t[1],r,i,a,o,s=beaches._;while(s){a=leftBreakPoint(s,n)-e;if(a>epsilon)s=s.L;else{o=e-rightBreakPoint(s,n);if(o>epsilon){if(!s.R){r=s;break}s=s.R}else{if(a>-epsilon){r=s.P;i=s}else if(o>-epsilon){r=s;i=s.N}else{r=i=s}break}}}createCell(t);var u=createBeach(t);beaches.insert(r,u);if(!r&&!i)return;if(r===i){detachCircle(r);i=createBeach(r.site);beaches.insert(u,i);u.edge=i.edge=createEdge(r.site,u.site);attachCircle(r);attachCircle(i);return}if(!i){u.edge=createEdge(r.site,u.site);return}detachCircle(r);detachCircle(i);var l=r.site,c=l[0],f=l[1],h=t[0]-c,d=t[1]-f,p=i.site,v=p[0]-c,m=p[1]-f,g=2*(h*m-d*v),y=h*h+d*d,b=v*v+m*m,_=[(m*y-d*b)/g+c,(h*b-v*y)/g+f];setEdgeEnd(i.edge,l,p,_);u.edge=createEdge(l,t,null,_);i.edge=createEdge(t,p,null,_);attachCircle(r);attachCircle(i)}function leftBreakPoint(t,e){var n=t.site,r=n[0],i=n[1],a=i-e;if(!a)return r;var o=t.P;if(!o)return-Infinity;n=o.site;var s=n[0],u=n[1],l=u-e;if(!l)return s;var c=s-r,f=1/a-1/l,h=c/l;if(f)return(-h+Math.sqrt(h*h-2*f*(c*c/(-2*l)-u+l/2+i-a/2)))/f+r;return(r+s)/2}function rightBreakPoint(t,e){var n=t.N;if(n)return leftBreakPoint(n,e);var r=t.site;return r[1]===e?r[0]:Infinity}var epsilon=1e-6;var epsilon2=1e-12;var beaches;var cells;var circles;var edges;function triangleArea(t,e,n){return(t[0]-n[0])*(e[1]-t[1])-(t[0]-e[0])*(n[1]-t[1])}function lexicographic(t,e){return e[1]-t[1]||e[0]-t[0]}function Diagram(t,e){var n=t.sort(lexicographic).pop(),r,i,a;edges=[];cells=new Array(t.length);beaches=new RedBlackTree;circles=new RedBlackTree;while(true){a=firstCircle;if(n&&(!a||n[1]<a.y||n[1]===a.y&&n[0]<a.x)){if(n[0]!==r||n[1]!==i){addBeach(n);r=n[0],i=n[1]}n=t.pop()}else if(a){removeBeach(a.arc)}else{break}}sortCellHalfedges();if(e){var o=+e[0][0],s=+e[0][1],u=+e[1][0],l=+e[1][1];clipEdges(o,s,u,l);clipCells(o,s,u,l)}this.edges=edges;this.cells=cells;beaches=circles=edges=cells=null}Diagram.prototype={constructor:Diagram,polygons:function(){var t=this.edges;return this.cells.map((function(e){var n=e.halfedges.map((function(n){return cellHalfedgeStart(e,t[n])}));n.data=e.site.data;return n}))},triangles:function(){var t=[],e=this.edges;this.cells.forEach((function(n,r){if(!(s=(a=n.halfedges).length))return;var i=n.site,a,o=-1,s,u,l=e[a[s-1]],c=l.left===i?l.right:l.left;while(++o<s){u=c;l=e[a[o]];c=l.left===i?l.right:l.left;if(u&&c&&r<u.index&&r<c.index&&triangleArea(i,u,c)<0){t.push([i.data,u.data,c.data])}}}));return t},links:function(){return this.edges.filter((function(t){return t.right})).map((function(t){return{source:t.left.data,target:t.right.data}}))},find:function(t,e,n){var r=this,i,a=r._found||0,o=r.cells.length,s;while(!(s=r.cells[a]))if(++a>=o)return null;var u=t-s.site[0],l=e-s.site[1],c=u*u+l*l;do{s=r.cells[i=a],a=null;s.halfedges.forEach((function(n){var i=r.edges[n],o=i.left;if((o===s.site||!o)&&!(o=i.right))return;var u=t-o[0],l=e-o[1],f=u*u+l*l;if(f<c)c=f,a=o.index}))}while(a!==null);r._found=i;return n==null||c<=n*n?s.site:null}};function voronoi(){var t=x,e=y,n=null;function r(r){return new Diagram(r.map((function(n,i){var a=[Math.round(t(n,i,r)/epsilon)*epsilon,Math.round(e(n,i,r)/epsilon)*epsilon];a.index=i;a.data=n;return a})),n)}r.polygons=function(t){return r(t).polygons()};r.links=function(t){return r(t).links()};r.triangles=function(t){return r(t).triangles()};r.x=function(e){return arguments.length?(t=typeof e==="function"?e:constant$1(+e),r):t};r.y=function(t){return arguments.length?(e=typeof t==="function"?t:constant$1(+t),r):e};r.extent=function(t){return arguments.length?(n=t==null?null:[[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]],r):n&&[[n[0][0],n[0][1]],[n[1][0],n[1][1]]]};r.size=function(t){return arguments.length?(n=t==null?null:[[0,0],[+t[0],+t[1]]],r):n&&[n[1][0]-n[0][0],n[1][1]-n[0][1]]};return r}function constant(t){return function(){return t}}function ZoomEvent(t,e,n){this.target=t;this.type=e;this.transform=n}function Transform(t,e,n){this.k=t;this.x=e;this.y=n}Transform.prototype={constructor:Transform,scale:function(t){return t===1?this:new Transform(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Transform(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var identity$1=new Transform(1,0,0);transform$1.prototype=Transform.prototype;function transform$1(t){return t.__zoom||identity$1}function nopropagation(){event.stopImmediatePropagation()}function noevent(){event.preventDefault();event.stopImmediatePropagation()}function defaultFilter(){return!event.button}function defaultExtent(){var t=this,e,n;if(t instanceof SVGElement){t=t.ownerSVGElement||t;e=t.width.baseVal.value;n=t.height.baseVal.value}else{e=t.clientWidth;n=t.clientHeight}return[[0,0],[e,n]]}function defaultTransform(){return this.__zoom||identity$1}function defaultWheelDelta(){return-event.deltaY*(event.deltaMode?120:1)/500}function defaultTouchable(){return"ontouchstart"in this}function defaultConstrain(t,e,n){var r=t.invertX(e[0][0])-n[0][0],i=t.invertX(e[1][0])-n[1][0],a=t.invertY(e[0][1])-n[0][1],o=t.invertY(e[1][1])-n[1][1];return t.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function zoom(){var t=defaultFilter,e=defaultExtent,n=defaultConstrain,r=defaultWheelDelta,i=defaultTouchable,a=[0,Infinity],o=[[-Infinity,-Infinity],[Infinity,Infinity]],s=250,u=interpolateZoom,l=[],c=dispatch("start","zoom","end"),f,h,d=500,p=150,v=0;function m(t){t.property("__zoom",defaultTransform).on("wheel.zoom",$).on("mousedown.zoom",k).on("dblclick.zoom",M).filter(i).on("touchstart.zoom",S).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",z).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}m.transform=function(t,e){var n=t.selection?t.selection():t;n.property("__zoom",defaultTransform);if(t!==n){_(t,e)}else{n.interrupt().each((function(){x(this,arguments).start().zoom(null,typeof e==="function"?e.apply(this,arguments):e).end()}))}};m.scaleBy=function(t,e){m.scaleTo(t,(function(){var t=this.__zoom.k,n=typeof e==="function"?e.apply(this,arguments):e;return t*n}))};m.scaleTo=function(t,r){m.transform(t,(function(){var t=e.apply(this,arguments),i=this.__zoom,a=b(t),s=i.invert(a),u=typeof r==="function"?r.apply(this,arguments):r;return n(y(g(i,u),a,s),t,o)}))};m.translateBy=function(t,r,i){m.transform(t,(function(){return n(this.__zoom.translate(typeof r==="function"?r.apply(this,arguments):r,typeof i==="function"?i.apply(this,arguments):i),e.apply(this,arguments),o)}))};m.translateTo=function(t,r,i){m.transform(t,(function(){var t=e.apply(this,arguments),a=this.__zoom,s=b(t);return n(identity$1.translate(s[0],s[1]).scale(a.k).translate(typeof r==="function"?-r.apply(this,arguments):-r,typeof i==="function"?-i.apply(this,arguments):-i),t,o)}))};function g(t,e){e=Math.max(a[0],Math.min(a[1],e));return e===t.k?t:new Transform(e,t.x,t.y)}function y(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new Transform(t.k,r,i)}function b(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function _(t,n,r){t.on("start.zoom",(function(){x(this,arguments).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).end()})).tween("zoom",(function(){var t=this,i=arguments,a=x(t,i),o=e.apply(t,i),s=r||b(o),l=Math.max(o[1][0]-o[0][0],o[1][1]-o[0][1]),c=t.__zoom,f=typeof n==="function"?n.apply(t,i):n,h=u(c.invert(s).concat(l/c.k),f.invert(s).concat(l/f.k));return function(t){if(t===1)t=f;else{var e=h(t),n=l/e[2];t=new Transform(n,s[0]-e[0]*n,s[1]-e[1]*n)}a.zoom(null,t)}}))}function x(t,e){for(var n=0,r=l.length,i;n<r;++n){if((i=l[n]).that===t){return i}}return new w(t,e)}function w(t,n){this.that=t;this.args=n;this.index=-1;this.active=0;this.extent=e.apply(t,n)}w.prototype={start:function(){if(++this.active===1){this.index=l.push(this)-1;this.emit("start")}return this},zoom:function(t,e){if(this.mouse&&t!=="mouse")this.mouse[1]=e.invert(this.mouse[0]);if(this.touch0&&t!=="touch")this.touch0[1]=e.invert(this.touch0[0]);if(this.touch1&&t!=="touch")this.touch1[1]=e.invert(this.touch1[0]);this.that.__zoom=e;this.emit("zoom");return this},end:function(){if(--this.active===0){l.splice(this.index,1);this.index=-1;this.emit("end")}return this},emit:function(t){customEvent(new ZoomEvent(m,t,this.that.__zoom),c.apply,c,[t,this.that,this.args])}};function $(){if(!t.apply(this,arguments))return;var e=x(this,arguments),i=this.__zoom,s=Math.max(a[0],Math.min(a[1],i.k*Math.pow(2,r.apply(this,arguments)))),u=mouse(this);if(e.wheel){if(e.mouse[0][0]!==u[0]||e.mouse[0][1]!==u[1]){e.mouse[1]=i.invert(e.mouse[0]=u)}clearTimeout(e.wheel)}else if(i.k===s)return;else{e.mouse=[u,i.invert(u)];interrupt(this);e.start()}noevent();e.wheel=setTimeout(l,p);e.zoom("mouse",n(y(g(i,s),e.mouse[0],e.mouse[1]),e.extent,o));function l(){e.wheel=null;e.end()}}function k(){if(h||!t.apply(this,arguments))return;var e=x(this,arguments),r=select(event.view).on("mousemove.zoom",u,true).on("mouseup.zoom",l,true),i=mouse(this),a=event.clientX,s=event.clientY;dragDisable(event.view);nopropagation();e.mouse=[i,this.__zoom.invert(i)];interrupt(this);e.start();function u(){noevent();if(!e.moved){var t=event.clientX-a,r=event.clientY-s;e.moved=t*t+r*r>v}e.zoom("mouse",n(y(e.that.__zoom,e.mouse[0]=mouse(e.that),e.mouse[1]),e.extent,o))}function l(){r.on("mousemove.zoom mouseup.zoom",null);yesdrag(event.view,e.moved);noevent();e.end()}}function M(){if(!t.apply(this,arguments))return;var r=this.__zoom,i=mouse(this),a=r.invert(i),u=r.k*(event.shiftKey?.5:2),l=n(y(g(r,u),i,a),e.apply(this,arguments),o);noevent();if(s>0)select(this).transition().duration(s).call(_,l,i);else select(this).call(m.transform,l)}function S(){if(!t.apply(this,arguments))return;var e=x(this,arguments),n=event.changedTouches,r,i=n.length,a,o,s;nopropagation();for(a=0;a<i;++a){o=n[a],s=touch(this,n,o.identifier);s=[s,this.__zoom.invert(s),o.identifier];if(!e.touch0)e.touch0=s,r=true;else if(!e.touch1)e.touch1=s}if(f){f=clearTimeout(f);if(!e.touch1){e.end();s=select(this).on("dblclick.zoom");if(s)s.apply(this,arguments);return}}if(r){f=setTimeout((function(){f=null}),d);interrupt(this);e.start()}}function A(){var t=x(this,arguments),e=event.changedTouches,r=e.length,i,a,s,u;noevent();if(f)f=clearTimeout(f);for(i=0;i<r;++i){a=e[i],s=touch(this,e,a.identifier);if(t.touch0&&t.touch0[2]===a.identifier)t.touch0[0]=s;else if(t.touch1&&t.touch1[2]===a.identifier)t.touch1[0]=s}a=t.that.__zoom;if(t.touch1){var l=t.touch0[0],c=t.touch0[1],h=t.touch1[0],d=t.touch1[1],p=(p=h[0]-l[0])*p+(p=h[1]-l[1])*p,v=(v=d[0]-c[0])*v+(v=d[1]-c[1])*v;a=g(a,Math.sqrt(p/v));s=[(l[0]+h[0])/2,(l[1]+h[1])/2];u=[(c[0]+d[0])/2,(c[1]+d[1])/2]}else if(t.touch0)s=t.touch0[0],u=t.touch0[1];else return;t.zoom("touch",n(y(a,s,u),t.extent,o))}function z(){var t=x(this,arguments),e=event.changedTouches,n=e.length,r,i;nopropagation();if(h)clearTimeout(h);h=setTimeout((function(){h=null}),d);for(r=0;r<n;++r){i=e[r];if(t.touch0&&t.touch0[2]===i.identifier)delete t.touch0;else if(t.touch1&&t.touch1[2]===i.identifier)delete t.touch1}if(t.touch1&&!t.touch0)t.touch0=t.touch1,delete t.touch1;if(t.touch0)t.touch0[1]=this.__zoom.invert(t.touch0[0]);else t.end()}m.wheelDelta=function(t){return arguments.length?(r=typeof t==="function"?t:constant(+t),m):r};m.filter=function(e){return arguments.length?(t=typeof e==="function"?e:constant(!!e),m):t};m.touchable=function(t){return arguments.length?(i=typeof t==="function"?t:constant(!!t),m):i};m.extent=function(t){return arguments.length?(e=typeof t==="function"?t:constant([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),m):e};m.scaleExtent=function(t){return arguments.length?(a[0]=+t[0],a[1]=+t[1],m):[a[0],a[1]]};m.translateExtent=function(t){return arguments.length?(o[0][0]=+t[0][0],o[1][0]=+t[1][0],o[0][1]=+t[0][1],o[1][1]=+t[1][1],m):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]};m.constrain=function(t){return arguments.length?(n=t,m):n};m.duration=function(t){return arguments.length?(s=+t,m):s};m.interpolate=function(t){return arguments.length?(u=t,m):u};m.on=function(){var t=c.on.apply(c,arguments);return t===c?m:t};m.clickDistance=function(t){return arguments.length?(v=(t=+t)*t,m):Math.sqrt(v)};return m}var d3=Object.freeze({__proto__:null,version:version,bisect:bisectRight,bisectRight:bisectRight,bisectLeft:bisectLeft,ascending:ascending$2,bisector:bisector,cross:cross$2,descending:descending$2,deviation:deviation,extent:extent$1,histogram:histogram,thresholdFreedmanDiaconis:freedmanDiaconis,thresholdScott:scott,thresholdSturges:sturges,max:max$2,mean:mean,median:median,merge:merge$1,min:min$1,pairs:pairs,permute:permute,quantile:threshold$1,range:sequence,scan:scan,shuffle:shuffle$1,sum:sum$2,ticks:ticks,tickIncrement:tickIncrement,tickStep:tickStep,transpose:transpose,variance:variance,zip:zip,axisTop:axisTop,axisRight:axisRight,axisBottom:axisBottom,axisLeft:axisLeft,brush:brush,brushX:brushX,brushY:brushY,brushSelection:brushSelection,chord:chord,ribbon:ribbon,nest:nest,set:set,map:map$1,keys:keys,values:values,entries:entries,color:color,rgb:rgb,hsl:hsl$2,lab:lab$1,hcl:hcl$2,cubehelix:cubehelix$3,dispatch:dispatch,drag:drag,dragDisable:dragDisable,dragEnable:yesdrag,dsvFormat:dsv$1,csvParse:csvParse,csvParseRows:csvParseRows,csvFormat:csvFormat,csvFormatRows:csvFormatRows,tsvParse:tsvParse,tsvParseRows:tsvParseRows,tsvFormat:tsvFormat,tsvFormatRows:tsvFormatRows,easeLinear:linear$1,easeQuad:quadInOut,easeQuadIn:quadIn,easeQuadOut:quadOut,easeQuadInOut:quadInOut,easeCubic:cubicInOut,easeCubicIn:cubicIn,easeCubicOut:cubicOut,easeCubicInOut:cubicInOut,easePoly:polyInOut,easePolyIn:polyIn,easePolyOut:polyOut,easePolyInOut:polyInOut,easeSin:sinInOut,easeSinIn:sinIn,easeSinOut:sinOut,easeSinInOut:sinInOut,easeExp:expInOut,easeExpIn:expIn,easeExpOut:expOut,easeExpInOut:expInOut,easeCircle:circleInOut,easeCircleIn:circleIn,easeCircleOut:circleOut,easeCircleInOut:circleInOut,easeBounce:bounceOut,easeBounceIn:bounceIn,easeBounceOut:bounceOut,easeBounceInOut:bounceInOut,easeBack:backInOut,easeBackIn:backIn,easeBackOut:backOut,easeBackInOut:backInOut,easeElastic:elasticOut,easeElasticIn:elasticIn,easeElasticOut:elasticOut,easeElasticInOut:elasticInOut,forceCenter:center,forceCollide:collide,forceLink:link$2,forceManyBody:manyBody,forceRadial:radial,forceSimulation:simulation,forceX:x$2,forceY:y$2,formatDefaultLocale:defaultLocale$1,get format(){return format},get formatPrefix(){return formatPrefix},formatLocale:formatLocale$1,formatSpecifier:formatSpecifier,precisionFixed:precisionFixed,precisionPrefix:precisionPrefix,precisionRound:precisionRound,geoArea:area$2,geoBounds:bounds,geoCentroid:centroid$1,geoCircle:circle$2,geoClipAntimeridian:clipAntimeridian,geoClipCircle:clipCircle,geoClipExtent:extent,geoClipRectangle:clipRectangle,geoContains:contains$1,geoDistance:distance,geoGraticule:graticule,geoGraticule10:graticule10,geoInterpolate:interpolate,geoLength:length$1,geoPath:index$2,geoAlbers:albers,geoAlbersUsa:albersUsa,geoAzimuthalEqualArea:azimuthalEqualArea,geoAzimuthalEqualAreaRaw:azimuthalEqualAreaRaw,geoAzimuthalEquidistant:azimuthalEquidistant,geoAzimuthalEquidistantRaw:azimuthalEquidistantRaw,geoConicConformal:conicConformal,geoConicConformalRaw:conicConformalRaw,geoConicEqualArea:conicEqualArea,geoConicEqualAreaRaw:conicEqualAreaRaw,geoConicEquidistant:conicEquidistant,geoConicEquidistantRaw:conicEquidistantRaw,geoEquirectangular:equirectangular,geoEquirectangularRaw:equirectangularRaw,geoGnomonic:gnomonic,geoGnomonicRaw:gnomonicRaw,geoIdentity:identity$4,geoProjection:projection,geoProjectionMutator:projectionMutator,geoMercator:mercator,geoMercatorRaw:mercatorRaw,geoNaturalEarth1:naturalEarth1,geoNaturalEarth1Raw:naturalEarth1Raw,geoOrthographic:orthographic,geoOrthographicRaw:orthographicRaw,geoStereographic:stereographic,geoStereographicRaw:stereographicRaw,geoTransverseMercator:transverseMercator,geoTransverseMercatorRaw:transverseMercatorRaw,geoRotation:rotation,geoStream:geoStream,geoTransform:transform$2,cluster:cluster,hierarchy:hierarchy,pack:index$1,packSiblings:siblings,packEnclose:enclose,partition:partition,stratify:stratify,tree:tree,treemap:index,treemapBinary:binary,treemapDice:treemapDice,treemapSlice:treemapSlice,treemapSliceDice:sliceDice,treemapSquarify:squarify,treemapResquarify:resquarify,interpolate:interpolateValue,interpolateArray:array$1,interpolateBasis:basis$2,interpolateBasisClosed:basisClosed$1,interpolateDate:date$1,interpolateNumber:reinterpolate$1,interpolateObject:object$2,interpolateRound:interpolateRound,interpolateString:interpolateString,interpolateTransformCss:interpolateTransformCss,interpolateTransformSvg:interpolateTransformSvg,interpolateZoom:interpolateZoom,interpolateRgb:interpolateRgb,interpolateRgbBasis:rgbBasis,interpolateRgbBasisClosed:rgbBasisClosed,interpolateHsl:hsl$1,interpolateHslLong:hslLong,interpolateLab:lab,interpolateHcl:hcl$1,interpolateHclLong:hclLong,interpolateCubehelix:cubehelix$2,interpolateCubehelixLong:cubehelixLong,quantize:quantize$2,path:path,polygonArea:area$1,polygonCentroid:centroid,polygonHull:hull,polygonContains:contains,polygonLength:length,quadtree:quadtree,queue:queue,randomUniform:uniform,randomNormal:normal,randomLogNormal:logNormal,randomBates:bates,randomIrwinHall:irwinHall,randomExponential:exponential,request:request,html:html,json:json,text:text,xml:xml,csv:csv,tsv:tsv,scaleBand:band,scalePoint:point$4,scaleIdentity:identity$3,scaleLinear:linear,scaleLog:log,scaleOrdinal:ordinal,scaleImplicit:implicit,scalePow:pow,scaleSqrt:sqrt$1,scaleQuantile:quantile,scaleQuantize:quantize$1,scaleThreshold:threshold,scaleTime:time,scaleUtc:utcTime,schemeCategory10:category10,schemeCategory20b:category20b,schemeCategory20c:category20c,schemeCategory20:category20,interpolateCubehelixDefault:cubehelix,interpolateRainbow:rainbow$1,interpolateWarm:warm,interpolateCool:cool,interpolateViridis:viridis,interpolateMagma:magma,interpolateInferno:inferno,interpolatePlasma:plasma,scaleSequential:sequential,create:create$1,creator:creator,local:local$1,matcher:matcher$1,mouse:mouse,namespace:namespace,namespaces:namespaces,clientPoint:point$5,select:select,selectAll:selectAll,selection:selection,selector:selector,selectorAll:selectorAll,style:styleValue,touch:touch,touches:touches,window:defaultView,get event(){return event},customEvent:customEvent,arc:arc,area:area,line:line,pie:pie,areaRadial:areaRadial,radialArea:areaRadial,lineRadial:lineRadial$1,radialLine:lineRadial$1,pointRadial:pointRadial,linkHorizontal:linkHorizontal,linkVertical:linkVertical,linkRadial:linkRadial,symbol:symbol,symbols:symbols,symbolCircle:circle,symbolCross:cross,symbolDiamond:diamond,symbolSquare:square,symbolStar:star,symbolTriangle:triangle,symbolWye:wye,curveBasisClosed:basisClosed,curveBasisOpen:basisOpen,curveBasis:basis,curveBundle:bundle,curveCardinalClosed:cardinalClosed,curveCardinalOpen:cardinalOpen,curveCardinal:cardinal,curveCatmullRomClosed:catmullRomClosed,curveCatmullRomOpen:catmullRomOpen,curveCatmullRom:catmullRom,curveLinearClosed:linearClosed,curveLinear:curveLinear,curveMonotoneX:monotoneX,curveMonotoneY:monotoneY,curveNatural:natural,curveStep:step,curveStepAfter:stepAfter,curveStepBefore:stepBefore,stack:stack,stackOffsetExpand:expand,stackOffsetDiverging:diverging,stackOffsetNone:none$1,stackOffsetSilhouette:silhouette,stackOffsetWiggle:wiggle,stackOrderAscending:ascending,stackOrderDescending:descending,stackOrderInsideOut:insideOut,stackOrderNone:none,stackOrderReverse:reverse$1,timeInterval:newInterval,timeMillisecond:millisecond,timeMilliseconds:milliseconds,utcMillisecond:millisecond,utcMilliseconds:milliseconds,timeSecond:second,timeSeconds:seconds,utcSecond:second,utcSeconds:seconds,timeMinute:minute,timeMinutes:minutes,timeHour:hour,timeHours:hours,timeDay:day,timeDays:days,timeWeek:sunday,timeWeeks:sundays,timeSunday:sunday,timeSundays:sundays,timeMonday:monday,timeMondays:mondays,timeTuesday:tuesday,timeTuesdays:tuesdays,timeWednesday:wednesday,timeWednesdays:wednesdays,timeThursday:thursday,timeThursdays:thursdays,timeFriday:friday,timeFridays:fridays,timeSaturday:saturday,timeSaturdays:saturdays,timeMonth:month,timeMonths:months,timeYear:year,timeYears:years,utcMinute:utcMinute,utcMinutes:utcMinutes,utcHour:utcHour,utcHours:utcHours,utcDay:utcDay,utcDays:utcDays,utcWeek:utcSunday,utcWeeks:utcSundays,utcSunday:utcSunday,utcSundays:utcSundays,utcMonday:utcMonday,utcMondays:utcMondays,utcTuesday:utcTuesday,utcTuesdays:utcTuesdays,utcWednesday:utcWednesday,utcWednesdays:utcWednesdays,utcThursday:utcThursday,utcThursdays:utcThursdays,utcFriday:utcFriday,utcFridays:utcFridays,utcSaturday:utcSaturday,utcSaturdays:utcSaturdays,utcMonth:utcMonth,utcMonths:utcMonths,utcYear:utcYear,utcYears:utcYears,timeFormatDefaultLocale:defaultLocale,get timeFormat(){return timeFormat},get timeParse(){return timeParse},get utcFormat(){return utcFormat},get utcParse(){return utcParse},timeFormatLocale:formatLocale,isoFormat:formatIso,isoParse:parseIso,now:now,timer:timer,timerFlush:timerFlush,timeout:timeout,interval:interval,transition:transition,active:active,interrupt:interrupt,voronoi:voronoi,zoom:zoom,zoomTransform:transform$1,zoomIdentity:identity$1});var require$$0=getAugmentedNamespace(d3);var sszvis=createCommonjsModule((function(t,e){
2
+ /*! sszvis v2.4.1, Copyright 2014-present Statistik Stadt Zürich */
3
+ (function(t,n){n(e,require$$0)})(commonjsGlobal,(function(t,e){var n="default"in e?e["default"]:e;function r(t){for(var e=arguments.length,n=Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];throw Error("[Immer] minified error nr: "+t+(n.length?" "+n.join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function i(t){return!!t&&!!t[G]}function a(t){return!!t&&(function(t){if(!t||"object"!=typeof t)return!1;var e=Object.getPrototypeOf(t);return!e||e===Object.prototype}(t)||Array.isArray(t)||!!t[W]||!!t.constructor[W]||h(t)||d(t))}function o(t,e,n){void 0===n&&(n=!1),0===s(t)?(n?Object.keys:X)(t).forEach((function(r){n&&"symbol"==typeof r||e(r,t[r],t)})):t.forEach((function(n,r){return e(r,n,t)}))}function s(t){var e=t[G];return e?e.i>3?e.i-4:e.i:Array.isArray(t)?1:h(t)?2:d(t)?3:0}function u(t,e){return 2===s(t)?t.has(e):Object.prototype.hasOwnProperty.call(t,e)}function l(t,e){return 2===s(t)?t.get(e):t[e]}function c(t,e,n){var r=s(t);2===r?t.set(e,n):3===r?(t.delete(e),t.add(n)):t[e]=n}function f(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e}function h(t){return j&&t instanceof Map}function d(t){return q&&t instanceof Set}function p(t){return t.o||t.t}function v(t){if(Array.isArray(t))return t.slice();var e=V(t);delete e[G];for(var n=X(e),r=0;r<n.length;r++){var i=n[r],a=e[i];!1===a.writable&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(e[i]={configurable:!0,writable:!0,enumerable:a.enumerable,value:t[i]})}return Object.create(Object.getPrototypeOf(t),e)}function m(t,e){y(t)||i(t)||!a(t)||(s(t)>1&&(t.set=t.add=t.clear=t.delete=g),Object.freeze(t),e&&o(t,(function(t,e){return m(e,!0)}),!0))}function g(){r(2)}function y(t){return null==t||"object"!=typeof t||Object.isFrozen(t)}function b(t){var e=Z[t];return e||r(19,t),e}function _(t,e){Z[t]=e}function x(){return B}function w(t,e){e&&(b("Patches"),t.u=[],t.s=[],t.v=e)}function $(t){k(t),t.p.forEach(S),t.p=null}function k(t){t===B&&(B=t.l)}function M(t){return B={p:[],l:B,h:t,m:!0,_:0}}function S(t){var e=t[G];0===e.i||1===e.i?e.j():e.g=!0}function A(t,e){e._=e.p.length;var n=e.p[0],i=void 0!==t&&t!==n;return e.h.O||b("ES5").S(e,t,i),i?(n[G].P&&($(e),r(4)),a(t)&&(t=z(e,t),e.l||T(e,t)),e.u&&b("Patches").M(n[G],t,e.u,e.s)):t=z(e,n,[]),$(e),e.u&&e.v(e.u,e.s),t!==Y?t:void 0}function z(t,e,n){if(y(e))return e;var r=e[G];if(!r)return o(e,(function(i,a){return E(t,r,e,i,a,n)}),!0),e;if(r.A!==t)return e;if(!r.P)return T(t,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var i=4===r.i||5===r.i?r.o=v(r.k):r.o;o(3===r.i?new Set(i):i,(function(e,a){return E(t,r,i,e,a,n)})),T(t,i,!1),n&&t.u&&b("Patches").R(r,n,t.u,t.s)}return r.o}function E(t,e,n,r,o,s){if(i(o)){var l=z(t,o,s&&e&&3!==e.i&&!u(e.D,r)?s.concat(r):void 0);if(c(n,r,l),!i(l))return;t.m=!1}if(a(o)&&!y(o)){if(!t.h.N&&t._<1)return;z(t,o),e&&e.A.l||T(t,o)}}function T(t,e,n){void 0===n&&(n=!1),t.h.N&&t.m&&m(e,n)}function R(t,e){var n=t[G];return(n?p(n):t)[e]}function C(t,e){if(e in t)for(var n=Object.getPrototypeOf(t);n;){var r=Object.getOwnPropertyDescriptor(n,e);if(r)return r;n=Object.getPrototypeOf(n)}}function P(t){t.P||(t.P=!0,t.l&&P(t.l))}function N(t){t.o||(t.o=v(t.t))}function L(t,e,n){var r=h(e)?b("MapSet").T(e,n):d(e)?b("MapSet").F(e,n):t.O?function(t,e){var n=Array.isArray(t),r={i:n?1:0,A:e?e.A:x(),P:!1,I:!1,D:{},l:e,t:t,k:null,o:null,j:null,C:!1},i=r,a=Q;n&&(i=[r],a=J);var o=Proxy.revocable(i,a),s=o.revoke,u=o.proxy;return r.k=u,r.j=s,u}(e,n):b("ES5").J(e,n);return(n?n.A:x()).p.push(r),r}function O(t){return i(t)||r(22,t),function t(e){if(!a(e))return e;var n,r=e[G],i=s(e);if(r){if(!r.P&&(r.i<4||!b("ES5").K(r)))return r.t;r.I=!0,n=D(e,i),r.I=!1}else n=D(e,i);return o(n,(function(e,i){r&&l(r.t,e)===i||c(n,e,t(i))})),3===i?new Set(n):n}(t)}function D(t,e){switch(e){case 2:return new Map(t);case 3:return Array.from(t)}return v(t)}function I(){function t(t,e){var n=a[t];return n?n.enumerable=e:a[t]=n={configurable:!0,enumerable:e,get:function(){var e=this[G];return Q.get(e,t)},set:function(e){var n=this[G];Q.set(n,t,e)}},n}function e(t){for(var e=t.length-1;e>=0;e--){var i=t[e][G];if(!i.P)switch(i.i){case 5:r(i)&&P(i);break;case 4:n(i)&&P(i)}}}function n(t){for(var e=t.t,n=t.k,r=X(n),i=r.length-1;i>=0;i--){var a=r[i];if(a!==G){var o=e[a];if(void 0===o&&!u(e,a))return!0;var s=n[a],l=s&&s[G];if(l?l.t!==o:!f(s,o))return!0}}var c=!!e[G];return r.length!==X(e).length+(c?0:1)}function r(t){var e=t.k;if(e.length!==t.t.length)return!0;var n=Object.getOwnPropertyDescriptor(e,e.length-1);return!(!n||n.get)}var a={};_("ES5",{J:function(e,n){var r=Array.isArray(e),i=function(e,n){if(e){for(var r=Array(n.length),i=0;i<n.length;i++)Object.defineProperty(r,""+i,t(i,!0));return r}var a=V(n);delete a[G];for(var o=X(a),s=0;s<o.length;s++){var u=o[s];a[u]=t(u,e||!!a[u].enumerable)}return Object.create(Object.getPrototypeOf(n),a)}(r,e),a={i:r?5:4,A:n?n.A:x(),P:!1,I:!1,D:{},l:n,t:e,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,G,{value:a,writable:!0}),i},S:function(t,n,a){a?i(n)&&n[G].A===t&&e(t.p):(t.u&&function t(e){if(e&&"object"==typeof e){var n=e[G];if(n){var i=n.t,a=n.k,s=n.D,l=n.i;if(4===l)o(a,(function(e){e!==G&&(void 0!==i[e]||u(i,e)?s[e]||t(a[e]):(s[e]=!0,P(n)))})),o(i,(function(t){void 0!==a[t]||u(a,t)||(s[t]=!1,P(n))}));else if(5===l){if(r(n)&&(P(n),s.length=!0),a.length<i.length)for(var c=a.length;c<i.length;c++)s[c]=!1;else for(var f=i.length;f<a.length;f++)s[f]=!0;for(var h=Math.min(a.length,i.length),d=0;d<h;d++)void 0===s[d]&&t(a[d])}}}}(t.p[0]),e(t.p))},K:function(t){return 4===t.i?n(t):r(t)}})}var F,B,H="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),j="undefined"!=typeof Map,q="undefined"!=typeof Set,U="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,Y=H?Symbol.for("immer-nothing"):((F={})["immer-nothing"]=!0,F),W=H?Symbol.for("immer-draftable"):"__$immer_draftable",G=H?Symbol.for("immer-state"):"__$immer_state",X="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,V=Object.getOwnPropertyDescriptors||function(t){var e={};return X(t).forEach((function(n){e[n]=Object.getOwnPropertyDescriptor(t,n)})),e},Z={},Q={get:function(t,e){if(e===G)return t;var n=p(t);if(!u(n,e))return function(t,e,n){var r,i=C(e,n);return i?"value"in i?i.value:null===(r=i.get)||void 0===r?void 0:r.call(t.k):void 0}(t,n,e);var r=n[e];return t.I||!a(r)?r:r===R(t.t,e)?(N(t),t.o[e]=L(t.A.h,r,t)):r},has:function(t,e){return e in p(t)},ownKeys:function(t){return Reflect.ownKeys(p(t))},set:function(t,e,n){var r=C(p(t),e);if(null==r?void 0:r.set)return r.set.call(t.k,n),!0;if(t.D[e]=!0,!t.P){if(f(n,R(p(t),e))&&(void 0!==n||u(t.t,e)))return!0;N(t),P(t)}return t.o[e]=n,!0},deleteProperty:function(t,e){return void 0!==R(t.t,e)||e in t.t?(t.D[e]=!1,N(t),P(t)):delete t.D[e],t.o&&delete t.o[e],!0},getOwnPropertyDescriptor:function(t,e){var n=p(t),r=Reflect.getOwnPropertyDescriptor(n,e);return r?{writable:!0,configurable:1!==t.i||"length"!==e,enumerable:r.enumerable,value:n[e]}:r},defineProperty:function(){r(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){r(12)}},J={};o(Q,(function(t,e){J[t]=function(){return arguments[0]=arguments[0][0],e.apply(this,arguments)}})),J.deleteProperty=function(t,e){return Q.deleteProperty.call(this,t[0],e)},J.set=function(t,e,n){return Q.set.call(this,t[0],e,n,t[0])};var K=function(){function t(t){this.O=U,this.N="production"!=="production","boolean"==typeof(null==t?void 0:t.useProxies)&&this.setUseProxies(t.useProxies),"boolean"==typeof(null==t?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),this.produce=this.produce.bind(this),this.produceWithPatches=this.produceWithPatches.bind(this)}var e=t.prototype;return e.produce=function(t,e,n){if("function"==typeof t&&"function"!=typeof e){var i=e;e=t;var o=this;return function(t){var n=this;void 0===t&&(t=i);for(var r=arguments.length,a=Array(r>1?r-1:0),s=1;s<r;s++)a[s-1]=arguments[s];return o.produce(t,(function(t){var r;return(r=e).call.apply(r,[n,t].concat(a))}))}}var s;if("function"!=typeof e&&r(6),void 0!==n&&"function"!=typeof n&&r(7),a(t)){var u=M(this),l=L(this,t,void 0),c=!0;try{s=e(l),c=!1}finally{c?$(u):k(u)}return"undefined"!=typeof Promise&&s instanceof Promise?s.then((function(t){return w(u,n),A(t,u)}),(function(t){throw $(u),t})):(w(u,n),A(s,u))}if(!t||"object"!=typeof t){if((s=e(t))===Y)return;return void 0===s&&(s=t),this.N&&m(s,!0),s}r(21,t)},e.produceWithPatches=function(t,e){var n,r,i=this;return"function"==typeof t?function(e){for(var n=arguments.length,r=Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];return i.produceWithPatches(e,(function(e){return t.apply(void 0,[e].concat(r))}))}:[this.produce(t,e,(function(t,e){n=t,r=e})),n,r]},e.createDraft=function(t){a(t)||r(8),i(t)&&(t=O(t));var e=M(this),n=L(this,t,void 0);return n[G].C=!0,k(e),n},e.finishDraft=function(t,e){var n=t&&t[G];var r=n.A;return w(r,e),A(void 0,r)},e.setAutoFreeze=function(t){this.N=t},e.setUseProxies=function(t){t&&!U&&r(20),this.O=t},e.applyPatches=function(t,e){var n;for(n=e.length-1;n>=0;n--){var r=e[n];if(0===r.path.length&&"replace"===r.op){t=r.value;break}}var a=b("Patches").$;return i(t)?a(t,e):this.produce(t,(function(t){return a(t,e.slice(n+1))}))},t}(),tt=new K;tt.produceWithPatches.bind(tt);var et=tt.setAutoFreeze.bind(tt);tt.setUseProxies.bind(tt);tt.applyPatches.bind(tt);var nt=tt.createDraft.bind(tt),rt=tt.finishDraft.bind(tt);function it(t){var e=this.constructor;return this.then((function(n){return e.resolve(t()).then((function(){return n}))}),(function(n){return e.resolve(t()).then((function(){return e.reject(n)}))}))}var at=setTimeout;function ot(t){return Boolean(t&&typeof t.length!=="undefined")}function st(){}function ut(t,e){return function(){t.apply(e,arguments)}}function lt(t){if(!(this instanceof lt))throw new TypeError("Promises must be constructed via new");if(typeof t!=="function")throw new TypeError("not a function");this._state=0;this._handled=false;this._value=undefined;this._deferreds=[];vt(t,this)}function ct(t,e){while(t._state===3){t=t._value}if(t._state===0){t._deferreds.push(e);return}t._handled=true;lt._immediateFn((function(){var n=t._state===1?e.onFulfilled:e.onRejected;if(n===null){(t._state===1?ft:ht)(e.promise,t._value);return}var r;try{r=n(t._value)}catch(i){ht(e.promise,i);return}ft(e.promise,r)}))}function ft(t,e){try{if(e===t)throw new TypeError("A promise cannot be resolved with itself.");if(e&&(typeof e==="object"||typeof e==="function")){var n=e.then;if(e instanceof lt){t._state=3;t._value=e;dt(t);return}else if(typeof n==="function"){vt(ut(n,e),t);return}}t._state=1;t._value=e;dt(t)}catch(r){ht(t,r)}}function ht(t,e){t._state=2;t._value=e;dt(t)}function dt(t){if(t._state===2&&t._deferreds.length===0){lt._immediateFn((function(){if(!t._handled){lt._unhandledRejectionFn(t._value)}}))}for(var e=0,n=t._deferreds.length;e<n;e++){ct(t,t._deferreds[e])}t._deferreds=null}function pt(t,e,n){this.onFulfilled=typeof t==="function"?t:null;this.onRejected=typeof e==="function"?e:null;this.promise=n}function vt(t,e){var n=false;try{t((function(t){if(n)return;n=true;ft(e,t)}),(function(t){if(n)return;n=true;ht(e,t)}))}catch(r){if(n)return;n=true;ht(e,r)}}lt.prototype["catch"]=function(t){return this.then(null,t)};lt.prototype.then=function(t,e){var n=new this.constructor(st);ct(this,new pt(t,e,n));return n};lt.prototype["finally"]=it;lt.all=function(t){return new lt((function(e,n){if(!ot(t)){return n(new TypeError("Promise.all accepts an array"))}var r=Array.prototype.slice.call(t);if(r.length===0)return e([]);var i=r.length;function a(t,o){try{if(o&&(typeof o==="object"||typeof o==="function")){var s=o.then;if(typeof s==="function"){s.call(o,(function(e){a(t,e)}),n);return}}r[t]=o;if(--i===0){e(r)}}catch(u){n(u)}}for(var o=0;o<r.length;o++){a(o,r[o])}}))};lt.resolve=function(t){if(t&&typeof t==="object"&&t.constructor===lt){return t}return new lt((function(e){e(t)}))};lt.reject=function(t){return new lt((function(e,n){n(t)}))};lt.race=function(t){return new lt((function(e,n){if(!ot(t)){return n(new TypeError("Promise.race accepts an array"))}for(var r=0,i=t.length;r<i;r++){lt.resolve(t[r]).then(e,n)}}))};lt._immediateFn=typeof setImmediate==="function"&&function(t){setImmediate(t)}||function(t){at(t,0)};lt._unhandledRejectionFn=function t(e){if(typeof console!=="undefined"&&console){console.warn("Possible Unhandled Promise Rejection:",e)}};var mt=function(){if(typeof self!=="undefined"){return self}if(typeof window!=="undefined"){return window}if(typeof commonjsGlobal!=="undefined"){return commonjsGlobal}throw new Error("unable to locate global object")}();if(!("Promise"in mt)){mt["Promise"]=lt}else if(!mt.Promise.prototype["finally"]){mt.Promise.prototype["finally"]=it}var gt=function(t){return t}(typeof self!=="undefined"?self:window);var yt={searchParams:"URLSearchParams"in gt,iterable:"Symbol"in gt&&"iterator"in Symbol,blob:"FileReader"in gt&&"Blob"in gt&&function(){try{new Blob;return true}catch(t){return false}}(),formData:"FormData"in gt,arrayBuffer:"ArrayBuffer"in gt};function bt(t){return t&&DataView.prototype.isPrototypeOf(t)}if(yt.arrayBuffer){var _t=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"];var xt=ArrayBuffer.isView||function(t){return t&&_t.indexOf(Object.prototype.toString.call(t))>-1}}function wt(t){if(typeof t!=="string"){t=String(t)}if(/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(t)||t===""){throw new TypeError("Invalid character in header field name")}return t.toLowerCase()}function $t(t){if(typeof t!=="string"){t=String(t)}return t}function kt(t){var e={next:function(){var e=t.shift();return{done:e===undefined,value:e}}};if(yt.iterable){e[Symbol.iterator]=function(){return e}}return e}function Mt(t){this.map={};if(t instanceof Mt){t.forEach((function(t,e){this.append(e,t)}),this)}else if(Array.isArray(t)){t.forEach((function(t){this.append(t[0],t[1])}),this)}else if(t){Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}}Mt.prototype.append=function(t,e){t=wt(t);e=$t(e);var n=this.map[t];this.map[t]=n?n+", "+e:e};Mt.prototype["delete"]=function(t){delete this.map[wt(t)]};Mt.prototype.get=function(t){t=wt(t);return this.has(t)?this.map[t]:null};Mt.prototype.has=function(t){return this.map.hasOwnProperty(wt(t))};Mt.prototype.set=function(t,e){this.map[wt(t)]=$t(e)};Mt.prototype.forEach=function(t,e){for(var n in this.map){if(this.map.hasOwnProperty(n)){t.call(e,this.map[n],n,this)}}};Mt.prototype.keys=function(){var t=[];this.forEach((function(e,n){t.push(n)}));return kt(t)};Mt.prototype.values=function(){var t=[];this.forEach((function(e){t.push(e)}));return kt(t)};Mt.prototype.entries=function(){var t=[];this.forEach((function(e,n){t.push([n,e])}));return kt(t)};if(yt.iterable){Mt.prototype[Symbol.iterator]=Mt.prototype.entries}function St(t){if(t.bodyUsed){return Promise.reject(new TypeError("Already read"))}t.bodyUsed=true}function At(t){return new Promise((function(e,n){t.onload=function(){e(t.result)};t.onerror=function(){n(t.error)}}))}function zt(t){var e=new FileReader;var n=At(e);e.readAsArrayBuffer(t);return n}function Et(t){var e=new FileReader;var n=At(e);e.readAsText(t);return n}function Tt(t){var e=new Uint8Array(t);var n=new Array(e.length);for(var r=0;r<e.length;r++){n[r]=String.fromCharCode(e[r])}return n.join("")}function Rt(t){if(t.slice){return t.slice(0)}else{var e=new Uint8Array(t.byteLength);e.set(new Uint8Array(t));return e.buffer}}function Ct(){this.bodyUsed=false;this._initBody=function(t){this.bodyUsed=this.bodyUsed;this._bodyInit=t;if(!t){this._bodyText=""}else if(typeof t==="string"){this._bodyText=t}else if(yt.blob&&Blob.prototype.isPrototypeOf(t)){this._bodyBlob=t}else if(yt.formData&&FormData.prototype.isPrototypeOf(t)){this._bodyFormData=t}else if(yt.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)){this._bodyText=t.toString()}else if(yt.arrayBuffer&&yt.blob&&bt(t)){this._bodyArrayBuffer=Rt(t.buffer);this._bodyInit=new Blob([this._bodyArrayBuffer])}else if(yt.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(t)||xt(t))){this._bodyArrayBuffer=Rt(t)}else{this._bodyText=t=Object.prototype.toString.call(t)}if(!this.headers.get("content-type")){if(typeof t==="string"){this.headers.set("content-type","text/plain;charset=UTF-8")}else if(this._bodyBlob&&this._bodyBlob.type){this.headers.set("content-type",this._bodyBlob.type)}else if(yt.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)){this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8")}}};if(yt.blob){this.blob=function(){var t=St(this);if(t){return t}if(this._bodyBlob){return Promise.resolve(this._bodyBlob)}else if(this._bodyArrayBuffer){return Promise.resolve(new Blob([this._bodyArrayBuffer]))}else if(this._bodyFormData){throw new Error("could not read FormData body as blob")}else{return Promise.resolve(new Blob([this._bodyText]))}};this.arrayBuffer=function(){if(this._bodyArrayBuffer){return St(this)||Promise.resolve(this._bodyArrayBuffer)}else{return this.blob().then(zt)}}}this.text=function(){var t=St(this);if(t){return t}if(this._bodyBlob){return Et(this._bodyBlob)}else if(this._bodyArrayBuffer){return Promise.resolve(Tt(this._bodyArrayBuffer))}else if(this._bodyFormData){throw new Error("could not read FormData body as text")}else{return Promise.resolve(this._bodyText)}};if(yt.formData){this.formData=function(){return this.text().then(Ot)}}this.json=function(){return this.text().then(JSON.parse)};return this}var Pt=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function Nt(t){var e=t.toUpperCase();return Pt.indexOf(e)>-1?e:t}function Lt(t,e){e=e||{};var n=e.body;if(t instanceof Lt){if(t.bodyUsed){throw new TypeError("Already read")}this.url=t.url;this.credentials=t.credentials;if(!e.headers){this.headers=new Mt(t.headers)}this.method=t.method;this.mode=t.mode;this.signal=t.signal;if(!n&&t._bodyInit!=null){n=t._bodyInit;t.bodyUsed=true}}else{this.url=String(t)}this.credentials=e.credentials||this.credentials||"same-origin";if(e.headers||!this.headers){this.headers=new Mt(e.headers)}this.method=Nt(e.method||this.method||"GET");this.mode=e.mode||this.mode||null;this.signal=e.signal||this.signal;this.referrer=null;if((this.method==="GET"||this.method==="HEAD")&&n){throw new TypeError("Body not allowed for GET or HEAD requests")}this._initBody(n);if(this.method==="GET"||this.method==="HEAD"){if(e.cache==="no-store"||e.cache==="no-cache"){var r=/([?&])_=[^&]*/;if(r.test(this.url)){this.url=this.url.replace(r,"$1_="+(new Date).getTime())}else{var i=/\?/;this.url+=(i.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}}Lt.prototype.clone=function(){return new Lt(this,{body:this._bodyInit})};function Ot(t){var e=new FormData;t.trim().split("&").forEach((function(t){if(t){var n=t.split("=");var r=n.shift().replace(/\+/g," ");var i=n.join("=").replace(/\+/g," ");e.append(decodeURIComponent(r),decodeURIComponent(i))}}));return e}function Dt(t){var e=new Mt;var n=t.replace(/\r?\n[\t ]+/g," ");n.split(/\r?\n/).forEach((function(t){var n=t.split(":");var r=n.shift().trim();if(r){var i=n.join(":").trim();e.append(r,i)}}));return e}Ct.call(Lt.prototype);function It(t,e){if(!e){e={}}this.type="default";this.status=e.status===undefined?200:e.status;this.ok=this.status>=200&&this.status<300;this.statusText="statusText"in e?e.statusText:"";this.headers=new Mt(e.headers);this.url=e.url||"";this._initBody(t)}Ct.call(It.prototype);It.prototype.clone=function(){return new It(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Mt(this.headers),url:this.url})};It.error=function(){var t=new It(null,{status:0,statusText:""});t.type="error";return t};var Ft=[301,302,303,307,308];It.redirect=function(t,e){if(Ft.indexOf(e)===-1){throw new RangeError("Invalid status code")}return new It(null,{status:e,headers:{location:t}})};var Bt=gt.DOMException;if(typeof Bt!=="function"){Bt=function(t,e){this.message=t;this.name=e;var n=Error(t);this.stack=n.stack};Bt.prototype=Object.create(Error.prototype);Bt.prototype.constructor=Bt}function Ht(t,e){return new Promise((function(n,r){var i=new Lt(t,e);if(i.signal&&i.signal.aborted){return r(new Bt("Aborted","AbortError"))}var a=new XMLHttpRequest;function o(){a.abort()}a.onload=function(){var t={status:a.status,statusText:a.statusText,headers:Dt(a.getAllResponseHeaders()||"")};t.url="responseURL"in a?a.responseURL:t.headers.get("X-Request-URL");var e="response"in a?a.response:a.responseText;setTimeout((function(){n(new It(e,t))}),0)};a.onerror=function(){setTimeout((function(){r(new TypeError("Network request failed"))}),0)};a.ontimeout=function(){setTimeout((function(){r(new TypeError("Network request failed"))}),0)};a.onabort=function(){setTimeout((function(){r(new Bt("Aborted","AbortError"))}),0)};function s(t){try{return t===""&&gt.location.href?gt.location.href:t}catch(e){return t}}a.open(i.method,s(i.url),true);if(i.credentials==="include"){a.withCredentials=true}else if(i.credentials==="omit"){a.withCredentials=false}if("responseType"in a){if(yt.blob){a.responseType="blob"}else if(yt.arrayBuffer&&i.headers.get("Content-Type")&&i.headers.get("Content-Type").indexOf("application/octet-stream")!==-1){a.responseType="arraybuffer"}}i.headers.forEach((function(t,e){a.setRequestHeader(e,t)}));if(i.signal){i.signal.addEventListener("abort",o);a.onreadystatechange=function(){if(a.readyState===4){i.signal.removeEventListener("abort",o)}}}a.send(typeof i._bodyInit==="undefined"?null:i._bodyInit)}))}Ht.polyfill=true;if(!gt.fetch){gt.fetch=Ht;gt.Headers=Mt;gt.Request=Lt;gt.Response=It}n.csv=jt(n.csv);n.json=jt(n.json);function jt(t){function e(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++){n[r]=arguments[r]}return function(e){t.apply(void 0,n).then((function(t){e(undefined,t)})).catch(e)}}return function(n,r){return{then:function e(i){return t(n,r).then(i)},get:e(n),row:function t(r){return{get:e(n,r)}}}}}(function(){if(typeof window==="undefined"){return}var t=function t(e,n){var r=e.nodeType;if(r==3){n.push(e.textContent.replace(/&/,"&amp;").replace(/</,"&lt;").replace(">","&gt;"))}else if(r==1){n.push("<",e.tagName);if(e.hasAttributes()){var i=e.attributes;for(var a=0,o=i.length;a<o;++a){var s=i.item(a);n.push(" ",s.name,"='",s.value,"'")}}if(e.hasChildNodes()){n.push(">");var u=e.childNodes;for(var a=0,o=u.length;a<o;++a){t(u.item(a),n)}n.push("</",e.tagName,">")}else{n.push("/>")}}else if(r==8){n.push("\x3c!--",e.nodeValue,"--\x3e")}else{throw"Error serializing XML. Unhandled node of type: "+r}};Object.defineProperty(SVGElement.prototype,"innerHTML",{get:function e(){var n=[];var r=this.firstChild;while(r){t(r,n);r=r.nextSibling}return n.join("")},set:function t(e){while(this.firstChild){this.removeChild(this.firstChild)}try{var n=new DOMParser;n.async=false;var r="<svg xmlns='http://www.w3.org/2000/svg'>"+e+"</svg>";var i=n.parseFromString(r,"text/xml").documentElement;var a=i.firstChild;while(a){this.appendChild(this.ownerDocument.importNode(a,true));a=a.nextSibling}}catch(o){throw new Error("Error parsing XML string")}}});Object.defineProperty(SVGElement.prototype,"innerSVG",{get:function t(){return this.innerHTML},set:function t(e){this.innerHTML=e}})})();Number.isNaN=Number.isNaN||function t(e){return typeof e==="number"&&e!==e};I();et(false);e.selection.prototype.selectDiv=function(t){var e=this.selectAll('[data-d3-selectdiv="'+t+'"]').data((function(t){return[t]}));var n=e.enter().append("div").attr("data-d3-selectdiv",t).style("position","absolute");return e.merge(n)};e.selection.prototype.selectGroup=function(t){var e=this.selectAll('[data-d3-selectgroup="'+t+'"]').data((function(t){return[t]}));var n=e.enter().append("g").attr("data-d3-selectgroup",t);return e.merge(n)};var qt=function t(e){return e};var Ut=function t(e){return Object.prototype.toString.call(e)==="[object String]"};var Yt=function t(n){return n instanceof e.selection};var Wt=function t(e,n){switch(e){case 0:return function(){return n.call(this)};case 1:return function(t){return n.call(this,t)};case 2:return function(t,e){return n.call(this,t,e)};case 3:return function(t,e,r){return n.call(this,t,e,r)};case 4:return function(t,e,r,i){return n.call(this,t,e,r,i)};case 5:return function(t,e,r,i,a){return n.call(this,t,e,r,i,a)};case 6:return function(t,e,r,i,a,o){return n.call(this,t,e,r,i,a,o)};case 7:return function(t,e,r,i,a,o,s){return n.call(this,t,e,r,i,a,o,s)};case 8:return function(t,e,r,i,a,o,s,u){return n.call(this,t,e,r,i,a,o,s,u)};case 9:return function(t,e,r,i,a,o,s,u,l){return n.call(this,t,e,r,i,a,o,s,u,l)};case 10:return function(t,e,r,i,a,o,s,u,l,c){return n.call(this,t,e,r,i,a,o,s,u,l,c)};default:return n}};var Gt=function t(){var e=arguments,n=arguments.length-1;return function(){var t=n;var r=e[t].apply(this,arguments);while(t--){r=e[t].call(this,r)}return r}};var Xt=function t(e,n){return e.indexOf(n)>=0};var Vt=function t(e){return typeof e!=="undefined"&&e!=null&&!Number.isNaN(e)};var Zt=function t(e,n){n||(n=qt);var r=[],i,a,o=[];for(var s=0,u=e.length;s<u;++s){i=e[s];a=n(i,s,e);if(r.indexOf(a)<0){r.push(a);o.push(i)}}return o};var Qt=function t(e,n){for(var r=0;r<n.length;r++){if(!e(n[r])){return false}}return true};var Jt=function t(e,n){var r=new Array(e);for(var i=0;i<e;++i){r[i]=n}return r};var Kt=function t(e,n){for(var r=0;r<n.length;r++){if(e(n[r])){return n[r]}}return undefined};var te=function t(e){return e[0]};var ee=function t(e){return Array.prototype.concat.apply([],e)};var ne=function t(e){if(e.touches&&e.touches.length){return e.touches[0]}else if(e.changedTouches&&e.changedTouches.length){return e.changedTouches[0]}return null};var re=function t(e,n){var r=n[e];if(typeof r==="function"){return r()}throw new Error("[foldPattern] No definition provided for key: "+e)};var ie=function t(e,n){n||(n=qt);var r={},i,a=[];for(var o=0,s=e.length;o<s;++o){i=n(e[o],o,e);if(!r[i]){r[i]=true;a.push(i)}}return a};var ae=function t(e){return typeof e=="function"};var oe=function t(e){return e===null};var se=function t(e){return Object.prototype.toString.call(e)==="[object Number]"&&!Number.isNaN(e)};var ue=function t(e){return Object(e)===e};var le=function t(e){return e[e.length-1]};var ce=function t(e){return function(){return!e.apply(this,arguments)}};var fe=function t(e){return function(t){return t[e]}};var he=function t(e,n){return function(t){var r=t!==undefined?t[e]:undefined;return r!==undefined?r:n}};var de=function t(e,n){n||(n=qt);return e.reduce((function(t,r,i){var a=n(r,i,e);return t.indexOf(a)<0?t.concat(a):t}),[])};var pe=function t(e,n){for(var r=0;r<n.length;r++){if(e(n[r])){return true}}return false};var ve=function t(e,n){return e.toString()===n.toString()};var me=function t(e){return typeof e==="function"?e:function(){return e}};var ge=function t(n,r){if(typeof n!="function"||r!=null&&typeof r!="function"){throw new TypeError("Expected a function")}var i=function t(){var e=arguments,i=r?r.apply(this,e):e[0],a=t.cache;if(a.has(i)){return a.get(i)}var o=n.apply(this,e);t.cache=a.set(i,o)||a;return o};i.cache=e.map();return i};function ye(t,e,n){var r=be(t).selectAll(e+"#"+n).data([0]);var i=r.enter().append(e).attr("id",n);return r.merge(i)}function be(t){var e=t.selectAll("defs").data([0]);var n=e.enter().append("defs");return e.merge(n)}var _e=.6;function xe(t){return function(){var n=e.scaleOrdinal().range(t.map(un));return an(n)}}var we="#3431DE";var $e="#0A8DF6";var ke="#23C3F1";var Me="#7B4FB7";var Se="#DB247D";var Ae="#FB737E";var ze="#007C78";var Ee="#1D942E";var Te="#99C32E";var Re="#9A5B01";var Ce="#FF720C";var Pe="#FBB900";var Ne=xe([we,$e,ke,Me,Se,Ae,ze,Ee,Te,Re,Ce,Pe]);var Le=xe([we,Se,Ee,Pe,ke,Ce]);var Oe=xe([we,$e,ke,Me,Se,Ae]);var De=xe([ze,Ee,Te,Re,Ce,Pe]);function Ie(t){return function(){var n=e.scaleLinear().range(t.map(un));return on(n)}}var Fe=Ie(["#CADEFF","#5B6EFF","#211A8A"]);var Be=Ie(["#FED2EE","#ED408D","#7D0044"]);var He=Ie(["#CFEED8","#34B446","#0C4B1F"]);var je=Ie(["#FCDDBB","#EA5D00","#611F00"]);function qe(t){return function(){var n=e.scaleLinear().range(t.map(un));return on(n)}}var Ue=qe(["#782600","#FFFFFF","#2F2ABB"]);var Ye=qe(["#782600","#F3F3F3","#2F2ABB"]);var We=qe(["#A30059","#FFFFFF","#10652A"]);var Ge=qe(["#A30059","#F3F3F3","#10652A"]);function Xe(t){return function(){var n=e.scaleOrdinal().range(t.map(un));return on(n)}}var Ve=Xe(["#FAFAFA"]);var Ze=Xe(["#EAEAEA"]);var Qe=Xe(["#D6D6D6"]);var Je=Xe(["#B8B8B8"]);var Ke=Xe(["#7C7C7C"]);var tn=Xe(["#545454"]);var en=function t(n){return e.hsl(n).darker(.4)};var nn=function t(n){return e.hsl(n).darker(.7)};var rn=function t(n,r){var i=e.rgb(n);return"rgba("+i.r+","+i.g+","+i.b+","+r+")"};function an(t){t.darker=function(){return an(t.copy().range(t.range().map(ln("darker",_e))))};t.brighter=function(){return an(t.copy().range(t.range().map(ln("brighter",_e))))};t.reverse=function(){return an(t.copy().range(t.range().reverse()))};return t}function on(t){t=sn(t);t.reverse=function(){return on(t.copy().range(t.range().reverse()))};return t}function sn(t){var n=t.domain;t.domain=function(t){if(arguments.length===1){var r=[t[0],e.mean(t),t[1]];return n.call(this,r)}else{return n.apply(this,arguments)}};return t}function un(t){return e.lab(t)}function ln(t){var e=Array.prototype.slice.call(arguments,1);return function(n){return n[t].apply(n,e)}}var cn=function t(e){var n=Ve(),r="#A4A4A4",i=.035,a=.35,o=.65;e.attr("patternUnits","objectBoundingBox").attr("patternContentUnits","objectBoundingBox").attr("x",0).attr("y",0).attr("width",1).attr("height",1);e.append("rect").attr("x",0).attr("y",0).attr("width",1).attr("height",1).attr("fill",n);e.append("line").attr("x1",a).attr("y1",a).attr("x2",o).attr("y2",o).attr("stroke-width",i).attr("stroke",r);e.append("line").attr("x1",o).attr("y1",a).attr("x2",a).attr("y2",o).attr("stroke-width",i).attr("stroke",r)};var fn=function t(e){var n=14,r=14,i="#FAFAFA",a="#CCCCCC";e.attr("patternUnits","userSpaceOnUse").attr("patternContentUnits","userSpaceOnUse").attr("x",0).attr("y",0).attr("width",n).attr("height",r);e.append("rect").attr("x",0).attr("y",0).attr("width",n).attr("height",r).attr("fill",i);e.append("line").attr("x1",1).attr("y1",10).attr("x2",5).attr("y2",14).attr("stroke",a);e.append("line").attr("x1",5).attr("y1",10).attr("x2",1).attr("y2",14).attr("stroke",a);e.append("line").attr("x1",8).attr("y1",3).attr("x2",12).attr("y2",7).attr("stroke",a);e.append("line").attr("x1",12).attr("y1",3).attr("x2",8).attr("y2",7).attr("stroke",a)};var hn=function t(e){var n=6;var r=6;var i=.5;e.attr("patternUnits","userSpaceOnUse").attr("patternContentUnits","userSpaceOnUse").attr("x",0).attr("y",0).attr("width",n).attr("height",r);e.append("rect").attr("x",0).attr("y",0).attr("width",n).attr("height",r).attr("fill","#fff");e.append("line").attr("x1",0).attr("y1",r*i).attr("x2",n*i).attr("y2",0).attr("stroke","#ddd").attr("stroke-linecap","square");e.append("line").attr("x1",n*i).attr("y1",r).attr("x2",n).attr("y2",r*i).attr("stroke","#ddd").attr("stroke-linecap","square")};var dn=function t(e){e.attr("x1",0).attr("y1",0).attr("x2",.55).attr("y2",1).attr("id","lake-fade-gradient");e.append("stop").attr("offset",.74).attr("stop-color","white").attr("stop-opacity",1);e.append("stop").attr("offset",.97).attr("stop-color","white").attr("stop-opacity",0)};var pn=function t(e){e.attr("maskContentUnits","objectBoundingBox");e.append("rect").attr("fill","url(#lake-fade-gradient)").attr("width",1).attr("height",1)};var vn=function t(e){var n=6;var r=6;var i=.5;e.attr("patternUnits","userSpaceOnUse").attr("patternContentUnits","userSpaceOnUse").attr("x",0).attr("y",0).attr("width",n).attr("height",r);e.append("line").attr("x1",0).attr("y1",r*i).attr("x2",n*i).attr("y2",0).attr("stroke","#e6e6e6").attr("stroke-width",1.1);e.append("line").attr("x1",n*i).attr("y1",r).attr("x2",n).attr("y2",r*i).attr("stroke","#e6e6e6").attr("stroke-width",1.1)};function mn(){var t={};var e=null;var n=yn;function r(r){if(e){r.props=function(){return _n(t)};e.apply(r,bn(arguments))}r.each((function(){this.__props__=_n(t);n.apply(this,bn(arguments))}))}r.prop=function(e,n){n||(n=yn);r[e]=gn(t,e,n.bind(r)).bind(r);return r};r.delegate=function(t,e){r[t]=function(){var n=e[t].apply(e,bn(arguments));return arguments.length===0?n:r};return r};r.renderSelection=function(t){e=t;return r};r.render=function(t){n=t;return r};return r}e.selection.prototype.props=function(){if(arguments.length)throw new Error("selection.props() does not accept any arguments");if(this.size()!=1)throw new Error("only one group is supported");if(this._groups[0].length!=1)throw new Error("only one node is supported");var t=this._groups[0];var e=t[0];return e.__props__||{}};function gn(t,e,n){n||(n=yn);return function(){if(!arguments.length)return t[e];t[e]=n.apply(null,bn(arguments));return this}}function yn(t){return t}function bn(t){return Array.prototype.slice.call(t)}function _n(t){var e={};for(var n in t){if({}.hasOwnProperty.call(t,n))e[n]=t[n]}return e}function xn(){return mn().prop("x",me).prop("y",me).prop("r",me).prop("dx",me).prop("dy",me).prop("caption",me).render((function(t){var n=e.select(this);var r=n.props();ye(n,"pattern","data-area-pattern").call(vn);var i=n.selectAll(".sszvis-dataareacircle").data(t);var a=i.enter().append("circle").classed("sszvis-dataareacircle",true);i=i.merge(a);i.attr("cx",r.x).attr("cy",r.y).attr("r",r.r).attr("fill","url(#data-area-pattern)");if(r.caption){var o=n.selectAll(".sszvis-dataareacircle__caption").data(t);var s=o.enter().append("text").classed("sszvis-dataareacircle__caption",true);o=o.merge(s);o.attr("x",r.x).attr("y",r.y).attr("dx",r.dx).attr("dy",r.dy).text(r.caption)}}))}function wn(){return mn().prop("x1").prop("x2").prop("y1").prop("y2").prop("xScale").prop("yScale").prop("dx",me).dx(0).prop("dy",me).dy(0).prop("caption",me).render((function(t){var n=e.select(this);var r=n.props();var i=r.xScale(r.x1);var a=r.yScale(r.y1);var o=r.xScale(r.x2);var s=r.yScale(r.y2);var u=n.selectAll(".sszvis-referenceline").data(t);u.exit().remove();var l=u.enter().append("line").classed("sszvis-referenceline",true);u=u.merge(l);u.attr("x1",i).attr("y1",a).attr("x2",o).attr("y2",s);if(r.caption){var c=n.selectAll(".sszvis-referenceline__caption").data([0]);c.exit().remove();var f=c.enter().append("text").classed("sszvis-referenceline__caption",true);c=c.merge(f);c.attr("transform",(function(){var t=o-i;var e=s-a;var n=Math.atan2(e,t)*180/Math.PI;return"translate("+(i+o)/2+","+(a+s)/2+") rotate("+n+")"})).attr("dx",r.dx).attr("dy",r.dy).text(r.caption)}}))}var $n=function t(e){return Math.floor(e)+.5};var kn=function t(e){var n=Gt(Math.floor,Number);return e.replace(/(translate\()\s*([0-9., ]+)\s*(\))/i,(function(t,e,r,i){var a=r.replace(","," ").replace(/\s+/," ").split(" ").map(n).join(",");return e+a+i}))};var Mn=function t(e){var n=Gt(Math.floor,Number);var r=e.match(/(translate\()\s*([0-9.,\- ]+)\s*(\))/i);var i=r[2].replace(","," ").replace(/\s+/," ").split(" ").map(Number);if(i.length===1)i.push([0]);var a=i.map(n);return[i[0]-a[0],i[1]-a[1]]};function Sn(t,e){return"translate("+t+","+e+")"}function An(){return mn().prop("position").position(me([0,0])).prop("debug").render((function(n){var r=e.select(this);var i=r.props();var a=r.selectAll("[data-tooltip-anchor]").data(n);var o=a.enter().append("rect").attr("height",1).attr("width",1).attr("fill","none").attr("stroke","none").attr("visibility","none").attr("data-tooltip-anchor","");a.exit().remove();a=a.merge(o);a.attr("transform",Gt(t,i.position));if(i.debug){var s=r.selectAll("[data-tooltip-anchor-debug]").data(n);var u=s.enter().append("circle").attr("data-tooltip-anchor-debug","");s.exit().remove();s=s.merge(u);s.attr("r",2).attr("fill","#fff").attr("stroke","#f00").attr("stroke-width",1.5).attr("transform",Gt(t,i.position))}}));function t(t){return Sn.apply(null,t)}}function zn(){return mn().prop("x",me).prop("y0",me).prop("y1",me).render((function(t){var n=e.select(this);var r=n.props();var i=Gt($n,r.x);var a=Gt($n,r.y0);var o=Gt($n,r.y1);n.selectAll(".sszvis-rangeFlag__mark.bottom").data(t).call(En("bottom",i,a));n.selectAll(".sszvis-rangeFlag__mark.top").data(t).call(En("top",i,o));var s=An().position((function(t){return[i(t),$n((r.y0(t)+r.y1(t))/2)]}));n.call(s)}))}function En(t,e,n){return function(r){var i=r.enter().append("circle").classed("sszvis-rangeFlag__mark",true).classed(t,true);r.exit().remove();r=r.merge(i);r.attr("r",3.5).attr("cx",e).attr("cy",n)}}var Tn={decimal:".",thousands:" ",grouping:[3],currency:["CHF ",""],dateTime:"%a. %e. %B %X %Y",date:"%d.%m.%Y",time:"%H:%M:%S",periods:[],days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],shortDays:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],shortMonths:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"]};var Rn=e.timeFormatLocale(Tn).format;var Cn=e.formatLocale(Tn).format;var Pn=function t(e){return String(Math.round(e))};var Nn=function t(e){var n=[[".%L",function(t){return t.getMilliseconds()}],[":%S",function(t){return t.getSeconds()}],["%H:%M",function(t){return t.getMinutes()}],["%H Uhr",function(t){return t.getHours()}],["%a., %d.",function(t){return t.getDay()&&t.getDate()!=1}],["%e. %b",function(t){return t.getDate()!=1}],["%B",function(t){return t.getMonth()}],["%Y",function(){return true}]];for(var r=0;r<n.length;++r){if(n[r][1](e)){return Rn(n[r][0])(e)}}};var Ln=Gt((function(t){return t.toUpperCase()}),Rn("%b"));var On=Rn("%Y");var Dn=function t(){return""};var In=function t(e){var n;var r=Math.abs(e);if(e==null||isNaN(e)){return"–"}else if(r>=1e4){return Cn(",.0f")(e)}else if(r>=100){n=Math.min(1,qn(e));return Un(Cn("."+n+"f")(e))}else if(r>0){n=Math.min(2,qn(e));return Un(Cn("."+n+"f")(e))}else{return Cn(".0f")(0)}};var Fn=function t(e,n){if(arguments.length>1)return t(e)(n);return function(t){var n=Math.abs(t);if(n>=100&&n<1e4){return Cn("."+e+"f")(t)}else{return Cn(",."+e+"f")(t)}}};var Bn=function t(e){return In(e)+" %"};var Hn=function t(e){return In(e*100)+" %"};var jn=function t(e){return String(e)};function qn(t){return(String(Math.abs(t)).split(".")[1]||"").length}function Un(t){return t.replace(/(\.[0-9]*[1-9])0+$|\.0*$/,"$1")}function Yn(){return mn().prop("x",me).prop("y0",me).prop("y1",me).prop("top").prop("bottom").prop("label").prop("removeStroke").label(me("")).prop("total").prop("flip",me).flip(false).render((function(t){var n=e.select(this);var r=n.props();var i=Gt($n,r.x);var a=Gt($n,r.y0);var o=Gt($n,r.y1);var s=function t(e){return $n((r.y0(e)+r.y1(e))/2)};var u=1.5;var l=n.selectAll(".sszvis-rangeRuler__rule").data([0]);var c=l.enter().append("line").classed("sszvis-rangeRuler__rule",true);l.exit().remove();l=l.merge(c);l.attr("x1",i).attr("y1",r.top).attr("x2",i).attr("y2",r.bottom);var f=n.selectAll(".sszvis-rangeRuler--mark").data(t);var h=f.enter().append("g").classed("sszvis-rangeRuler--mark",true);f.exit().remove();f=f.merge(h);h.append("circle").classed("sszvis-rangeRuler__p1",true);h.append("circle").classed("sszvis-rangeRuler__p2",true);h.append("text").classed("sszvis-rangeRuler__label",true);f.selectAll(".sszvis-rangeRuler__p1").data((function(t){return[t]})).attr("cx",i).attr("cy",a).attr("r",u);f.selectAll(".sszvis-rangeRuler__p2").data((function(t){return[t]})).attr("cx",i).attr("cy",o).attr("r",u);f.selectAll(".sszvis-rangeRuler__label").data((function(t){return[t]})).attr("x",(function(t){var e=r.flip(t)?-10:10;return i(t)+e})).attr("y",s).attr("dy","0.35em").style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).text(Gt(In,r.label));if(!r.removeStroke){f.attr("stroke","white").attr("stroke-width",.5).attr("stroke-opacity",.75)}var d=n.selectAll(".sszvis-rangeRuler__total").data([le(t)]);var p=d.enter().append("text").classed("sszvis-rangeRuler__total",true);d.exit().remove();d=d.merge(p);d.attr("x",(function(t){var e=r.flip(t)?-10:10;return i(t)+e})).attr("y",r.top-10).style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).text("Total "+In(r.total));if(!r.removeStroke){d.attr("stroke","white").attr("stroke-width",.5).attr("stroke-opacity",.75)}}))}function Wn(){return mn().prop("x",me).prop("y",me).prop("width",me).prop("height",me).prop("dx",me).prop("dy",me).prop("caption",me).render((function(t){var n=e.select(this);var r=n.props();ye(n,"pattern","data-area-pattern").call(vn);var i=n.selectAll(".sszvis-dataarearectangle").data(t);var a=i.enter().append("rect").classed("sszvis-dataarearectangle",true);i=i.merge(a);i.attr("x",r.x).attr("y",r.y).attr("width",r.width).attr("height",r.height).attr("fill","url(#data-area-pattern)");if(r.caption){var o=n.selectAll(".sszvis-dataarearectangle__caption").data(t);var s=o.enter().append("text").classed("sszvis-dataarearectangle__caption",true);o=o.merge(s);o.attr("x",(function(t,e){return r.x(t,e)+r.width(t,e)/2})).attr("y",(function(t,e){return r.y(t,e)+r.height(t,e)/2})).attr("dx",r.dx).attr("dy",r.dy).text(r.caption)}}))}function Gn(){return mn().prop("top").prop("bottom").prop("x",me).prop("y",me).prop("label").label(me("")).prop("color").prop("flip",me).flip(false).prop("labelId",me).prop("reduceOverlap").reduceOverlap(true).render((function(t){var n=e.select(this);var r=n.props();var i=r.labelId||function(t){return r.x(t)+"_"+r.y(t)};var a=n.selectAll(".sszvis-ruler__rule").data(t,i);var o=a.enter().append("line").classed("sszvis-ruler__rule",true);a.exit().remove();a=a.merge(o);a.attr("x1",Gt($n,r.x)).attr("y1",r.y).attr("x2",Gt($n,r.x)).attr("y2",r.bottom);var s=n.selectAll(".sszvis-ruler__dot").data(t,i);var u=s.enter().append("circle").classed("sszvis-ruler__dot",true);s.exit().remove();s=s.merge(u);s.attr("cx",Gt($n,r.x)).attr("cy",Gt($n,r.y)).attr("r",3.5).attr("fill",r.color);var l=n.selectAll(".sszvis-ruler__label-outline").data(t,i);var c=l.enter().append("text").classed("sszvis-ruler__label-outline",true);l.exit().remove();l=l.merge(c);var f=n.selectAll(".sszvis-ruler__label").data(t,i);var h=f.enter().append("text").classed("sszvis-ruler__label",true);f.exit().remove();f=f.merge(h);var d=Gt($n,r.x);var p=Gt($n,r.y);var v=n.selectAll(".sszvis-ruler__label, .sszvis-ruler__label-outline").attr("transform",(function(t){var e=d(t);var n=p(t);var i=r.flip(t)?-10:10;var a=n<r.top+a?2*a:n>r.bottom-a?0:5;return Sn(e+i,n+a)})).style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).html(r.label);if(r.reduceOverlap){var m=2;var g=10;var y=[];var b={};v.attr("y","");f.each((function(t){var e=this.getBoundingClientRect();var n={top:e.top,bottom:e.bottom,dy:0};y.push(n);b[i(t)]=n}));y.sort((function(t,n){return e.ascending(t.top,n.top)}));while(g--){y.forEach((function(t,e){y.slice(e+1).forEach((function(e){var n=t.bottom-e.top;if(n>=m){var r=n/2;t.bottom-=r;t.top-=r;t.dy-=r;e.bottom+=r;e.top+=r;e.dy+=r}}))}))}v.attr("y",(function(t){var e=b[i(t)];return e.dy}))}}))}var Xn=3;var Vn=4;var Zn=6;var Qn=5;function Jn(){var t=Kn();return mn().delegate("header",t).delegate("body",t).delegate("orientation",t).delegate("dx",t).delegate("dy",t).delegate("opacity",t).prop("renderInto").prop("visible",me).visible(false).renderSelection((function(e){var n=e.props();var r=n.renderInto.node().getBoundingClientRect();var i=[];e.each((function(t){if(n.visible(t)){var e=this.getBoundingClientRect();var a=[e.left-r.left,e.top-r.top];i.push({datum:t,x:a[0],y:a[1]})}}));n.renderInto.datum(i).call(t)}))}var Kn=function t(){return mn().prop("header").prop("body").prop("orientation",me).orientation("bottom").prop("dx",me).dx(1).prop("dy",me).dy(1).prop("opacity",me).opacity(1).renderSelection((function(t){var n=t.datum();var r=t.props();var i=Vt;var a=i(r.header)&&!i(r.body)||!i(r.header)&&i(r.body);var o=t.selectAll(".sszvis-tooltip").data(n);o.exit().remove();var s=o.enter().append("div");o=o.merge(s);o.style("pointer-events","none").style("opacity",r.opacity).style("padding-top",(function(t){return r.orientation(t)==="top"?Zn+"px":null})).style("padding-right",(function(t){return r.orientation(t)==="right"?Zn+"px":null})).style("padding-bottom",(function(t){return r.orientation(t)==="bottom"?Zn+"px":null})).style("padding-left",(function(t){return r.orientation(t)==="left"?Zn+"px":null})).classed("sszvis-tooltip",true);var u=s.append("svg").attr("class","sszvis-tooltip__background").attr("height",0).attr("width",0);var l=u.append("path");if(nr()){var c=u.append("filter").attr("id","sszvisTooltipShadowFilter").attr("height","150%");c.append("feGaussianBlur").attr("in","SourceAlpha").attr("stdDeviation",2);c.append("feComponentTransfer").append("feFuncA").attr("type","linear").attr("slope",.2);var f=c.append("feMerge");f.append("feMergeNode");f.append("feMergeNode").attr("in","SourceGraphic");l.attr("filter","url(#sszvisTooltipShadowFilter)")}else{u.classed("sszvis-tooltip__background--fallback",true)}var h=s.append("div").classed("sszvis-tooltip__content",true);h.append("div").classed("sszvis-tooltip__header",true);h.append("div").classed("sszvis-tooltip__body",true);o.select(".sszvis-tooltip__header").datum(fe("datum")).html(r.header||me(""));o.select(".sszvis-tooltip__body").datum(fe("datum")).html((function(t){var e=r.body?me(r.body)(t):"";return Array.isArray(e)?tr(e):e}));t.selectAll(".sszvis-tooltip").classed("sszvis-tooltip--small",a).each((function(t){var n=e.select(this);var i=n.node().getBoundingClientRect();var o=r.orientation.apply(this,arguments);switch(o){case"top":n.style("left",t.x-i.width/2+"px").style("top",t.y+r.dy(t)+"px");break;case"bottom":n.style("left",t.x-i.width/2+"px").style("top",t.y-r.dy(t)-i.height+"px");break;case"left":n.style("left",t.x+r.dx(t)+"px").style("top",t.y-i.height/2+"px");break;case"right":n.style("left",t.x-r.dx(t)-i.width+"px").style("top",t.y-i.height/2+"px");break}var s=i.height+2*Qn;var u=i.width+2*Qn;n.select(".sszvis-tooltip__background").attr("height",s).attr("width",u).style("left",-Qn+"px").style("top",-Qn+"px").select("path").attr("d",er([Qn,Qn],[u-Qn,s-Qn],o,a?Xn:Vn))}))}))};function tr(t){var e=t.map((function(t){return"<tr>"+t.map((function(t){return"<td>"+t+"</td>"})).join("")+"</tr>"})).join("");return'<table class="sszvis-tooltip__body__table">'+e+"</table>"}function er(t,e,n,r){switch(n){case"top":t[1]=t[1]+Zn;break;case"bottom":e[1]=e[1]-Zn;break;case"left":t[0]=t[0]+Zn;break;case"right":e[0]=e[0]-Zn;break}function i(t){return t[0]}function a(t){return t[1]}function o(t,e,n,r,i,a,o){var s=n+(i-n)/2;var u=r+(a-r)/2;var l=["Q",t,e,n,r];var c=[];if(o&&r===a){if(n<i){c=["L",s-Zn,u,"L",s,u-Zn,"L",s+Zn,u]}else{c=["L",s+Zn,u,"L",s,u+Zn,"L",s-Zn,u]}}else if(o&&n===i){if(r<a){c=["L",s,u-Zn,"L",s+Zn,u,"L",s,u+Zn]}else{c=["L",s,u+Zn,"L",s-Zn,u,"L",s,u-Zn]}}var f=["L",i,a];return[].concat(l,c,f)}return[["M",i(t),a(t)+r],o(i(t),a(t),i(t)+r,a(t),i(e)-r,a(t),n==="top"),o(i(e),a(t),i(e),a(t)+r,i(e),a(e)-r,n==="right"),o(i(e),a(e),i(e)-r,a(e),i(t)+r,a(e),n==="bottom"),o(i(t),a(e),i(t),a(e)-r,i(t),a(t)+r,n==="left")].map((function(t){return t.join(" ")})).join(" ")}function nr(){return window["SVGFEColorMatrixElement"]!==undefined&&SVGFEColorMatrixElement.SVG_FECOLORMATRIX_TYPE_SATURATE==2}function rr(t,e){var n=Math.min(e.innerWidth*1/4,100);var r=Math.max(e.innerWidth*3/4,e.innerWidth-100);return function(e){var i=e.x;return i>r?"right":i<n?"left":t}}var ir=function t(){var e=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect;return!e};var ar=function t(){var e=!!document.createElement("canvas").getContext;return!e};var or=function t(n,r){r||(r={});r.src||(r.src="fallback.png");var i=Yt(n)?n:e.select(n);i.append("img").attr("class","sszvis-fallback-image").attr("src",r.src)};var sr=function(t,e,n){var r=0,i;arguments.length<3&&(n=true);return function(){var a=arguments;var o=this;i=function(){t.apply(o,a);r=(new Date).getTime()+e;i=null;n&&setTimeout((function(){i&&i()}),e)};if((new Date).getTime()>r)i()}};var ur={resize:[]};if(typeof window!=="undefined"){e.select(window).on("resize",sr((function(){fr("resize")}),500))}var lr=function t(e,n){if(!ur[e]){ur[e]=[]}ur[e]=ur[e].filter((function(t){return t!==n})).concat(n);return this};var cr=function t(e,n){if(!ur[e]){return this}ur[e]=ur[e].filter((function(t){return t!==n}));return this};var fr=function t(e){var n=Array.prototype.slice.call(arguments,1);if(ur[e]){ur[e].forEach((function(t){t.apply(null,n)}))}return this};var hr={on:lr,off:cr,trigger:fr};var dr=function t(e){var n=e.init,r=e.render,i=e.actions,a=i===void 0?{}:i,o=e.fallback;var s;var u;pr(vr(n),'An "init" function returning a Promise must be provided.');pr(vr(r),'A "render" function must be provided.');var l=Object.keys(a).reduce((function(t,e){t[e]=function(t){f(e,t)};return t}),{});function c(t){if(!s){s=true;requestAnimationFrame((function(){r(u,l);s=false}))}if(vr(t))t(f)}function f(t,e){pr(a[t]!=null,'Action "'.concat(t,'" is not defined, add it to "actions".'));var n=nt(u);var r=a[t](n,e);u=rt(n);c(r)}var h=nt({});n(h).then((function(t){u=rt(h);c(t);hr.on("resize",c)})).catch((function(t){pr(false,t);o&&or(o.element,{src:o.src})}))};function pr(t,e){if(!t){throw new Error("[sszvis.app] ".concat(e))}}function vr(t){return typeof t==="function"}function mr(t,e){var n=kr(e);return Kt((function(t){return yr(t,n)}),t)}function gr(t,e){var n=function t(n){return n.name===e};return Kt(n,t)}function yr(t,e){var n=t.measurement;var r=kr(e);return r.width<=n.width&&r.screenHeight<=n.screenHeight}function br(t,e){var n=kr(e);return t.filter((function(t){return yr(t,n)}))}function _r(t){return t.map(Mr).concat(Mr({name:"_"}))}var xr=function(){var t=_r([{name:"palm",width:540},{name:"lap",width:749}]);return function(){return t}}();var wr=Sr("palm");var $r=Sr("lap");function kr(t){var e=he("width",Infinity);var n=he("screenHeight",Infinity);return{width:e(t),screenHeight:n(t)}}function Mr(t){var e;if(Vt(t.measurement)){e=kr(t.measurement)}else{e=kr({width:t.width,screenHeight:t.screenHeight})}return{name:t.name,measurement:e}}function Sr(t){return function(e){return yr(gr(xr(),t),e)}}function Ar(t,e){var n=t/e;return function(t){return t/n}}var zr=Ar(4,3);var Er=Ar(16,10);var Tr=500;var Rr=function t(e){return Math.min(Ar(12,5)(e),Tr)};Rr.MAX_HEIGHT=Tr;var Cr=420;var Pr=function t(e){return Math.min(Ar(1,1)(e),Cr)};Pr.MAX_HEIGHT=Cr;var Nr=600;var Lr=function t(e){return Math.min(Ar(4,5)(e),Nr)};Lr.MAX_HEIGHT=Nr;var Or={palm:zr,lap:Er,_:Rr};var Dr=function t(e){var n=mr(xr(),e);var r=Or[n.name];return r(e.width)};var Ir=Br("warn");var Fr=Br("error");function Br(t){return function(){if(console&&console[t]){Hr(arguments).forEach((function(e){console[t](e)}))}}}function Hr(t){return Array.prototype.slice.call(t)}var jr=function t(e){return e.rangeExtent?e.rangeExtent():qr(e.range())};function qr(t){var e=t[0],n=t[t.length-1];return e<n?[e,n]:[n,e]}function Ur(t,n,r,i){r=r||5;i=(i||5)-2;var a=n;n=n-r*2;var o=[];t.each((function(){var t=e.select(this);var s=t.text().split(/[ \f\n\r\t\v]+/).reverse();var u;var l=[];var c=0;var f=1.1;var h;var d=t.attr("y");var p=parseFloat(t.attr("dy"));var v=1;var m=t.style("text-anchor")||"start";if(isNaN(p))p=0;var g=e.select(t.node().parentNode).classed("tick");if(g){switch(m){case"start":h=-n/2;break;case"middle":h=0;break;case"end":h=n/2;break}}else{switch(m){case"start":h=r;break;case"middle":h=a/2;break;case"end":h=a-r;break}}d=+(null===d?i:d);var y=t.text(null).append("tspan").attr("x",h).attr("y",d).attr("dy",p+"em");while(s.length>0){u=s.pop();l.push(u);y.text(l.join(" "));if(y.node().getComputedTextLength()>n&&l.length>1){l.pop();y.text(l.join(" "));l=[u];y=t.append("tspan").attr("x",h).attr("y",d).attr("dy",++c*f+p+"em").text(u);++v}}o.push(v)}));return o}var Yr=8;var Wr=12;var Gr=10;var Xr=function t(){var n=mn().prop("scale").prop("orient").prop("ticks").prop("tickValues").prop("tickSize").prop("tickSizeInner").prop("tickSizeOuter").prop("tickPadding").prop("tickFormat").prop("_scale").prop("orient").orient("bottom").prop("alignOuterLabels").alignOuterLabels(false).prop("contour").prop("removeStroke").prop("hideBorderTickThreshold").hideBorderTickThreshold(Yr).prop("hideLabelThreshold").hideLabelThreshold(Gr).prop("highlightTick",me).prop("showZeroY").showZeroY(false).prop("slant").prop("textWrap").prop("tickLength").prop("title").prop("titleAnchor").prop("titleCenter").prop("dxTitle").prop("dyTitle").prop("titleVertical").prop("vertical").vertical(false).prop("yOffset").yOffset(0).render((function(){var t=e.select(this);var n=t.props();var r=!n.vertical&&n.orient==="bottom";var i=function(){switch(n.orient){case"bottom":return e.axisBottom();case"top":return e.axisTop();case"left":return e.axisLeft();case"right":return e.axisRight()}}();["scale","ticks","tickValues","tickSizeInner","tickSizeOuter","tickPadding","tickFormat","tickSize"].forEach((function(t){if(n[t]!==undefined){if(i[t]===undefined){throw new Error('axis: "'+t+'" not available')}i[t](n[t])}}));if(n._scale){i.scale(n._scale)}var a=t.selectGroup("sszvis-axis").classed("sszvis-axis",true).classed("sszvis-axis--top",!n.vertical&&n.orient==="top").classed("sszvis-axis--bottom",r).classed("sszvis-axis--vertical",n.vertical).attr("transform",Sn(0,n.yOffset)).call(i);a.attr("fill",null).attr("font-size",null).attr("font-family",null);var o=i.scale();var s=a.selectAll("g.tick");var u=s.selectAll("text");s.each((function(){var t=Mn(this.getAttribute("transform"));var n=$n(0)-t[0];var i=$n(r?2:0)+t[1];e.select(this).select("line").attr("transform",Sn(n,i))}));u.each((function(){if(n.orient==="top"||n.orient==="bottom"){e.select(this).attr("dx","-0.5")}if(n.orient==="left"||n.orient==="right"){e.select(this).attr("y","-0.5")}}));a.selectAll("path.domain");var l=jr(o);s.selectAll("line").each((function(t){var r=o(t),i=e.select(this);i.classed("hidden",!i.classed("sszvis-axis__longtick")&&(Jr(r,l[0])<n.hideBorderTickThreshold||Jr(r,l[1])<n.hideBorderTickThreshold))}));if(Vt(n.tickLength)){var c=e.extent(o.domain());var f=s.filter((function(t){return!ve(t,c[0])&&!ve(t,c[1])}));var h=n.orient;var d=2;if(h==="left"||h==="right"){f.selectAll("text").each((function(){d=Math.max(this.getBoundingClientRect().width,d)}));d+=2}var p=f.selectAll("line.sszvis-axis__longtick").data([0]);if(n.tickLength>d){var v=p.enter().append("line").classed("sszvis-axis__longtick",true);p=p.merge(v);if(h==="top"){p.attr("y1",d).attr("y2",n.tickLength)}else if(h==="bottom"){p.attr("y1",-d).attr("y2",-n.tickLength)}else if(h==="left"){p.attr("x1",-d).attr("x2",-n.tickLength)}else if(h==="right"){p.attr("x1",d).attr("x2",n.tickLength)}}else{p.remove()}}if(n.alignOuterLabels){var m=jr(o);var g=m[0];var y=m[1];u.style("text-anchor",(function(t){var e=o(t);if(Jr(e,g)<Wr){return"start"}else if(Jr(e,y)<Wr){return"end"}return"middle"}))}if(Vt(n.textWrap)){u.call(Ur,n.textWrap)}if(n.slant){u.call(ti[n.orient][n.slant])}if(n.highlightTick){var b=[];var _=[];u.classed("hidden",false).classed("active",n.highlightTick);if(n.hideLabelThreshold>0&&!n.slant){u.each((function(t){var e=this.getBoundingClientRect();var r={node:this,bounds:{top:e.top,right:e.right,bottom:e.bottom,left:e.left}};if(n.highlightTick(t)){r.bounds.left-=n.hideLabelThreshold;r.bounds.right+=n.hideLabelThreshold;b.push(r)}else{_.push(r)}}));b.forEach((function(t){_.forEach((function(n){e.select(n.node).classed("hidden",Kr(n.bounds,t.bounds))}))}))}}if(n.title){var x=a.selectAll(".sszvis-axis__title").data([n.title]);var w=x.enter().append("text").classed("sszvis-axis__title",true);x.exit().remove();x.merge(w).text((function(t){return t})).attr("transform",(function(){var t=n.orient,e=jr(o),r;if(n.titleCenter){r={left:t==="left"||t==="right"?0:t==="top"||t==="bottom"?(e[0]+e[1])/2:0,top:t==="left"||t==="right"?(e[0]+e[1])/2:t==="top"?0:t==="bottom"?32:0}}else{r={left:t==="left"||t==="right"||t==="top"?0:t==="bottom"?e[1]:0,top:t==="left"||t==="right"||t==="top"?0:t==="bottom"?32:0}}r.vertical=!!n.titleVertical;r.left+=n.dxTitle||0;r.top+=n.dyTitle||0;return"translate("+r.left+", "+r.top+") rotate("+(r.vertical?"-90":"0")+")"})).style("text-anchor",(function(){var t=n.orient;if(typeof n.titleAnchor!=="undefined"){return n.titleAnchor}else if(t==="left"){return"end"}else if(t==="right"){return"start"}else if(t==="top"||t==="bottom"){return"end"}}))}if(n.contour&&n.slant){Ir("Can't apply contour to slanted labels")}else if(n.contour){s.each((function(){var t=e.select(this);var n=t.select("text").node();var r=t.select(".sszvis-axis__label-contour");if(r.empty()){r=e.select(n.cloneNode()).classed("sszvis-axis__label-contour",true);this.insertBefore(r.node(),n)}r.text(n.textContent)}))}if(!n.removeStroke){s.each((function(){var t=e.select(this);var n=t.select("text");n.attr("stroke","white").attr("stroke-width",.5).attr("stroke-opacity",.75)}))}}));return n};var Vr=function t(e){var n=this.scale().domain(),r=[],i=Math.round(n.length/e);if(typeof n[0]!=="undefined")r.push(n[0]);for(var a=i,o=n.length;a<o-1;a+=i){if(typeof n[a]!=="undefined")r.push(n[a])}if(typeof n[n.length-1]!=="undefined")r.push(n[n.length-1]);this.tickValues(r);return e};var Zr=function t(){return Xr().yOffset(2).ticks(3).tickSizeInner(4).tickSizeOuter(6.5).tickPadding(6).tickFormat(Wt(1,In))};Zr.time=function(){return Zr().tickFormat(Nn).alignOuterLabels(true)};Zr.ordinal=function(){return Zr().prop("ticks",Vr).tickFormat(jn)};Zr.pyramid=function(){return Zr().ticks(10).prop("scale",(function(t){var e=t.copy(),n=e.domain(),r=e.range();e.domain([-n[1],n[1]]).range([r[0]-r[1],r[0]+r[1]]);this._scale(e);return e})).tickFormat((function(t){return In(Math.abs(t))}))};var Qr=function t(){var e=Xr().ticks(6).tickSize(0,0).tickPadding(0).tickFormat((function(t){return 0===t&&!e.showZeroY()?null:In(t)})).vertical(true);return e};Qr.time=function(){return Qr().tickFormat(Nn)};Qr.ordinal=function(){return Qr().prop("ticks",Vr).tickFormat(jn)};function Jr(t,e){return Math.abs(t-e)}function Kr(t,e){return!(e.left>t.right||e.right<t.left||e.top>t.bottom||e.bottom<t.top)}var ti={top:{horizontal:function t(e){e.style("text-anchor","middle").attr("dx","-0.5").attr("dy","0.71em").attr("transform",null)},vertical:function t(e){e.style("text-anchor","start").attr("dx","0em").attr("dy","0.35em").attr("transform","rotate(-90)")},diagonal:function t(e){e.style("text-anchor","start").attr("dx","0.1em").attr("dy","0.1em").attr("transform","translate(-0.5) rotate(-45)")}},bottom:{horizontal:function t(e){e.style("text-anchor","middle").attr("dx","-0.5").attr("dy","0.71em").attr("transform",null)},vertical:function t(e){e.style("text-anchor","end").attr("dx","-1em").attr("dy","-0.75em").attr("transform","rotate(-90)")},diagonal:function t(e){e.style("text-anchor","end").attr("dx","-0.8em").attr("dy","0em").attr("transform","rotate(-45)")}}};function ei(){var t=e.dispatch("start","move","drag","end");var n=mn().prop("debug").prop("xScale").prop("yScale").prop("draggable").prop("cancelScrolling",me).cancelScrolling(false).prop("fireOnPanOnly",me).fireOnPanOnly(false).prop("padding",(function(t){var e={top:0,left:0,bottom:0,right:0};for(var n in t){e[n]=t[n]}return e})).padding({}).render((function(){var n=e.select(this);var r=n.props();var i=jr(r.xScale).sort(e.ascending);var a=jr(r.yScale).sort(e.ascending);i[0]-=r.padding.left;i[1]+=r.padding.right;a[0]-=r.padding.top;a[1]+=r.padding.bottom;var o=n.selectAll("[data-sszvis-behavior-move]").data([0]);var s=o.enter().append("rect").attr("data-sszvis-behavior-move","").attr("class","sszvis-interactive");o=o.merge(s);if(r.draggable){o.classed("sszvis-interactive--draggable",true)}o.attr("x",i[0]).attr("y",a[0]).attr("width",i[1]-i[0]).attr("height",a[1]-a[0]).attr("fill","transparent").on("mouseover",(function(){t.apply("start",this,arguments)})).on("mousedown",(function(){var n=this;var i=e.select(document);var a=e.select(window);var o=function i(){var a=e.mouse(n);var o=ni(r.xScale,a[0]);var s=ni(r.yScale,a[1]);e.event.preventDefault();t.apply("drag",this,[o,s])};var s=function t(){n.__dragging__=true;o()};var u=function e(){n.__dragging__=false;a.on("mouseup.sszvis-behavior-move",null);a.on("mousemove.sszvis-behavior-move",null);i.on("mouseout.sszvis-behavior-move",null);t.apply("end",this,arguments)};a.on("mousemove.sszvis-behavior-move",o);a.on("mouseup.sszvis-behavior-move",u);i.on("mouseout.sszvis-behavior-move",(function(){var t=e.event.relatedTarget||e.event.toElement;if(!t||t.nodeName==="HTML"){u()}}));s()})).on("mousemove",(function(){var n=this;var i=e.mouse(this);var a=ni(r.xScale,i[0]);var o=ni(r.yScale,i[1]);if(!n.__dragging__){t.apply("move",this,[a,o])}})).on("mouseout",(function(){t.apply("end",this,[])})).on("touchstart",(function(){var n=te(e.touches(this));var i=ni(r.xScale,n[0]);var a=ni(r.yScale,n[1]);var o=r.cancelScrolling(i,a);if(o){e.event.preventDefault()}if(!r.fireOnPanOnly()||o){t.apply("start",this,[i,a]);t.apply("drag",this,[i,a]);t.apply("move",this,[i,a]);var s=function n(){var i=te(e.touches(this));var a=ni(r.xScale,i[0]);var o=ni(r.yScale,i[1]);var s=r.cancelScrolling(a,o);if(s){e.event.preventDefault()}if(!r.fireOnPanOnly()||s){t.apply("drag",this,[a,o]);t.apply("move",this,[a,o])}else{t.apply("end",this,[])}};var u=function n(){t.apply("end",this,[]);e.select(this).on("touchmove",null).on("touchend",null)};e.select(this).on("touchmove",s).on("touchend",u)}}));if(r.debug){o.attr("fill","rgba(255,0,0,0.2)")}}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function ni(t,e){var n=t.invert?"Linear":t.paddingInner?"Band":"Point";switch(n){case"Linear":{return t.invert(e)}case"Band":return ri(t,e);case"Point":return ii(t,e);default:{throw new Error("Unknown scale type, could not invert")}}}function ri(t,e){var n=t.step();var r=t.paddingOuter()*n;var i=t.paddingInner()*n;var a=t.bandwidth();var o=t.range();var s=t.domain();if(s.length===1){if(o[0]<=e&&o[1]>=e){return s[0]}return null}var u=s.map((function(t,e){if(e===0){return[o[0],o[0]+r+a+i/2]}else if(e===s.length-1){return[o[1]-(r+a+i/2),o[1]]}else{return[o[0]+r+e*n-i/2,o[0]+r+(e+1)*n-i/2]}}));for(var l=0,c=u.length;l<c;l++){if(u[l][0]<e&&e<=u[l][1]){return s[l]}}return null}function ii(t,e){var n=t.step();var r=t.padding()*n;var i=t.range();var a=t.domain();if(a.length===1){if(i[0]<=e&&i[1]>=e){return a[0]}return null}var o=a.map((function(t,e){if(e===0){return[i[0],i[0]+r+n/2]}else if(e===a.length-1){return[i[1]-(r+n/2),i[1]]}else{return[i[0]+r+e*n-n/2,i[0]+r+e*n+n/2]}}));for(var s=0,u=o.length;s<u;s++){if(o[s][0]<e&&e<=o[s][1]){return a[s]}}return null}var ai=function t(e){if(!oe(e)&&Vt(e)){return document.elementFromPoint(e.clientX,e.clientY)}return null};var oi=function t(n){if(!oe(n)){var r=e.select(n);if(!oe(r.attr("data-sszvis-behavior-pannable"))){var i=r.datum();if(Vt(i)){return i}}}return null};var si=function t(e){return oi(ai(e))};function ui(){var t=e.dispatch("start","pan","end");var n=mn().prop("elementSelector").render((function(){var n=e.select(this);var r=n.props();var i=n.selectAll(r.elementSelector);i.attr("data-sszvis-behavior-pannable","").classed("sszvis-interactive",true).on("mouseenter",(function(){t.apply("start",this,arguments)})).on("mousemove",(function(){t.apply("pan",this,arguments)})).on("mouseleave",(function(){t.apply("end",this,arguments)})).on("touchstart",(function(){e.event.preventDefault();t.apply("start",this,arguments)})).on("touchmove",(function(){e.event.preventDefault();var n=si(ne(e.event));if(n!==null){t.apply("pan",this,arguments)}else{t.apply("end",this,arguments)}})).on("touchend",(function(){t.apply("end",this,arguments)}))}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function li(){var t=e.dispatch("over","out");var n=mn().prop("x").prop("y").prop("bounds").prop("debug").render((function(n){var r=e.select(this);var i=r.props();if(!i.bounds){Fr("behavior.voronoi - requires bounds");return false}var a=e.voronoi().x(i.x).y(i.y).extent(i.bounds);var o=r.selectAll("[data-sszvis-behavior-voronoi]").data(a.polygons(n));var s=o.enter().append("path").attr("data-sszvis-behavior-voronoi","").attr("data-sszvis-behavior-pannable","").attr("class","sszvis-interactive");o.exit().remove();o=o.merge(s);o.attr("d",(function(t){return"M"+t.join("L")+"Z"})).attr("fill","transparent").on("mouseover",(function(n){var r=this.parentNode.getBoundingClientRect();if(fi(e.event,[r.left+i.x(n.data),r.top+i.y(n.data)])){t.apply("over",this,[n.data])}})).on("mousemove",(function(n){var r=this.parentNode.getBoundingClientRect();if(fi(e.event,[r.left+i.x(n.data),r.top+i.y(n.data)])){t.apply("over",this,[n.data])}else{t.apply("out",this,[])}})).on("mouseout",(function(){t.apply("out",this,[])})).on("touchstart",(function(n){var r=this.parentNode.getBoundingClientRect();if(fi(ne(e.event),[r.left+i.x(n.data),r.top+i.y(n.data)])){e.event.preventDefault();t.apply("over",this,[n.data]);var a=function n(){var r=ne(e.event);var a=ai(r);var o=oi(a);if(o!==null){var s=a.parentNode.getBoundingClientRect();if(fi(r,[s.left+i.x(o.data),s.top+i.y(o.data)])){if(e.event.cancelable){e.event.preventDefault()}t.apply("over",this,[o.data])}else{t.apply("out",this,[])}}else{t.apply("out",this,[])}};var o=function n(){t.apply("out",this,[]);e.select(this).on("touchmove",null).on("touchend",null)};e.select(this).on("touchmove",a).on("touchend",o)}}));if(i.debug){o.attr("stroke","#f00")}}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}var ci=Math.pow(15,2);function fi(t,e){var n=t.clientX-e[0];var r=t.clientY-e[1];return n*n+r*r<ci}var hi=function t(n){var r;if(Ut(n)){r=e.select(n).node()}else if(Yt(n)){r=n.node()}else{r=n}return{width:r?r.getBoundingClientRect().width:undefined,screenWidth:window.innerWidth,screenHeight:window.innerHeight}};var di=function(){var t=document.createElement("canvas");var e=t.getContext("2d");var n={};return function(t,r,i){var a=[t,r,i].join("-");e.font=t+"px "+r;return n[a]||(n[a]=e.measureText(i).width)}}();var pi=function t(e){return di(10,"Arial, sans-serif",e)};var vi=function t(e){return di(12,"Arial, sans-serif",e)};var mi=516;function gi(t,n){var r=null,i=null;if(arguments.length===0){r={}}else if(arguments.length===1){if(ue(t)){r=t}else if(Yt(t)){r={};i=t}else{r={};i=e.select(t)}}else{r=t;if(Yt(n)){i=n}else{i=e.select(n)}}var a={top:bi(r.top,0),right:bi(r.right,1),bottom:bi(r.bottom,0),left:bi(r.left,1)};var o=Vt(i)?hi(i):{width:mi};var s=bi(r.width,o.width);var u=Dr(o);var l=bi(r.height,u+a.top+a.bottom);return{innerHeight:l-a.top-a.bottom,innerWidth:s-a.left-a.right,padding:a,height:l,width:s,screenWidth:o.screenWidth,screenHeight:o.screenHeight}}var yi=16/9;function bi(t,e){return typeof t==="undefined"?e:t}function _i(t,e){var n={},r;for(var i=0,a=t.length,o;i<a;++i){o=t[i];r=e(o);n[r]?n[r].push(o):n[r]=[o]}return n}function xi(t,e){for(var n in t){e(t[n],n)}}function wi(t,e){for(var n=0,r=t.length;n<r;++n){e(t[n],n)}}function $i(){var t={},e=[],n=[],r;function i(t,a){if(a>=e.length){if(r)t.sort(r);return t}var o=n[a];var s=e[a++];var u=_i(t,s.func);if(s.type==="obj"){var l={};xi(u,(function(t,e){l[e]=i(t,a)}));return l}else if(s.type==="arr"){var c=[];if(o){var f=Object.keys(u).sort(o);wi(f,(function(t){c.push(i(u[t],a))}))}else{xi(u,(function(t){c.push(i(t,a))}))}return c}}t.apply=function(t){return i(t,0)};t.objectBy=function(n){e.push({type:"obj",func:n});return t};t.arrayBy=function(r,i){e.push({type:"arr",func:r});if(i)n[e.length-1]=i;return t};t.sort=function(e){r=e;return t};return t}var ki=e.easePolyOut;var Mi=function t(){return e.transition().ease(ki).duration(300)};var Si=function t(){return e.transition().ease(ki).duration(50)};var Ai=function t(){return e.transition().ease(ki).duration(500)};function zi(t){return isNaN(t)?0:t}function Ei(){return mn().prop("x",me).prop("y",me).prop("width",me).prop("height",me).prop("fill",me).prop("stroke",me).prop("centerTooltip").prop("tooltipAnchor").prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=Gt(zi,r.x);var a=Gt(zi,r.y);var o=Gt(zi,r.width);var s=Gt(zi,r.height);var u=n.selectAll(".sszvis-bar").data(t);u.exit().remove();u.enter().append("rect").classed("sszvis-bar",true).attr("x",i).attr("y",a).attr("width",o).attr("height",s).merge(u).attr("fill",r.fill).attr("stroke",r.stroke);if(r.transition){u=u.transition(Mi())}u.attr("x",i).attr("y",a).attr("width",o).attr("height",s);var l;if(r.centerTooltip){l=function t(e){return[i(e)+o(e)/2,a(e)+s(e)/2]}}else if(r.tooltipAnchor){var c=r.tooltipAnchor.map(parseFloat);l=function t(e){return[i(e)+c[0]*o(e),a(e)+c[1]*s(e)]}}else{l=function t(e){return[i(e)+o(e)/2,a(e)]}}var f=An().position(l);n.call(f)}))}function Ti(){return mn().prop("x",me).prop("y",me).prop("radius").prop("stroke").prop("fill").prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=n.selectAll(".sszvis-circle").data(t);i.exit().remove();i.enter().append("circle").classed("sszvis-circle",true).attr("cx",r.x).attr("cy",r.y).attr("r",r.radius).merge(i).attr("stroke",r.stroke).attr("fill",r.fill);if(r.transition){i=i.transition(Mi())}i.attr("cx",r.x).attr("cy",r.y).attr("r",r.radius);var a=An().position((function(t){return[r.x(t),r.y(t)]}));n.call(a)}))}function Ri(){return mn().prop("groupScale").prop("groupSize").prop("groupWidth").prop("groupSpace").groupSpace(.05).prop("y",me).prop("height").prop("fill").prop("stroke").prop("defined",me).defined(true).render((function(t){var n=e.select(this);var r=n.props();var i=e.scaleBand().domain(e.range(r.groupSize)).padding(r.groupSpace).paddingOuter(0).rangeRound([0,r.groupWidth]);var a=n.selectAll("g.sszvis-bargroup").data(t);var o=a.enter().append("g").classed("sszvis-bargroup",true);a.exit().remove();a=a.merge(o);var s=a.selectAll("g.sszvis-barunit").data((function(t){return t}));var u=s.enter().append("g").classed("sszvis-barunit",true);s.exit().remove();s=s.merge(u);s.each((function(t,e){t.__sszvisGroupedBarIndex__=e}));var l=s.filter(r.defined);l.selectAll("*").remove();l.attr("transform",(function(){return Sn(0,0)}));l.append("rect").classed("sszvis-bar",true).attr("fill",r.fill).attr("x",(function(t){return r.groupScale(t)+i(t.__sszvisGroupedBarIndex__)})).attr("y",r.y).attr("width",i.bandwidth()).attr("height",r.height);var c=s.filter(ce(r.defined));c.selectAll("*").remove();c.attr("transform",(function(t,e){return Sn(r.groupScale(t)+i(t.__sszvisGroupedBarIndex__)+i.bandwidth()/2,r.y(t,e))}));c.append("line").classed("sszvis-bar--missing line1",true).attr("x1",-4).attr("y1",-4).attr("x2",4).attr("y2",4);c.append("line").classed("sszvis-bar--missing line2",true).attr("x1",4).attr("y1",-4).attr("x2",-4).attr("y2",4);var f=An().position((function(t){var e=0;var n=Infinity;t.forEach((function(t,a){e+=r.groupScale(t)+i(t.__sszvisGroupedBarIndex__)+i.bandwidth()/2;n=Math.min(n,r.y(t,a))}));var a=e/t.length;return[a,n]}));n.call(f)}))}function Ci(){return mn().prop("x").prop("y").prop("stroke").prop("strokeWidth").prop("defined").prop("key").key((function(t,e){return e})).prop("valuesAccessor").valuesAccessor(qt).prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=e.line().defined(r.defined!==undefined?r.defined:Gt(ce(isNaN),r.y)).x(r.x).y(r.y);var a=n.selectAll(".sszvis-line").data(t,r.key);var o=a.enter().append("path").classed("sszvis-line",true).style("stroke",r.stroke);a=a.merge(o);a.exit().remove();a.order();if(r.transition){a=a.transition(Mi())}a.attr("d",Gt(i,r.valuesAccessor)).style("stroke",r.stroke).style("stroke-width",r.strokeWidth)}))}function Pi(){return mn().prop("radius").prop("fill").prop("stroke").prop("angle",me).render((function(t){var n=e.select(this);var r=n.props();var i=r.stroke||"#FFFFFF";var a=0;t.forEach((function(t){t._a0=a;if(isNaN(t.a0))t.a0=a;a+=r.angle(t);t._a1=a;if(isNaN(t.a1))t.a1=a}));var o=e.arc().innerRadius(4).outerRadius(r.radius).startAngle((function(t){return t.a0})).endAngle((function(t){return t.a1}));var s=n.selectAll(".sszvis-path").each((function(e,n){if(t[n]){t[n].a0=e.a0;t[n].a1=e.a1}})).data(t);var u=s.enter().append("path").classed("sszvis-path",true).attr("transform","translate("+r.radius+","+r.radius+")").attr("fill",r.fill).attr("stroke",i);s.exit().remove();s=s.merge(u);s.transition(Mi()).attr("transform","translate("+r.radius+","+r.radius+")").attrTween("d",(function(t){var n=e.interpolate(t.a0,t._a0);var r=e.interpolate(t.a1,t._a1);return function(e){t.a0=n(e);t.a1=r(e);return o(t)}})).attr("fill",r.fill).attr("stroke",i);var l=An().position((function(t){var e=t.a0+Math.abs(t.a1-t.a0)/2-Math.PI/2;var n=r.radius*2/3;return[r.radius+Math.cos(e)*n,r.radius+Math.sin(e)*n]}));n.datum(t).call(l)}))}var Ni=.5;function Li(){return mn().prop("barHeight",me).prop("barWidth",me).prop("barPosition",me).prop("barFill",me).barFill("#000").prop("tooltipAnchor").tooltipAnchor([.5,.5]).prop("leftAccessor").prop("rightAccessor").prop("leftRefAccessor").prop("rightRefAccessor").render((function(t){var n=e.select(this);var r=n.props();var i=Ei().x((function(t){return-Ni-r.barWidth(t)})).y(r.barPosition).height(r.barHeight).width(r.barWidth).fill(r.barFill).tooltipAnchor(r.tooltipAnchor);var a=Ei().x(Ni).y(r.barPosition).height(r.barHeight).width(r.barWidth).fill(r.barFill).tooltipAnchor(r.tooltipAnchor);var o=Oi().barPosition(r.barPosition).barWidth(r.barWidth).mirror(true);var s=Oi().barPosition(r.barPosition).barWidth(r.barWidth);n.selectGroup("left").datum(r.leftAccessor(t)).call(i);n.selectGroup("right").datum(r.rightAccessor(t)).call(a);n.selectGroup("leftReference").datum(r.leftRefAccessor?[r.leftRefAccessor(t)]:[]).call(o);n.selectGroup("rightReference").datum(r.rightRefAccessor?[r.rightRefAccessor(t)]:[]).call(s)}))}function Oi(){return mn().prop("barPosition").prop("barWidth").prop("mirror").mirror(false).render((function(t){var n=e.select(this);var r=n.props();var i=e.line().x(r.barWidth).y(r.barPosition);var a=n.selectAll(".sszvis-pyramid__referenceline").data(t);a.exit().remove();var o=a.enter().append("path").attr("class","sszvis-pyramid__referenceline");a=a.merge(o);a.attr("transform",r.mirror?"scale(-1, 1)":"").transition(Mi()).attr("d",i)}))}function Di(){return mn().prop("sizeScale").prop("columnPosition").prop("nodeThickness").prop("nodePadding").prop("columnPadding",me).prop("columnLabel",me).columnLabel("").prop("columnLabelOffset",me).columnLabelOffset(0).prop("linkCurvature").linkCurvature(.5).prop("nodeColor",me).prop("linkColor",me).prop("linkSort",me).linkSort((function(t,e){return t.value-e.value})).prop("labelSide",me).labelSide("left").prop("labelSideSwitch").prop("labelOpacity",me).labelOpacity(1).prop("labelHitBoxSize").labelHitBoxSize(0).prop("nameLabel").nameLabel(qt).prop("linkSourceLabels").linkSourceLabels([]).prop("linkTargetLabels").linkTargetLabels([]).prop("linkLabel",me).render((function(t){var n=e.select(this);var r=n.props();var i=fe("id");var a=function t(e){return Math.floor(r.columnPadding(e.columnIndex)+r.sizeScale(e.valueOffset)+r.nodePadding*e.nodeIndex)};var o=function t(e){return r.columnPosition(e.columnIndex)};var s=function t(e){return a(e)};var u=function t(){return Math.max(r.nodeThickness,1)};var l=function t(e){return Math.ceil(Math.max(r.sizeScale(e.value),1))};var c=function t(e,n,r,i,a,o){return"M"+e+","+a+"C"+n+","+a+" "+r+","+o+" "+i+","+o};var f=function t(e,n,r,i){return[e,n,r,i]};var h=1;var d=Ei().x(o).y(s).width(u).height(l).fill(r.nodeColor);var p=n.selectGroup("nodes").datum(t.nodes);p.call(d);var v=An().position((function(t){return[o(t)+u()/2,s(t)+l(t)/2]}));p.call(v);var m=function t(e){return r.columnPosition(e)+r.nodeThickness/2};var g=-24;var y=p.selectAll(".sszvis-sankey-column-label").data(t.columnLengths);var b=y.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-weak-label sszvis-sankey-column-label");y=y.merge(b);y.exit().remove();y.attr("transform",(function(t,e){return Sn(m(e)+r.columnLabelOffset(t,e),g)})).text((function(t,e){return r.columnLabel(e)}));var _=p.selectAll(".sszvis-sankey-column-label-tick").data(t.columnLengths);var x=_.enter().append("line").attr("class","sszvis-sankey-column-label-tick");_=_.merge(x);_.exit().remove();_.attr("x1",(function(t,e){return $n(m(e))})).attr("x2",(function(t,e){return $n(m(e))})).attr("y1",$n(g+8)).attr("y2",$n(g+12));var w=function t(e){var n=r.columnPosition(e.src.columnIndex)+r.nodeThickness+h,i=r.columnPosition(e.tgt.columnIndex)-h,o=a(e.src)+r.sizeScale(e.srcOffset)+r.sizeScale(e.value)/2,s=a(e.tgt)+r.sizeScale(e.tgtOffset)+r.sizeScale(e.value)/2;return[n,i,o,s]};var $=function t(n){var i=w(n),a=e.interpolateNumber(i[0],i[1]),o=a(r.linkCurvature),s=a(1-r.linkCurvature);return c(i[0],o,s,i[1],i[2],i[3])};var k=function t(e){var n=w(e);return f(n[0],n[1],n[2],n[3])};var M=function t(e){return Math.max(r.sizeScale(e.value),1)};var S=n.selectGroup("links");var A=S.selectAll(".sszvis-link").data(t.links,i);var z=A.enter().append("path").attr("class","sszvis-link");A=A.merge(z);A.exit().remove();A.attr("fill","none").attr("d",$).attr("stroke-width",M).attr("stroke",r.linkColor).sort(r.linkSort);S.datum(t.links);var E=An().position((function(t){var e=k(t);return[(e[0]+e[1])/2,(e[2]+e[3])/2]}));S.call(E);var T=n.selectGroup("linklabels");var R=T.selectAll(".sszvis-sankey-link-source-label").data(r.linkSourceLabels);var C=R.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-strong-label sszvis-sankey-link-source-label");R=R.merge(C);R.exit().remove();R.attr("transform",(function(t){var e=k(t);return Sn(e[0]+6,e[2])})).text(r.linkLabel);var P=T.selectAll(".sszvis-sankey-link-target-label").data(r.linkTargetLabels);var N=P.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-strong-label sszvis-sankey-link-target-label");P=P.merge(N);P.exit().remove();P.attr("transform",(function(t){var e=k(t);return Sn(e[1]-6,e[3])})).text(r.linkLabel);var L=function t(e){var n=r.labelSide(e);if(r.labelSideSwitch){n=n==="left"?"right":"left"}return n};var O=n.selectGroup("nodelabels");var D=O.selectAll(".sszvis-sankey-node-label").data(t.nodes);var I=D.enter().append("text").attr("class","sszvis-sankey-label sszvis-sankey-weak-label sszvis-sankey-node-label");D=D.merge(I);D.exit().remove();D.text((function(t){return r.nameLabel(t.id)})).attr("text-align","middle").attr("text-anchor",(function(t){return L(t.columnIndex)==="left"?"end":"start"})).attr("x",(function(t){return L(t.columnIndex)==="left"?o(t)-6:o(t)+r.nodeThickness+6})).attr("y",(function(t){return s(t)+l(t)/2})).style("opacity",r.labelOpacity);var F=O.selectAll(".sszvis-sankey-hitbox").data(t.nodes);var B=F.enter().append("rect").attr("class","sszvis-sankey-hitbox");F=F.merge(B);F.exit().remove();F.attr("fill","transparent").attr("x",(function(t){return o(t)+(L(t.columnIndex)==="left"?-r.labelHitBoxSize:0)})).attr("y",(function(t){return s(t)-r.nodePadding/2})).attr("width",r.labelHitBoxSize+r.nodeThickness).attr("height",(function(t){return l(t)+r.nodePadding}))}))}function Ii(){return mn().prop("x").prop("y0").prop("y1").prop("fill").prop("stroke").prop("defined").prop("key").key((function(t,e){return e})).prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();var i=function t(){return Gt(ce(isNaN),r.y0)&&Gt(ce(isNaN),r.y1)};var a=e.area().defined(r.defined!==undefined?r.defined:i).x(r.x).y0(r.y0).y1(r.y1);var o=n.selectAll("path.sszvis-path").data(t,r.key);var s=o.enter().append("path").classed("sszvis-path",true);o.exit().remove();o=o.merge(s);if(r.transition){o=o.transition(Mi())}o.attr("d",a).attr("fill",r.fill).attr("stroke",r.stroke||"#ffffff")}))}function Fi(){return mn().prop("x").prop("y0").prop("y1").prop("fill").prop("stroke").prop("defined").prop("key").key((function(t,e){return e})).prop("valuesAccessor").valuesAccessor(qt).prop("transition").transition(true).render((function(t){var n=e.select(this);var r=n.props();t=t.slice().reverse();var i=function t(){return Gt(ce(isNaN),r.y0)&&Gt(ce(isNaN),r.y1)};var a=e.area().defined(r.defined!==undefined?r.defined:i).x(r.x).y0(r.y0).y1(r.y1);var o=n.selectAll("path.sszvis-path").data(t,r.key);var s=o.enter().append("path").classed("sszvis-path",true);o.exit().remove();o=s.merge(o);if(r.transition){o=o.transition(Mi())}o.attr("d",Gt(a,r.valuesAccessor)).attr("fill",r.fill).attr("stroke",r.stroke)}))}var Bi=fe("stack");var Hi=fe("0");var ji=fe("1");function qi(t){return function(n,r,i){return function(a){var o=$i().arrayBy(n).objectBy(r).apply(a);var s=o.reduce((function(t,e){return de(t.concat(Object.keys(e)))}),[]);var u=e.stack().keys(s).value((function(t,e){return i(t[e][0])})).order(t)(o);u.forEach((function(t){t.forEach((function(e){e.series=t.key;e.data=e.data[t.key][0];e.stack=n(e.data)}))}));u.keys=s;u.maxValue=e.max(u,(function(t){return e.max(t,(function(t){return t[1]}))}));return u}}}var Ui=qi(e.stackOrderNone);var Yi=qi(e.stackOrderReverse);function Wi(t){return mn().prop("xScale",me).prop("width",me).prop("yScale",me).prop("height",me).prop("fill").prop("stroke").render((function(n){var r=e.select(this);var i=r.props();var a=Ei().x(t.x(i)).y(t.y(i)).width(t.width(i)).height(t.height(i)).fill(i.fill).stroke(i.stroke||"#FFFFFF");var o=r.selectAll(".sszvis-stack").data(n);var s=o.enter().append("g").classed("sszvis-stack",true);o.exit().remove();o=o.merge(s);o.call(a)}))}var Gi={x:function t(e){return Gt(e.xScale,Hi)},y:function t(e){return Gt(e.yScale,Bi)},width:function t(e){return function(t){return e.xScale(t[1])-e.xScale(t[0])}},height:function t(e){return e.height}};var Xi=function t(){return Wi(Gi)};var Vi={x:function t(e){return Gt(e.xScale,Bi)},y:function t(e){return Gt(e.yScale,ji)},width:function t(e){return e.width},height:function t(e){return function(t){return e.yScale(t[0])-e.yScale(t[1])}}};var Zi=function t(){return Wi(Vi)};var Qi=.5;var Ji=fe("data");var Ki=fe("row");function ta(t,n,r,i){return function(a){var o=$i().arrayBy(t).arrayBy(n).objectBy(r).apply(a).map((function(n){var r=Object.keys(n[0]);var a=t(n[0][r[0]][0]);var o=e.stack().keys(r).value((function(t,e){return i(t[e][0])}))(n);o.forEach((function(t,e){t.forEach((function(t,n){t.data=t.data[r[e]][0];t.series=r[e];t.side=a;t.row=n;t.value=i(t.data);return t}))}));return o}));o.maxValue=e.max(o,(function(t){return e.max(t,(function(t){return e.max(t,(function(t){return t[1]}))}))}));return o}}function ea(){return mn().prop("barHeight",me).prop("barWidth",me).prop("barPosition",me).prop("barFill",me).barFill("#000").prop("tooltipAnchor").tooltipAnchor([.5,.5]).prop("leftAccessor").prop("rightAccessor").prop("leftRefAccessor").prop("rightRefAccessor").render((function(t){var n=e.select(this);var r=n.props();var i=Ei().x((function(t){return-Qi-r.barWidth(t[1])})).y(Gt(r.barPosition,Ki)).height(r.barHeight).width((function(t){return r.barWidth(t[1])-r.barWidth(t[0])})).fill(Gt(r.barFill,Ji)).tooltipAnchor(r.tooltipAnchor);var a=Ei().x((function(t){return Qi+r.barWidth(t[0])})).y(Gt(r.barPosition,Ki)).height(r.barHeight).width((function(t){return r.barWidth(t[1])-r.barWidth(t[0])})).fill(Gt(r.barFill,Ji)).tooltipAnchor(r.tooltipAnchor);var o=na().stackElement(i);var s=na().stackElement(a);var u=ra().barPosition(r.barPosition).barWidth(r.barWidth).mirror(true);var l=ra().barPosition(r.barPosition).barWidth(r.barWidth);n.selectGroup("leftStack").datum(r.leftAccessor(t)).call(o);n.selectGroup("rightStack").datum(r.rightAccessor(t)).call(s);n.selectGroup("leftReference").datum(r.leftRefAccessor?[r.leftRefAccessor(t)]:[]).call(u);n.selectGroup("rightReference").datum(r.rightRefAccessor?[r.rightRefAccessor(t)]:[]).call(l)}))}function na(){return mn().prop("stackElement").renderSelection((function(t){var n=t.datum();var r=t.props();var i=t.selectAll("[data-sszvis-stack]").data(n);var a=i.enter().append("g").attr("data-sszvis-stack","");i.exit().remove();i=i.merge(a);i.each((function(t){e.select(this).datum(t).call(r.stackElement)}))}))}function ra(){return mn().prop("barPosition").prop("barWidth").prop("mirror").mirror(false).render((function(t){var n=e.select(this);var r=n.props();var i=e.line().x(r.barWidth).y(r.barPosition);var a=n.selectAll(".sszvis-path").data(t);a.exit().remove();var o=a.enter().append("path").attr("class","sszvis-path").attr("fill","none").attr("stroke","#aaa").attr("stroke-width",2).attr("stroke-dasharray","3 3");a=a.merge(o);a.attr("transform",r.mirror?"scale(-1, 1)":"").transition(Mi()).attr("d",i)}))}var ia=2*Math.PI;function aa(){return mn().prop("angleScale").angleScale(e.scaleLinear().range([0,2*Math.PI])).prop("radiusScale").prop("centerRadius").prop("fill").prop("stroke").stroke("white").render((function(t){var n=e.select(this);var r=n.props();function i(t){if(t.data.isSunburstRoot){return"transparent"}else if(!t.parent){Ir("Data passed to sszvis.component.sunburst does not have the expected tree structure. You should prepare it using sszvis.format.sunburst.prepareData");return e.hsl(r.fill(t.data.key))}else if(t.parent.data.isSunburstRoot){return e.hsl(r.fill(t.data.key))}else{var n=i(t.parent);n.l*=1.15;return n}}var a=function t(e){return Math.max(0,Math.min(ia,r.angleScale(e.x0)))};var o=function t(e){return Math.max(0,Math.min(ia,r.angleScale(e.x1)))};var s=function t(e){return r.centerRadius+Math.max(0,r.radiusScale(e.y0))};var u=function t(e){return r.centerRadius+Math.max(0,r.radiusScale(e.y1))};var l=e.arc().startAngle(a).endAngle(o).innerRadius(s).outerRadius(u);t.forEach((function(t){t._x0=t.x0;t._x1=t.x1}));var c=n.selectAll(".sszvis-sunburst-arc").each((function(e,n){if(t[n]){t[n].x0=e.x0;t[n].x1=e.x1}})).data(t);var f=c.enter().append("path").attr("class","sszvis-sunburst-arc");c.exit().remove();c=c.merge(f);c.attr("stroke",r.stroke).attr("fill",i);c.transition(Mi()).attrTween("d",(function(t){var n=e.interpolate(t.x0,t._x0);var r=e.interpolate(t.x1,t._x1);return function(e){t.x0=n(e);t.x1=r(e);return l(t)}}));var h=An().position((function(t){var e=a(t);var n=o(t);var r=e+Math.abs(n-e)/2-Math.PI/2;var i=(s(t)+u(t))/2;return[Math.cos(r)*i,Math.sin(r)*i]}));n.call(h)}))}function oa(){return mn().prop("values").prop("current").prop("width").width(300).prop("change").change(qt).render((function(){var t=e.select(this);var n=t.props();var r=n.width/n.values.length;var i=t.selectAll(".sszvis-control-optionSelectable").data(["sszvis-control-buttonGroup"],(function(t){return t}));var a=i.enter().append("div").classed("sszvis-control-optionSelectable",true).classed("sszvis-control-buttonGroup",true);i.exit().remove();i=i.merge(a);i.style("width",n.width+"px");var o=i.selectAll(".sszvis-control-buttonGroup__item").data(n.values);var s=o.enter().append("div").classed("sszvis-control-buttonGroup__item",true);o.exit().remove();o=o.merge(s);o.style("width",r+"px").classed("selected",(function(t){return t===n.current})).text((function(t){return t})).on("click",n.change)}))}function sa(){return mn().prop("x",me).prop("y",me).prop("top").prop("bottom").prop("label").label(me("")).prop("color").prop("flip",me).flip(false).render((function(t){var n=e.select(this);var r=n.props();var i=Gt($n,r.x);var a=Gt($n,r.y);var o=r.bottom-4;var s=10;var u=24;var l=r.top-u;var c=n.selectAll(".sszvis-handleRuler__group").data([0]);var f=c.enter().append("g").classed("sszvis-handleRuler__group",true);c.exit().remove();c=c.merge(f);f.append("line").classed("sszvis-ruler__rule",true);f.append("rect").classed("sszvis-handleRuler__handle",true);f.append("line").classed("sszvis-handleRuler__handle-mark",true);c.selectAll(".sszvis-ruler__rule").attr("x1",i).attr("y1",$n(r.top)).attr("x2",i).attr("y2",$n(o));c.selectAll(".sszvis-handleRuler__handle").attr("x",(function(t){return i(t)-s/2})).attr("y",$n(l)).attr("width",s).attr("height",u).attr("rx",2).attr("ry",2);c.selectAll(".sszvis-handleRuler__handle-mark").attr("x1",i).attr("y1",$n(l+u*.15)).attr("x2",i).attr("y2",$n(l+u*.85));var h=c.selectAll(".sszvis-ruler__dot").data(t);var d=h.enter().append("circle").classed("sszvis-ruler__dot",true);h.exit().remove();h=h.merge(d);h.attr("cx",i).attr("cy",a).attr("r",3.5).attr("fill",r.color);var p=n.selectAll(".sszvis-ruler__label-outline").data(t);var v=p.enter().append("text").classed("sszvis-ruler__label-outline",true);p.exit().remove();p=p.merge(v);var m=n.selectAll(".sszvis-ruler__label").data(t);var g=m.enter().append("text").classed("sszvis-ruler__label",true);m.exit().remove();m=m.merge(g);n.selectAll(".sszvis-ruler__label, .sszvis-ruler__label-outline").attr("transform",(function(t){var e=Gt($n,r.x)(t);var n=Gt($n,r.y)(t);var i=r.flip(t)?-10:10;var a=n<r.top+a?2*a:n>r.bottom-a?0:5;return Sn(e+i,n+a)})).style("text-anchor",(function(t){return r.flip(t)?"end":"start"})).html(r.label)}))}function ua(){return mn().prop("values").prop("current").prop("width").width(300).prop("change").change(qt).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-control-optionSelectable").data(["sszvis-control-select"],(function(t){return t}));var i=r.enter().append("div").classed("sszvis-control-optionSelectable",true).classed("sszvis-control-select",true);r.exit().remove();r=r.merge(i);r.style("width",n.width+"px");var a=r.selectDiv("selectMetrics").classed("sszvis-control-select__metrics",true);var o=r.selectAll(".sszvis-control-select__element").data([1]);var s=o.enter().append("select").classed("sszvis-control-select__element",true).on("change",(function(){var t=e.select(this).property("value");n.change(n.values[t]);setTimeout((function(){window.focus()}),0)}));o=o.merge(s);o.style("width",n.width+30+"px");var u=o.selectAll("option").data(n.values);var l=u.enter().append("option");u.exit().remove();u.merge(l).attr("selected",(function(t){return t===n.current?"selected":null})).attr("value",(function(t,e){return e})).text((function(t){return la(a,n.width-40,t)}))}))}function la(t,e,n){var r=1e3;var i=function n(i,a){t.text(i);var o=Math.ceil(t.node().clientWidth);if(a<r&&o>e){return n(i.slice(0,i.length-2)+"…",a+1)}else{return i}};return i(n,0)}function ca(t,e){return e.indexOf(t)>=0}function fa(){return mn().prop("scale").prop("value").prop("onchange").prop("minorTicks").minorTicks([]).prop("majorTicks").majorTicks([]).prop("tickLabels",me).tickLabels(qt).prop("label",me).label(qt).render((function(){var t=e.select(this);var n=t.props();var r=28;var i=12;var a=$n(18);var o=10;var s=23;var u=6;var l=u/2;var c=o/2+.5;var f=n.scale.domain();var h=jr(n.scale);var d=n.scale.copy().range([h[0]+c,h[1]-c]);var p=t.selectAll("g.sszvis-control-slider__backgroundgroup").data([1]);var v=p.enter().append("g").classed("sszvis-control-slider__backgroundgroup",true);p=p.merge(v);p.exit().remove();var m=Zr().scale(d).orient("bottom").hideBorderTickThreshold(0).tickSize(i).tickPadding(6).tickValues(de([].concat(n.majorTicks,n.minorTicks))).tickFormat((function(t){return ca(t,n.majorTicks)?n.tickLabels(t):""}));var g=p.selectAll("g.sszvis-axisGroup").data([1]);var y=g.enter().append("g").classed("sszvis-axisGroup sszvis-axis sszvis-axis--bottom sszvis-axis--slider",true);g=g.merge(y);g.attr("transform",Sn(0,r)).call(m);g.selectAll(".tick line").filter((function(t){return!ca(t,n.majorTicks)})).attr("y2",4);var b=g.selectAll(".tick text").filter((function(t){return ca(t,n.majorTicks)}));var _=b.size();b.style("text-anchor",(function(t,e){return e===0?"start":e===_-1?"end":"middle"}));var x=p.selectAll("g.sszvis-slider__background").data([1]);var w=x.enter().append("g").classed("sszvis-slider__background",true);x=x.merge(w);x.attr("transform",Sn(0,a));var $=x.selectAll(".sszvis-slider__background__bg1").data([1]);var k=$.enter().append("line").classed("sszvis-slider__background__bg1",true).style("stroke-width",u).style("stroke","#888").style("stroke-linecap","round");$=$.merge(k);$.attr("x1",Math.ceil(h[0]+l)).attr("x2",Math.floor(h[1]-l));var M=x.selectAll(".sszvis-slider__background__bg2").data([1]);var S=M.enter().append("line").classed("sszvis-slider__background__bg2",true).style("stroke-width",u-1).style("stroke","#fff").style("stroke-linecap","round");M=M.merge(S);M.attr("x1",Math.ceil(h[0]+l)).attr("x2",Math.floor(h[1]-l));var A=x.selectAll(".sszvis-slider__backgroundshadow").data([n.value]);var z=A.enter().append("line").attr("class","sszvis-slider__backgroundshadow").attr("stroke-width",u-1).style("stroke","#E0E0E0").style("stroke-linecap","round");A=A.merge(z);A.attr("x1",Math.ceil(h[0]+l)).attr("x2",Gt(Math.floor,d));var E=t.selectAll("g.sszvis-control-slider__handle").data([n.value]);E.exit().remove();var T=E.enter().append("g").classed("sszvis-control-slider__handle",true);E=E.merge(T);E.attr("transform",(function(t){return Sn($n(d(t)),.5)}));T.append("text").classed("sszvis-control-slider--label",true);E.selectAll(".sszvis-control-slider--label").data((function(t){return[t]})).text(n.label).style("text-anchor",(function(t){return ve(t,f[0])?"start":ve(t,f[1])?"end":"middle"})).attr("dx",(function(t){return ve(t,f[0])?-(o/2):ve(t,f[1])?o/2:0}));T.append("rect").classed("sszvis-control-slider__handlebox",true).attr("x",-(o/2)).attr("y",a-s/2).attr("width",o).attr("height",s).attr("rx",2).attr("ry",2);var R=s/2-4;T.append("line").classed("sszvis-control-slider__handleline",true).attr("y1",a-R).attr("y2",a+R);var C=ei().xScale(n.scale).yScale(e.scaleLinear().range([-11,r+i])).draggable(true).on("drag",n.onchange);t.selectGroup("sliderInteraction").classed("sszvis-control-slider--interactionLayer",true).attr("transform",Sn(0,4)).call(C)}))}function ha(t,n,r){n||(n=gi());r||(r={});var i=r.key||"default";var a="data-sszvis-html-"+i;var o=Yt(t)?t:e.select(t);o.classed("sszvis-outer-container",true);var s=o.selectAll("[data-sszvis-html-layer]["+a+"]").data([0]);var u=s.enter().append("div").classed("sszvis-html-layer",true).attr("data-sszvis-html-layer","").attr(a,"");s=s.merge(u);s.style("position","absolute").style("left",n.padding.left+"px").style("top",n.padding.top+"px");return s}function da(t,n,r){n||(n=gi());r||(r={});var i=r.key||"default";var a="data-sszvis-svg-"+i;var o=r.title||"";var s=r.description||"";var u=Yt(t)?t:e.select(t);var l=u.selectAll("svg["+a+"]").data([0]);var c=l.enter().append("svg");c.classed("sszvis-svg-layer",true).attr(a,"").attr("role","img").attr("aria-label",o+" – "+s);c.append("title").text(o);c.append("desc").text(s).classed("sszvis-svg-layer",true).attr(a,"").attr("role","img");l.merge(c).attr("height",n.height).attr("width",n.width);var f=l.merge(c).selectAll("[data-sszvis-svg-layer]").data((function(){return[0]}));var h=f.enter().append("g").attr("data-sszvis-svg-layer","");f.merge(h).attr("transform","translate("+n.padding.left+","+n.padding.top+")");return f.merge(h)}var pa=21;function va(){return mn().prop("scale").prop("rowHeight").rowHeight(pa).prop("columnWidth").columnWidth(200).prop("rows").rows(3).prop("columns").columns(3).prop("verticallyCentered").verticallyCentered(false).prop("orientation").prop("reverse").reverse(false).prop("rightAlign").rightAlign(false).prop("horizontalFloat").horizontalFloat(false).prop("floatPadding").floatPadding(20).prop("floatWidth").floatWidth(600).render((function(){var t=e.select(this);var n=t.props();var r=n.scale.domain();if(n.reverse){r=r.slice().reverse()}var i,a;if(n.orientation==="horizontal"){a=Math.ceil(n.columns);i=Math.ceil(r.length/a)}else if(n.orientation==="vertical"){i=Math.ceil(n.rows);a=Math.ceil(r.length/i)}var o=t.selectAll(".sszvis-legend--entry").data(r);var s=o.enter().append("g").classed("sszvis-legend--entry",true);o.exit().remove();var u=o.merge(s).selectAll(".sszvis-legend__mark").data((function(t){return[t]}));var l=u.enter().append("circle").classed("sszvis-legend__mark",true);u.exit().remove();u.merge(l).attr("cx",n.rightAlign?-6:6).attr("cy",$n(n.rowHeight/2)).attr("r",5).attr("fill",(function(t){return n.scale(t)})).attr("stroke",(function(t){return n.scale(t)})).attr("stroke-width",1);var c=o.merge(s).selectAll(".sszvis-legend__label").data((function(t){return[t]}));var f=c.enter().append("text").classed("sszvis-legend__label",true);c.exit().remove();c.merge(f).text((function(t){return t})).attr("dy","0.35em").style("text-anchor",(function(){return n.rightAlign?"end":"start"})).attr("transform",(function(){var t=n.rightAlign?-18:18;var e=$n(n.rowHeight/2);return Sn(t,e)}));var h="";if(n.verticallyCentered){h="translate(0,"+String(-(r.length*n.rowHeight/2))+") "}if(n.horizontalFloat){var d=0,p=0;o.merge(s).attr("transform",(function(){var t=this.getBoundingClientRect().width;if(p+t>n.floatWidth){d+=n.rowHeight;p=0}var e=Sn(p,d);p+=t+n.floatPadding;return h+e}))}else{o.merge(s).attr("transform",(function(t,e){if(n.orientation==="horizontal"){return h+"translate("+e%a*n.columnWidth+","+Math.floor(e/a)*n.rowHeight+")"}else if(n.orientation==="vertical"){return h+"translate("+Math.floor(e/i)*n.columnWidth+","+e%i*n.rowHeight+")"}}))}}))}var ma=2;var ga=40;function ya(t,e){var n=t.legendLabels,r=t.axisLabels,i=r===void 0?[]:r,a=t.slant,o=a===void 0?"horizontal":a;var s=hi(e).width;var u=ba(n,s);var l=n.length>6?Ne().domain(n):Le().domain(n);var c=va().scale(l).horizontalFloat(u.horizontalFloat).rows(u.rows).columnWidth(u.columnWidth).orientation(u.orientation);var f=_a(o,i);var h=u.rows*pa;return{axisLabelPadding:f,legendPadding:h,bottomPadding:f+h,legendWidth:u.legendWidth,legend:c,scale:l}}function ba(t,n){var r=t.length;var i=e.max(t,xa);var a=e.sum(t,xa);var o=r<=4?1:wa(n,i,ma);var s=o===1&&a<=n;return{columns:o,rows:s?1:Math.ceil(r/o),columnWidth:o===1?null:i,legendWidth:o*i,horizontalFloat:s,orientation:s?null:"vertical"}}function _a(t,n){switch(t){case"vertical":return 40+e.max(n,pi);case"diagonal":return 40+Math.sqrt(2*Math.pow(e.max(n,pi)/2,2));default:return 60}}function xa(t){return vi(t)+ga}function wa(t,e,n){return n<=1?1:e<=t/n?n:wa(t,e,n-1)}function $a(t,e,n,r,i){i||(i={});i.top||(i.top=0);i.right||(i.right=0);i.bottom||(i.bottom=0);i.left||(i.left=0);var a=30,o=t-i.left-i.right,s=Math.min((o-e*(n-1))/n,a),u=s+e,l=1-s/u,c=n*u-e,f=r*u-e;return{side:s,paddedSide:u,padRatio:l,width:c,height:f,centeredOffset:Math.max((o-c)/2,0)}}function ka(t){var e=24,n=20,r=e,i=t-1,a=n,o=1-r/(r+a),s=r*t+a*i,u=0;return{barHeight:r,padHeight:a,padRatio:o,outerRatio:u,axisOffset:-(r/2)-10,barGroupHeight:s,totalHeight:s+u*(r+a)*2}}function Ma(t,e){var n=480;var r=2;var i=Math.min(Lr(t),n);var a=1;var o=e-1;var s=a*o;var u=Math.round((i-s)/e);u=Math.max(u,r);var l=e*u+s;var c=l-u,f=u+a,h=[];while(c>=0){h.push(c);c-=f}var d=Math.min(t/2,Lr.MAX_HEIGHT*(4/5)/2);var p=Math.max((t-2*d)/2,1);return{barHeight:u,padding:a,totalHeight:l,positions:h,maxBarLength:d,chartPadding:p}}var Sa=function(){var t=0;return function(){return++t}}();var Aa=function t(){var n=qt;var r=qt;var i=qt;var a=[];var o=fe("value");var s=function t(n,r){return e.ascending(o(n),o(r))};var u=function t(n,r){return e.descending(o(n),o(r))};var l=u;var c=function t(s){var c=a.reduce((function(t,e,n){e.forEach((function(e){if(t.has(e)){Ir("Duplicate column member id passed to sszvis.layout.sankey.prepareData.column:",e,"The existing value will be overwritten")}var r={id:e,columnIndex:n,nodeIndex:0,value:0,valueOffset:0,linksFrom:[],linksTo:[]};t.set(e,r)}));return t}),e.map());var f=s.map((function(t){var e=n(t);var a=r(t);var o=+i(t)||0;var s=c.get(e);var u=c.get(a);if(!s){Ir("Found invalid source column id:",e);return null}if(!u){Ir("Found invalid target column id:",a);return null}var l={id:Sa(),value:o,src:s,srcOffset:0,tgt:u,tgtOffset:0};s.linksFrom.push(l);u.linksTo.push(l);return l}));var h=c.values();var d=h.reduce((function(t,n){var r=e.sum(n.linksFrom,o);var i=e.sum(n.linksTo,o);n.value=Math.max(0,r,i);t[n.columnIndex]+=n.value;return t}),Jt(a.length,0));var p=a.map((function(t){return t.length}));h.sort(l);f.sort(u);h.reduce((function(t,e){e.valueOffset=t[0][e.columnIndex];e.nodeIndex=t[1][e.columnIndex];t[0][e.columnIndex]+=e.value;t[1][e.columnIndex]+=1;return t}),[Jt(a.length,0),Jt(a.length,0)]);h.forEach((function(t){t.linksFrom.sort((function(t,e){return t.tgt.nodeIndex-e.tgt.nodeIndex}));t.linksTo.sort((function(t,e){return t.src.nodeIndex-e.src.nodeIndex}));t.linksFrom.reduce((function(t,e){e.srcOffset=t;return t+o(e)}),0);t.linksTo.reduce((function(t,e){e.tgtOffset=t;return t+o(e)}),0)}));return{nodes:h,links:f,columnTotals:d,columnLengths:p}};c.apply=function(t){return c(t)};c.source=function(t){n=t;return c};c.target=function(t){r=t;return c};c.value=function(t){i=t;return c};c.descendingSort=function(){l=u;return c};c.ascendingSort=function(){l=s;return c};c.idLists=function(t){a=t;return c};return c};var za=function t(n,r,i,a){var o=.15;var s=12;var u=50;var l=1;var c=e.min(n.map((function(t){var e=i*o/(t-1);return Math.max(s,Math.min(u,e))})));var f=e.min(n.map((function(t,e){var n=Math.max(l,i-(t-1)*c);return n/r[e]})));var h=c/f;var d=c;var p=e.max(r);var v=n.map((function(t,e){return r[e]*f+(t-1)*d}));var m=e.max(v);var g=n.map((function(t,e){return(m-v[e])/2}));var y=[0,p];var b=[0,p*f];var _=20;var x=n.length;var w=(a-_)/(x-1);var $=[0,1];var k=[0,w];return{valuePadding:h,nodePadding:d,columnPaddings:g,valueDomain:y,valueRange:b,nodeThickness:_,columnDomain:$,columnRange:k}};function Ea(){return mn().prop("width").prop("height").prop("paddingX").prop("paddingY").prop("rows").prop("cols").render((function(t){var n=e.select(this);var r=n.props();var i=(r.width-r.paddingX*(r.cols-1))/r.cols;var a=(r.height-r.paddingY*(r.rows-1))/r.rows;var o=i/2;var s=a/2;var u=n.selectAll("g.sszvis-multiple").data(t);var l=u.enter().append("g").classed("sszvis-g sszvis-multiple",true);u.exit().remove();u=u.merge(l);var c=u.selectAll("g.sszvis-multiple-chart").data((function(t){return[t.values]}));var f=c.enter().append("g").classed("sszvis-multiple-chart",true);c.exit().remove();c=c.merge(f);u.datum((function(t,e){t.gx=e%r.cols*(i+r.paddingX);t.gw=i;t.cx=o;t.gy=Math.floor(e/r.cols)*(a+r.paddingY);t.gh=a;t.cy=s;return t})).attr("transform",(function(t){return"translate("+t.gx+","+t.gy+")"}))}))}function Ta(t,e,n){n||(n=.1);var r=t/(e-n),i=r*(1-n),a=i,o=[];while(a-t<1){o.push(a);a+=r}return{range:o,bandHeight:i,padHeight:r*n}}var Ra=function t(){var n=e.nest();var r=qt;var i=function t(){return 0};function a(t){n.rollup(te);var a=e.hierarchy({isSunburstRoot:true,values:n.entries(t)},fe("values")).sort(i).sum((function(t){return t.value?r(t.value):0}));e.partition()(a);function o(t){return[].concat.apply([t],(t.children||[]).map(o))}return o(a).filter((function(t){return!t.data.isSunburstRoot}))}a.calculate=function(t){return a(t)};a.layer=function(t){n.key(t);return a};a.value=function(t){r=t;return a};a.sort=function(t){i=t;return a};return a};var Ca=60;var Pa=Ca;var Na=10;var La=Na;var Oa=function t(e,n){var r=n/2;var i=r/3;var a=Math.max(La,Math.min(Pa,(r-i)/e));return{centerRadius:i,numLayers:e,ringWidth:a}};var Da=function t(n){return[e.min(n,(function(t){return t.y0})),e.max(n,(function(t){return t.y1}))]};function Ia(t,e){var n=48,r=2,i=100,a=.7,o=1-a,s=e-1,u=t*o/(o*s+a*e),l=(t-u*s)/e;if(l>n){l=n;u=(t-l*e)/s}if(u<r)u=r;if(u>i)u=i;var c=1-l/(l+u),f=l*e+u*s,h=(t-f)/2/(l+u);return{barWidth:l,padWidth:u,padRatio:c,outerRatio:h,barGroupWidth:f,totalWidth:t}}function Fa(){return mn().prop("scale").prop("displayValues").prop("endpoints").prop("width").width(200).prop("labelFormat").labelFormat(qt).render((function(){var t=e.select(this);var n=t.props();if(!n.scale)return Fr("legend.binnedColorScale - a scale must be specified.");if(!n.displayValues)return Fr("legend.binnedColorScale - display values must be specified.");if(!n.endpoints)return Fr("legend.binnedColorScale - endpoints must be specified");var r=10;var i=r/2;var a=[0,n.width-2*i];var o=e.scaleLinear().domain(n.endpoints).range(a);var s=0;var u=[];var l=n.endpoints[0];n.displayValues.forEach((function(t){var e=o(t)-s;var r=s%1;u.push({x:Math.floor(i+s),w:e+r,c:n.scale(l),p:t});s+=e;l=t}));u.push({x:Math.floor(i+s),w:a[1]-s,c:n.scale(l)});var c=t.selectAll("circle.sszvis-legend__circle").data(n.endpoints);var f=c.enter().append("circle").classed("sszvis-legend__circle",true);c=c.merge(f);c.exit().remove();c.attr("r",i).attr("cy",i).attr("cx",(function(t,e){return e===0?i:n.width-i})).attr("fill",n.scale);var h=t.selectAll("rect.sszvis-legend__crispmark").data(u);var d=h.enter().append("rect").classed("sszvis-legend__crispmark",true);h=h.merge(d);h.exit().remove();h.attr("x",(function(t){return t.x})).attr("y",0).attr("width",(function(t){return t.w})).attr("height",r).attr("fill",(function(t){return t.c}));var p=u.slice(0,-1);var v=t.selectAll("line.sszvis-legend__crispmark").data(p);var m=v.enter().append("line").classed("sszvis-legend__crispmark",true);v.merge(m);v.exit().remove();v.attr("x1",(function(t){return $n(t.x+t.w)})).attr("x2",(function(t){return $n(t.x+t.w)})).attr("y1",r+1).attr("y2",r+6).attr("stroke","#B8B8B8");var g=t.selectAll(".sszvis-legend__axislabel").data(p);var y=g.enter().append("text").classed("sszvis-legend__axislabel",true);g=g.merge(y);g.exit().remove();g.style("text-anchor","middle").attr("transform",(function(t){return"translate("+(t.x+t.w)+","+(r+20)+")"})).text((function(t){return n.labelFormat(t.p)}))}))}function Ba(){return mn().prop("scale").prop("displayValues").displayValues([]).prop("width").width(200).prop("segments").segments(8).prop("labelText").prop("labelFormat").labelFormat(qt).render((function(){var t=e.select(this);var n=t.props();if(!n.scale){Fr("legend.linearColorScale - a scale must be specified.");return false}var r=n.scale.domain();var i=n.displayValues;if(!i.length&&n.scale.ticks){i=n.scale.ticks(n.segments-1)}i.push(le(r));var a=i.length>0?n.width/i.length:0;var o=10;var s=t.selectAll("rect.sszvis-legend__mark").data(i);var u=s.enter().append("rect").classed("sszvis-legend__mark",true);s.exit().remove();s=s.merge(u);s.attr("x",(function(t,e){return e*a-1})).attr("y",0).attr("width",a+1).attr("height",o).attr("fill",(function(t){return n.scale(t)}));var l=[te(r),le(r)];var c=n.labelText||l;var f=t.selectAll("circle.ssvis-legend--mark").data(l);var h=f.enter().append("circle").attr("class","ssvis-legend--mark");f.exit().remove();f=f.merge(h);f.attr("cx",(function(t,e){return e*n.width})).attr("cy",o/2).attr("r",o/2).attr("fill",(function(t){return n.scale(t)}));var d=t.selectAll(".sszvis-legend__label").data(c);var p=d.enter().append("text").classed("sszvis-legend__label",true);d.exit().remove();d=d.merge(p);var v=16;d.style("text-anchor",(function(t,e){return e===0?"end":"start"})).attr("dy","0.35em").attr("transform",(function(t,e){return"translate("+(e*n.width+(e===0?-1:1)*v)+", "+o/2+")"})).text((function(t,e){var r=n.labelFormat(t,e);return r}))}))}function Ha(){return mn().prop("scale").prop("tickFormat").tickFormat(qt).prop("tickValues").render((function(){var t=e.select(this);var n=t.props();var r=n.scale.domain();var i=n.tickValues||[r[1],n.scale.invert(e.mean(n.scale.range())),r[0]];var a=jr(n.scale)[1];var o=t.selectAll("g.sszvis-legend__elementgroup").data([0]);var s=o.enter().append("g").attr("class","sszvis-legend__elementgroup");o=o.merge(s);o.attr("transform",Sn($n(a),$n(a)));var u=o.selectAll("circle.sszvis-legend__greyline").data(i);var l=u.enter().append("circle").classed("sszvis-legend__greyline",true);u.exit().remove();u=u.merge(l);function c(t){return a-n.scale(t)}function f(t){return a-2*n.scale(t)}u.attr("r",n.scale).attr("stroke-width",1).attr("cy",c);var h=o.selectAll("line.sszvis-legend__dashedline").data(i);var d=h.enter().append("line").classed("sszvis-legend__dashedline",true);h.exit().remove();h=h.merge(d);h.attr("x1",0).attr("y1",f).attr("x2",a+15).attr("y2",f);var p=o.selectAll(".sszvis-legend__label").data(i);var v=p.enter().append("text").attr("class","sszvis-legend__label sszvis-legend__label--small");p.exit().remove();p=p.merge(v);p.attr("dx",a+18).attr("y",f).attr("dy","0.35em").text(n.tickFormat)}))}var ja=function t(e){Fr(e)};var qa="zurichStadtKreise";var Ua="zurichStatistischeQuartiere";var Ya="zurichStatistischeZonen";var Wa="zurichWahlKreise";var Ga="zurichAgglomeration2012";var Xa="switzerland";var Va=ge((function(t,n,r){var i=e.geoMercator().fitSize([t,n],r);return i}),(function(t,e,n,r){return""+t+","+e+","+r}));var Za=function t(n,r,i,a){var o=e.geoPath().projection(Va(n,r,i,a));return o};var Qa=function t(e,n,r){var i=6367475;var a=Math.PI*2*i;var o=r/a*360;var s=o/2;var u=[[n[0]-s,n[1]-s],[n[0]+s,n[1]+s]];var l=u.map(e);var c=Math.abs(l[1][0]-l[0][0]);var f=Math.abs(l[1][1]-l[0][1]);var h=(c+f)/2;return h};var Ja="geoId";var Ka=function t(e,n,r){r||(r=Ja);var i=Array.isArray(e)?e.reduce((function(t,e){t[e[r]]=e;return t}),{}):{};var a=n.features.map((function(t){return{geoJson:t,datum:i[t.id]}}));return a};var to=function t(n){if(!n.properties.cachedCenter){var r=n.properties.center;if(r){n.properties.cachedCenter=r.split(",").map(parseFloat)}else{n.properties.cachedCenter=e.geoCentroid(n)}}return n.properties.cachedCenter};var eo=function t(e){return Math.min(Math.max(.8,e/400),1.1)};var no=fe("datum");function ro(){var t=e.dispatch("over","out","click");var n=mn().prop("mergedData").prop("mapPath").prop("radius",me).prop("fill",me).prop("strokeColor",me).strokeColor("#ffffff").prop("strokeWidth",me).strokeWidth(1).prop("transition").transition(true).render((function(){var n=e.select(this);var r=n.props();var i=Gt(r.radius,no);var a=n.selectGroup("anchoredCircles").selectAll(".sszvis-anchored-circle").data(r.mergedData,(function(t){return t.geoJson.id}));a.enter().append("circle").attr("class","sszvis-anchored-circle sszvis-anchored-circle--entering").attr("r",i).on("mouseover",(function(e){t.call("over",this,e.datum)})).on("mouseout",(function(e){t.call("out",this,e.datum)})).on("click",(function(e){t.call("click",this,e.datum)})).merge(a).attr("transform",(function(t){var e=r.mapPath.projection()(to(t.geoJson));return Sn(e[0],e[1])})).style("fill",(function(t){return r.fill(t.datum)})).style("stroke",(function(t){return r.strokeColor(t.datum)})).style("stroke-width",(function(t){return r.strokeWidth(t.datum)})).sort((function(t,e){return r.radius(e.datum)-r.radius(t.datum)}));a.classed("sszvis-anchored-circle--entering",false);if(r.transition){var o=Mi();a.exit().transition(o).attr("r",0).remove();a.transition(o).attr("r",i)}else{a.exit().remove();a.attr("r",i)}}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function io(){return mn().prop("mergedData").prop("geoJson").prop("mapPath").prop("defined",me).defined(true).prop("fill",me).fill((function(){return"black"})).prop("transitionColor").transitionColor(true).render((function(){var t=e.select(this);var n=t.props();ye(t,"pattern","missing-pattern").call(fn);function r(t){return n.defined(t.datum)?n.fill(t.datum):"url(#missing-pattern)"}var i=t.selectAll(".sszvis-map__area").data(n.mergedData);var a=i.enter().append("path").classed("sszvis-map__area",true).classed("sszvis-map__area--entering",true).attr("data-event-target","").attr("fill",r);i.classed("sszvis-map__area--entering",false);i.exit().remove();i=i.merge(a);t.selectAll(".sszvis-map__area--undefined").attr("fill",r);i.classed("sszvis-map__area--undefined",(function(t){return!Vt(t.datum)||!n.defined(t.datum)})).attr("d",(function(t){return n.mapPath(t.geoJson)}));if(n.transitionColor){i.transition().call(Ai).attr("fill",r)}else{i.attr("fill",r)}var o=An().position((function(t){return n.mapPath.projection()(to(t.geoJson))}));var s=t.selectGroup("tooltipAnchors").datum(n.mergedData);s.call(o)}))}function ao(){var t=e.dispatch("over","out","click");var n=mn().prop("dataKeyName").dataKeyName(Ja).prop("geoJsonKeyName").geoJsonKeyName("id").prop("geoJson").prop("mapPath").prop("defined",me).defined(true).prop("fill",me).fill("black").prop("stroke",me).stroke("black").prop("strokeWidth",me).strokeWidth(1.25).prop("transitionColor").transitionColor(true).render((function(n){var r=e.select(this);var i=r.props();ye(r,"pattern","missing-pattern").call(fn);var a=fe(i.dataKeyName);var o=fe(i.geoJsonKeyName);var s=n.reduce((function(t,e){t[a(e)]=e;return t}));var u=i.geoJson.features.map((function(t){return{geoJson:t,datum:s[o(t.properties)]}}));function l(t){return Vt(t.datum)&&i.defined(t.datum)?i.fill(t.datum):"url(#missing-pattern)"}function c(t){return Vt(t.datum)&&i.defined(t.datum)?i.stroke(t.datum):""}var f=r.selectAll(".sszvis-map__geojsonelement").data(u);var h=f.enter().append("path").classed("sszvis-map__geojsonelement",true).attr("data-event-target","").attr("fill",l);f.exit().remove();f=f.merge(h);r.selectAll(".sszvis-map__geojsonelement--undefined").attr("fill",l);f.classed("sszvis-map__geojsonelement--undefined",(function(t){return!Vt(t.datum)||!i.defined(t.datum)})).attr("d",(function(t){return i.mapPath(t.geoJson)}));if(i.transitionColor){f.transition().call(Ai).attr("fill",l)}else{f.attr("fill",l)}f.attr("stroke",c).attr("stroke-width",i.strokeWidth);r.selectAll("[data-event-target]").on("mouseover",(function(e){t.over(e.datum)})).on("mouseout",(function(e){t.out(e.datum)})).on("click",(function(e){t.click(e.datum)}));var d=An().position((function(t){t.geoJson.properties||(t.geoJson.properties={});var n=t.geoJson.properties.sphericalCentroid;if(!n){t.geoJson.properties.sphericalCentroid=n=e.geoCentroid(t.geoJson)}return i.mapPath.projection()(n)}));var p=r.selectGroup("tooltipAnchors").datum(u);p.call(d)}));n.on=function(){var e=t.on.apply(t,arguments);return e===t?n:e};return n}function oo(){return mn().prop("keyName").keyName(Ja).prop("geoJson").prop("mapPath").prop("highlight").highlight([]).prop("highlightStroke",me).highlightStroke("white").prop("highlightStrokeWidth",me).highlightStrokeWidth(2).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-map__highlight");if(!n.highlight.length){r.remove();return true}var i=n.geoJson.features.reduce((function(t,e){t[e.id]=e;return t}),{});var a=n.highlight.reduce((function(t,e){if(e){t.push({geoJson:i[e[n.keyName]],datum:e})}return t}),[]);r=r.data(a);var o=r.enter().append("path").classed("sszvis-map__highlight",true);r.exit().remove();r=r.merge(o);r.attr("d",(function(t){return n.mapPath(t.geoJson)})).style("stroke",(function(t){return n.highlightStroke(t.datum)})).style("stroke-width",(function(t){return n.highlightStrokeWidth(t.datum)}))}))}function so(){return mn().prop("projection").prop("src").prop("geoBounds").prop("opacity").opacity(1).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-map__image").data([0]);var i=r.enter().append("img").classed("sszvis-map__image",true);r.exit().remove();r=r.merge(i);var a=n.projection(n.geoBounds[0]);var o=n.projection(n.geoBounds[1]);r.attr("src",n.src).style("left",Math.round(a[0])+"px").style("top",Math.round(a[1])+"px").style("width",Math.round(o[0]-a[0])+"px").style("height",Math.round(o[1]-a[1])+"px").style("opacity",n.opacity)}))}function uo(){return mn().prop("geoJson").prop("mapPath").prop("borderColor").borderColor("white").prop("strokeWidth").strokeWidth(1.25).render((function(){var t=e.select(this);var n=t.props();var r=t.selectAll(".sszvis-map__border").data([n.geoJson]);var i=r.enter().append("path").classed("sszvis-map__border",true);r.exit().remove();r=r.merge(i);r.attr("d",n.mapPath).style("stroke",n.borderColor).style("stroke-width",n.strokeWidth)}))}function lo(){return mn().prop("mapPath").prop("lakeFeature").prop("lakeBounds").prop("lakePathColor").prop("fadeOut").fadeOut(true).render((function(){var t=e.select(this);var n=t.props();ye(t,"pattern","lake-pattern").call(hn);if(n.fadeOut){ye(t,"linearGradient","lake-fade-gradient").call(dn);ye(t,"mask","lake-fade-mask").call(pn)}var r=t.selectAll(".sszvis-map__lakezurich").data([n.lakeFeature]);var i=r.enter().append("path").classed("sszvis-map__lakezurich",true);r.exit().remove();r=r.merge(i);r.attr("d",n.mapPath).attr("fill","url(#lake-pattern)");if(n.fadeOut){r.attr("mask","url(#lake-fade-mask)")}var a=t.selectAll(".sszvis-map__lakepath").data([n.lakeBounds]);var o=a.enter().append("path").classed("sszvis-map__lakepath",true);a.exit().remove();a=a.merge(o);a.attr("d",n.mapPath);if(n.lakePathColor){a.style("stroke",n.lakePathColor)}}))}function co(){return mn().prop("debug").debug(false).prop("width").prop("height").prop("position").prop("cellSide").cellSide(2).prop("fill",me).prop("opacity").opacity(1).render((function(t){var n=e.select(this);var r=n.props();var i=n.selectAll(".sszvis-map__rasterimage").data([0]);var a=i.enter().append("canvas").classed("sszvis-map__rasterimage",true);i.exit().remove();i=i.merge(a);i.attr("width",r.width).attr("height",r.height).style("opacity",r.opacity);var o=i.node().getContext("2d");o.clearRect(0,0,r.width,r.height);if(r.debug){o.fillStyle="rgba(255, 0, 0, 0.2)";o.fillRect(0,0,r.width,r.height)}var s=r.cellSide/2;t.forEach((function(t){var e=r.position(t);o.fillStyle=r.fill(t);o.fillRect(e[0]-s,e[1]-s,r.cellSide,r.cellSide)}))}))}function fo(){var t=e.dispatch("over","out","click");var n=io();var r=uo();var i=lo();var a=oo();var o=mn().prop("width").prop("height").prop("keyName").keyName(Ja).prop("withLake").withLake(true).prop("anchoredShape").prop("features").prop("borders").prop("lakeFeatures").prop("lakeBorders").prop("lakeFadeOut").lakeFadeOut(false).delegate("defined",n).delegate("fill",n).delegate("transitionColor",n).delegate("borderColor",r).delegate("strokeWidth",r).delegate("highlight",a).delegate("highlightStroke",a).delegate("highlightStrokeWidth",a).delegate("lakePathColor",i).render((function(o){var s=e.select(this);var u=s.props();var l=Za(u.width,u.height,u.features,"zurichStadtfeatures");var c=Ka(o,u.features,u.keyName);n.geoJson(u.features).mergedData(c).mapPath(l);r.geoJson(u.borders).mapPath(l);i.lakeFeature(u.lakeFeatures).lakeBounds(u.lakeBorders).mapPath(l).fadeOut(u.lakeFadeOut);a.geoJson(u.features).keyName(u.keyName).mapPath(l);s.call(n).call(r);if(u.withLake){s.call(i)}s.call(a);if(u.anchoredShape){u.anchoredShape.mergedData(c).mapPath(l);s.call(u.anchoredShape)}s.selectAll("[data-event-target]").on("mouseover",(function(e){t.call("over",this,e.datum)})).on("mouseout",(function(e){t.call("out",this,e.datum)})).on("click",(function(e){t.call("click",this,e.datum)}))}));o.on=function(){var e=t.on.apply(t,arguments);return e===t?o:e};return o}var ho=e.timeFormatLocale(Tn).parse;var po=ho("%d.%m.%Y");var vo=function t(e){return po(e)};var mo=ho("%Y");var go=function t(e){return mo(e)};var yo=function t(e){return e.trim()===""?NaN:+e};function bo(){var t=xr();var e={};function n(n){if(!ue(n)||!_o(n)){Ir("Could not determine the current breakpoint, returning the default props");return Object.keys(e).reduce((function(t,e,n){t[n]=e._;return t}),{})}var r=br(t,n);return Object.keys(e).reduce((function(i,a){var o=e[a];if(!wo(o,t)){Ir('responsiveProps was given an invalid propSpec for property: "'+a+'". The spec: ',o);return i}var s=Kt((function(t){return Vt(o[t.name])}),r);i[a]=o[s.name](n.width);return i}),{})}n.prop=function(t,r){e[t]=xo(r);return n};n.breakpoints=function(e){if(arguments.length===0){return t}t=_r(e);return n};return n}function _o(t){return Vt(t)&&Vt(t.width)&&Vt(t.screenWidth)&&Vt(t.screenHeight)}function xo(t){return Object.keys(t).reduce((function(e,n){e[n]=me(t[n]);return e}),{})}function wo(t,e){if(!Vt(t._)){return false}for(var n in t){if({}.hasOwnProperty.call(t,n)){if(n!=="_"&&!Vt(gr(e,n))){return false}}}return true}function $o(){var t={plain:function t(e){return e},italic:function t(e){return"<em>"+e+"</em>"},bold:function t(e){return"<strong>"+e+"</strong>"}};return function(e,n){return e.lines().map((function(e){return e.map((function(e){return t[e.style].call(null,e.text(n))})).join(" ")})).join("<br/>")}}function ko(){var t={plain:function t(e){return"<tspan>"+e+"</tspan>"},italic:function t(e){return'<tspan style="font-style:italic">'+e+"</tspan>"},bold:function t(e){return'<tspan style="font-weight:bold">'+e+"</tspan>"}};return function(e,n){return e.lines().reduce((function(e,r,i){var a=r.map((function(e){return t[e.style].call(null,e.text(n))})).join(" ");var o=i===0?0:"1.2em";return e+'<tspan x="0" dy="'+o+'">'+a+"</tspan>"}),"")}}function Mo(){var t=[[]];return{addLine:function e(){t.push([])},addWord:function e(n,r){le(t).push({text:me(r),style:n})},lines:function e(){return t}}}function So(t){return function(){var e=Mo();function n(n){return t(e,n)}n.newline=function(){e.addLine();return n};["bold","italic","plain"].forEach((function(t){n[t]=function(r){e.addWord(t,r);return n}}));return n}}var Ao=So($o());var zo=So(ko());t.AGGLOMERATION_2012_KEY=Ga;t.DEFAULT_LEGEND_COLOR_ORDINAL_ROW_HEIGHT=pa;t.DEFAULT_WIDTH=mi;t.GEO_KEY_DEFAULT=Ja;t.RATIO=yi;t.STADT_KREISE_KEY=qa;t.STATISTISCHE_QUARTIERE_KEY=Ua;t.STATISTISCHE_ZONEN_KEY=Ya;t.SWITZERLAND_KEY=Xa;t.WAHL_KREISE_KEY=Wa;t.annotationCircle=xn;t.annotationLine=wn;t.annotationRangeFlag=zn;t.annotationRangeRuler=Yn;t.annotationRectangle=Wn;t.annotationRuler=Gn;t.app=dr;t.arity=Wt;t.aspectRatio=Ar;t.aspectRatio12to5=Rr;t.aspectRatio16to10=Er;t.aspectRatio4to3=zr;t.aspectRatioAuto=Dr;t.aspectRatioPortrait=Lr;t.aspectRatioSquare=Pr;t.axisX=Zr;t.axisY=Qr;t.bar=Ei;t.bounds=gi;t.breakpointCreateSpec=_r;t.breakpointDefaultSpec=xr;t.breakpointFind=mr;t.breakpointFindByName=gr;t.breakpointLap=$r;t.breakpointMatch=br;t.breakpointPalm=wr;t.breakpointTest=yr;t.buttonGroup=oa;t.cascade=$i;t.choropleth=fo;t.colorLegendDimensions=ba;t.colorLegendLayout=ya;t.compose=Gt;t.contains=Xt;t.createHtmlLayer=ha;t.createSvgLayer=da;t.dataAreaPattern=vn;t.defaultTransition=Mi;t.defined=Vt;t.derivedSet=Zt;t.dimensionsHeatTable=$a;t.dimensionsHorizontalBarChart=ka;t.dimensionsVerticalBarChart=Ia;t.dot=Ti;t.ensureDefsElement=ye;t.every=Qt;t.fallbackCanvasUnsupported=ar;t.fallbackRender=or;t.fallbackUnsupported=ir;t.fastTransition=Si;t.filledArray=Jt;t.find=Kt;t.first=te;t.firstTouch=ne;t.fitTooltip=rr;t.flatten=ee;t.foldPattern=re;t.formatAge=Pn;t.formatAxisTimeFormat=Nn;t.formatFractionPercent=Hn;t.formatMonth=Ln;t.formatNone=Dn;t.formatNumber=In;t.formatPercent=Bn;t.formatPreciseNumber=Fn;t.formatText=jn;t.formatYear=On;t.functor=me;t.getGeoJsonCenter=to;t.groupedBars=Ri;t.halfPixel=$n;t.handleRuler=sa;t.hashableSet=ie;t.heatTableMissingValuePattern=cn;t.identity=qt;t.isFunction=ae;t.isNull=oe;t.isNumber=se;t.isObject=ue;t.isSelection=Yt;t.isString=Ut;t.last=le;t.layoutPopulationPyramid=Ma;t.layoutSmallMultiples=Ea;t.layoutStackedAreaMultiples=Ta;t.legendColorBinned=Fa;t.legendColorLinear=Ba;t.legendColorOrdinal=va;t.legendRadius=Ha;t.line=Ci;t.loadError=ja;t.locale=Tn;t.mapLakeFadeGradient=dn;t.mapLakeGradientMask=pn;t.mapLakePattern=hn;t.mapMissingValuePattern=fn;t.mapRendererBase=io;t.mapRendererBubble=ro;t.mapRendererGeoJson=ao;t.mapRendererHighlight=oo;t.mapRendererImage=so;t.mapRendererMesh=uo;t.mapRendererPatternedLakeOverlay=lo;t.mapRendererRaster=co;t.measureAxisLabel=pi;t.measureDimensions=hi;t.measureLegendLabel=vi;t.measureText=di;t.memoize=ge;t.modularTextHTML=Ao;t.modularTextSVG=zo;t.move=ei;t.muchDarker=nn;t.not=ce;t.panning=ui;t.parseDate=vo;t.parseNumber=yo;t.parseYear=go;t.pie=Pi;t.pixelsFromGeoDistance=Qa;t.prepareMergedGeoData=Ka;t.prop=fe;t.propOr=he;t.pyramid=Li;t.range=jr;t.responsiveProps=bo;t.roundTransformString=kn;t.sankey=Di;t.sankeyLayout=za;t.sankeyPrepareData=Aa;t.scaleDeepGry=tn;t.scaleDimGry=Je;t.scaleDivNtr=We;t.scaleDivNtrGry=Ge;t.scaleDivVal=Ue;t.scaleDivValGry=Ye;t.scaleGry=Qe;t.scaleLightGry=Ve;t.scaleMedGry=Ke;t.scalePaleGry=Ze;t.scaleQual12=Ne;t.scaleQual6=Le;t.scaleQual6a=Oe;t.scaleQual6b=De;t.scaleSeqBlu=Fe;t.scaleSeqBrn=je;t.scaleSeqGrn=He;t.scaleSeqRed=Be;t.selectMenu=ua;t.set=de;t.slider=fa;t.slightlyDarker=en;t.slowTransition=Ai;t.some=pe;t.stackedArea=Ii;t.stackedAreaMultiples=Fi;t.stackedBarHorizontal=Xi;t.stackedBarHorizontalData=Ui;t.stackedBarVertical=Zi;t.stackedBarVerticalData=Yi;t.stackedPyramid=ea;t.stackedPyramidData=ta;t.stringEqual=ve;t.sunburst=aa;t.sunburstGetRadiusExtent=Da;t.sunburstLayout=Oa;t.sunburstPrepareData=Ra;t.swissMapPath=Za;t.swissMapProjection=Va;t.textWrap=Ur;t.tooltip=Jn;t.tooltipAnchor=An;t.transformTranslateSubpixelShift=Mn;t.translateString=Sn;t.viewport=hr;t.voronoi=li;t.widthAdaptiveMapPathStroke=eo;t.withAlpha=rn;Object.defineProperty(t,"__esModule",{value:true})}))}));var sszvis$1=getDefaultExportFromCjs(sszvis);var sszvis$2=Object.freeze(Object.assign(Object.create(null),sszvis,{default:sszvis$1}));function identity(t){return t}function transform(t){if(t==null)return identity;var e,n,r=t.scale[0],i=t.scale[1],a=t.translate[0],o=t.translate[1];return function(t,s){if(!s)e=n=0;var u=2,l=t.length,c=new Array(l);c[0]=(e+=t[0])*r+a;c[1]=(n+=t[1])*i+o;while(u<l)c[u]=t[u],++u;return c}}function bbox(t){var e=transform(t.transform),n,r=Infinity,i=r,a=-r,o=-r;function s(t){t=e(t);if(t[0]<r)r=t[0];if(t[0]>a)a=t[0];if(t[1]<i)i=t[1];if(t[1]>o)o=t[1]}function u(t){switch(t.type){case"GeometryCollection":t.geometries.forEach(u);break;case"Point":s(t.coordinates);break;case"MultiPoint":t.coordinates.forEach(s);break}}t.arcs.forEach((function(t){var n=-1,s=t.length,u;while(++n<s){u=e(t[n],n);if(u[0]<r)r=u[0];if(u[0]>a)a=u[0];if(u[1]<i)i=u[1];if(u[1]>o)o=u[1]}}));for(n in t.objects){u(t.objects[n])}return[r,i,a,o]}function reverse(t,e){var n,r=t.length,i=r-e;while(i<--r)n=t[i],t[i++]=t[r],t[r]=n}function feature(t,e){return e.type==="GeometryCollection"?{type:"FeatureCollection",features:e.geometries.map((function(e){return feature$1(t,e)}))}:feature$1(t,e)}function feature$1(t,e){var n=e.id,r=e.bbox,i=e.properties==null?{}:e.properties,a=object(t,e);return n==null&&r==null?{type:"Feature",properties:i,geometry:a}:r==null?{type:"Feature",id:n,properties:i,geometry:a}:{type:"Feature",id:n,bbox:r,properties:i,geometry:a}}function object(t,e){var n=transform(t.transform),r=t.arcs;function i(t,e){if(e.length)e.pop();for(var i=r[t<0?~t:t],a=0,o=i.length;a<o;++a){e.push(n(i[a],a))}if(t<0)reverse(e,o)}function a(t){return n(t)}function o(t){var e=[];for(var n=0,r=t.length;n<r;++n)i(t[n],e);if(e.length<2)e.push(e[0]);return e}function s(t){var e=o(t);while(e.length<4)e.push(e[0]);return e}function u(t){return t.map(s)}function l(t){var e=t.type,n;switch(e){case"GeometryCollection":return{type:e,geometries:t.geometries.map(l)};case"Point":n=a(t.coordinates);break;case"MultiPoint":n=t.coordinates.map(a);break;case"LineString":n=o(t.arcs);break;case"MultiLineString":n=t.arcs.map(o);break;case"Polygon":n=u(t.arcs);break;case"MultiPolygon":n=t.arcs.map(u);break;default:return null}return{type:e,coordinates:n}}return l(e)}function stitch(t,e){var n={},r={},i={},a=[],o=-1;e.forEach((function(n,r){var i=t.arcs[n<0?~n:n],a;if(i.length<3&&!i[1][0]&&!i[1][1]){a=e[++o],e[o]=n,e[r]=a}}));e.forEach((function(t){var e=s(t),n=e[0],a=e[1],o,u;if(o=i[n]){delete i[o.end];o.push(t);o.end=a;if(u=r[a]){delete r[u.start];var l=u===o?o:o.concat(u);r[l.start=o.start]=i[l.end=u.end]=l}else{r[o.start]=i[o.end]=o}}else if(o=r[a]){delete r[o.start];o.unshift(t);o.start=n;if(u=i[n]){delete i[u.end];var c=u===o?o:u.concat(o);r[c.start=u.start]=i[c.end=o.end]=c}else{r[o.start]=i[o.end]=o}}else{o=[t];r[o.start=n]=i[o.end=a]=o}}));function s(e){var n=t.arcs[e<0?~e:e],r=n[0],i;if(t.transform)i=[0,0],n.forEach((function(t){i[0]+=t[0],i[1]+=t[1]}));else i=n[n.length-1];return e<0?[i,r]:[r,i]}function u(t,e){for(var r in t){var i=t[r];delete e[i.start];delete i.start;delete i.end;i.forEach((function(t){n[t<0?~t:t]=1}));a.push(i)}}u(i,r);u(r,i);e.forEach((function(t){if(!n[t<0?~t:t])a.push([t])}));return a}function mesh(t){return object(t,meshArcs.apply(this,arguments))}function meshArcs(t,e,n){var r,i,a;if(arguments.length>1)r=extractArcs(t,e,n);else for(i=0,r=new Array(a=t.arcs.length);i<a;++i)r[i]=i;return{type:"MultiLineString",arcs:stitch(t,r)}}function extractArcs(t,e,n){var r=[],i=[],a;function o(t){var e=t<0?~t:t;(i[e]||(i[e]=[])).push({i:t,g:a})}function s(t){t.forEach(o)}function u(t){t.forEach(s)}function l(t){t.forEach(u)}function c(t){switch(a=t,t.type){case"GeometryCollection":t.geometries.forEach(c);break;case"LineString":s(t.arcs);break;case"MultiLineString":case"Polygon":u(t.arcs);break;case"MultiPolygon":l(t.arcs);break}}c(e);i.forEach(n==null?function(t){r.push(t[0].i)}:function(t){if(n(t[0].g,t[t.length-1].g))r.push(t[0].i)});return r}function planarRingArea(t){var e=-1,n=t.length,r,i=t[n-1],a=0;while(++e<n)r=i,i=t[e],a+=r[0]*i[1]-r[1]*i[0];return Math.abs(a)}function merge(t){return object(t,mergeArcs.apply(this,arguments))}function mergeArcs(t,e){var n={},r=[],i=[];e.forEach(a);function a(t){switch(t.type){case"GeometryCollection":t.geometries.forEach(a);break;case"Polygon":o(t.arcs);break;case"MultiPolygon":t.arcs.forEach(o);break}}function o(t){t.forEach((function(e){e.forEach((function(e){(n[e=e<0?~e:e]||(n[e]=[])).push(t)}))}));r.push(t)}function s(e){return planarRingArea(object(t,{type:"Polygon",arcs:[e]}).coordinates[0])}r.forEach((function(t){if(!t._){var e=[],r=[t];t._=1;i.push(e);while(t=r.pop()){e.push(t);t.forEach((function(t){t.forEach((function(t){n[t<0?~t:t].forEach((function(t){if(!t._){t._=1;r.push(t)}}))}))}))}}}));r.forEach((function(t){delete t._}));return{type:"MultiPolygon",arcs:i.map((function(e){var r=[],i;e.forEach((function(t){t.forEach((function(t){t.forEach((function(t){if(n[t<0?~t:t].length<2){r.push(t)}}))}))}));r=stitch(t,r);if((i=r.length)>1){for(var a=1,o=s(r[0]),u,l;a<i;++a){if((u=s(r[a]))>o){l=r[0],r[0]=r[a],r[a]=l,o=u}}}return r}))}}function bisect(t,e){var n=0,r=t.length;while(n<r){var i=n+r>>>1;if(t[i]<e)n=i+1;else r=i}return n}function neighbors(t){var e={},n=t.map((function(){return[]}));function r(t,n){t.forEach((function(t){if(t<0)t=~t;var r=e[t];if(r)r.push(n);else e[t]=[n]}))}function i(t,e){t.forEach((function(t){r(t,e)}))}function a(t,e){if(t.type==="GeometryCollection")t.geometries.forEach((function(t){a(t,e)}));else if(t.type in o)o[t.type](t.arcs,e)}var o={LineString:r,MultiLineString:i,Polygon:i,MultiPolygon:function(t,e){t.forEach((function(t){i(t,e)}))}};t.forEach(a);for(var s in e){for(var u=e[s],l=u.length,c=0;c<l;++c){for(var f=c+1;f<l;++f){var h=u[c],d=u[f],p;if((p=n[h])[s=bisect(p,d)]!==d)p.splice(s,0,d);if((p=n[d])[s=bisect(p,h)]!==h)p.splice(s,0,h)}}}return n}function untransform(t){if(t==null)return identity;var e,n,r=t.scale[0],i=t.scale[1],a=t.translate[0],o=t.translate[1];return function(t,s){if(!s)e=n=0;var u=2,l=t.length,c=new Array(l),f=Math.round((t[0]-a)/r),h=Math.round((t[1]-o)/i);c[0]=f-e,e=f;c[1]=h-n,n=h;while(u<l)c[u]=t[u],++u;return c}}function quantize(t,e){if(t.transform)throw new Error("already quantized");if(!e||!e.scale){if(!((o=Math.floor(e))>=2))throw new Error("n must be ≥2");u=t.bbox||bbox(t);var n=u[0],r=u[1],i=u[2],a=u[3],o;e={scale:[i-n?(i-n)/(o-1):1,a-r?(a-r)/(o-1):1],translate:[n,r]}}else{u=t.bbox}var s=untransform(e),u,l,c=t.objects,f={};function h(t){return s(t)}function d(t){var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(d)};break;case"Point":e={type:"Point",coordinates:h(t.coordinates)};break;case"MultiPoint":e={type:"MultiPoint",coordinates:t.coordinates.map(h)};break;default:return t}if(t.id!=null)e.id=t.id;if(t.bbox!=null)e.bbox=t.bbox;if(t.properties!=null)e.properties=t.properties;return e}function p(t){var e=0,n=1,r=t.length,i,a=new Array(r);a[0]=s(t[0],0);while(++e<r)if((i=s(t[e],e))[0]||i[1])a[n++]=i;if(n===1)a[n++]=[0,0];a.length=n;return a}for(l in c)f[l]=d(c[l]);return{type:"Topology",bbox:u,transform:e,objects:f,arcs:t.arcs.map(p)}}var topojson=Object.freeze({__proto__:null,bbox:bbox,feature:feature,mesh:mesh,meshArcs:meshArcs,merge:merge,mergeArcs:mergeArcs,neighbors:neighbors,quantize:quantize,transform:transform,untransform:untransform});var stzhChartCss='@charset "UTF-8";:host{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}:host[hidden]{display:none}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}.sszvis-outer-container{clear:both;position:relative}.sszvis-svg-layer{position:relative}.sszvis-html-layer{position:absolute}.sszvis-fallback-image{display:block;margin:0 auto;max-width:32.25rem;width:100%}.sszvis-interactive{cursor:default;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-touch-callout:none}.sszvis-interactive.sszvis-interactive--draggable{cursor:pointer;cursor:grab;cursor:-webkit-grab}.sszvis-interactive.sszvis-interactive--draggable:active{cursor:grabbing;cursor:-webkit-grabbing}:root{--stzh-font:var(--stzh-font-family-regular, "Helvetica Neue", Helvetica, Arial, sans-serif)}.sszvis-axis text{fill:#767676;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.625rem;font-style:normal;font-weight:normal}.sszvis-axis path,.sszvis-axis line{fill:none;stroke:#b8b8b8;shape-rendering:crispEdges}.sszvis-axis .tick text.active{fill:#545454}.sszvis-axis .tick text.hidden{display:none}.sszvis-axis .tick line.hidden{display:none}.sszvis-axis.sszvis-axis--top path{display:none}.sszvis-axis.sszvis-axis--vertical path{display:none}.sszvis-axis.sszvis-axis--slider path{stroke:none}.sszvis-axis__label-contour{fill:#ffffff;opacity:0.8;stroke:#ffffff;stroke-width:3}.sszvis-bar--missing{stroke:#a4a4a4}.sszvis-line{fill:none;stroke-width:1.1}.sszvis-pyramid__referenceline{fill:none;stroke:#aaa;stroke-width:2;stroke-dasharray:3 3}.sszvis-sankey-label{alignment-baseline:central;dominant-baseline:central;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.625rem;font-style:normal;font-weight:normal}.sszvis-sankey-strong-label{fill:#545454}.sszvis-sankey-weak-label{fill:#767676}.sszvis-sankey-column-label{text-anchor:middle}.sszvis-sankey-column-label-tick{stroke:#b8b8b8}.sszvis-sankey-link-source-label{text-anchor:start}.sszvis-sankey-link-target-label{text-anchor:end}.sszvis-map__area{stroke:none}.sszvis-map__border{fill:none;pointer-events:none;stroke-linejoin:round;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__highlight{fill:none;pointer-events:none;stroke-linejoin:round;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__lakezurich{pointer-events:none;stroke:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__lakepath{fill:none;pointer-events:none;stroke:#d3d3d3;stroke-width:1.25;stroke-dasharray:3 3;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__geojsonelement{pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__image{display:block;position:absolute;pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-map__rasterimage{display:block;position:absolute;pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-control-buttonGroup{display:inline-block;position:absolute;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-control-buttonGroup__item{background-color:#ffffff;border:0.0625rem solid #767676;border-left:none;-webkit-box-sizing:border-box;box-sizing:border-box;color:#767676;cursor:pointer;display:table-cell;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.75rem;line-height:normal;padding:0.5625rem 0.75rem;text-align:center;vertical-align:middle}.sszvis-control-buttonGroup__item.selected{background-color:#767676;color:#ffffff}.sszvis-control-buttonGroup__item:first-child{border-left:0.0625rem solid #767676;border-top-left-radius:0.1875rem;border-bottom-left-radius:0.1875rem}.sszvis-control-buttonGroup__item:last-child{border-top-right-radius:0.1875rem;border-bottom-right-radius:0.1875rem}.sszvis-control-select{border:0.0625rem solid #767676;border-radius:0.1875rem;background-color:#ffffff;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAABQElEQVR4nO3TzW2DUBDEcZdACSnBpe1lVhzdCSXZnaQE55JJSOJgMO9rH/OTOK70/iNxOomIiIiIiMi3cRzfar8hlc0tAM4A3gFMeZ5UDoDps+W86sDMBgBXd7+7+z3yCACmWcfVzIbFg9/xkUeYx68a4b/4iCM8in86wlJ8pBGW4ucj/Dhy98uzowgjrImffZevQzMb3P0WeYSN8bc/v0HkEXbHU8QRksVTpBGSx1OEEbLFU8sjZI+nFkcoFk8tjVA8nloYoVo81RyhejzVGKGZeCo5QnPxVGKEZuMp5wjNx1OOEcLEU8oRwsVTihHCxtOeEcLH0ysjdBNPW0foKp4yjBAnnhKOEC+eEowQN552jBA/nl4YoZ942jBCf/G0YoR+42lhhP7j6cEIx4mn2QjHiyczGw4bLyIiIiIiUtMHjJmBk7uXEiAAAAAASUVORK5CYII=");background-position:96% 51%;background-repeat:no-repeat;background-size:0.75rem 0.75rem;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;height:2.125rem;overflow:hidden}.sszvis-control-select__element{background:transparent;border:0.0625rem solid #ffffff;color:#767676;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:1rem;height:2.125rem;outline:0}.sszvis-control-select__element:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.sszvis-control-select__metrics{font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.75rem;height:auto;position:absolute;visibility:hidden;width:auto;white-space:nowrap}.sszvis-control-slider__handle{cursor:pointer}.sszvis-control-slider--label{fill:#545454;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.625rem;text-anchor:middle}.sszvis-control-slider__handlebox{fill:#fff;stroke:#545454}.sszvis-control-slider__handleline{stroke:#545454}.sszvis-handleRuler__handle{fill:#ffffff;stroke:#808184}.sszvis-handleRuler__handle-mark{stroke:#a6a8ab}.sszvis-ruler__rule{shape-rendering:crispEdges;stroke:#cccccc}.sszvis-ruler__dot{stroke:#ffffff;stroke-width:1.5}.sszvis-ruler__label,.sszvis-ruler__label-outline{font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.75rem;font-style:normal;font-weight:normal}.sszvis-ruler__label{fill:#545454}.sszvis-ruler__label-outline{stroke:#ffffff;stroke-width:3}.sszvis-rangeFlag__mark{fill:#efefef;stroke:#7c7c7c;stroke-width:1.5}.sszvis-rangeRuler__rule{opacity:0.25;shape-rendering:crispEdges;stroke:#000000}.sszvis-rangeRuler__p1,.sszvis-rangeRuler__p2{fill:#000000;opacity:0.25}.sszvis-rangeRuler__label,.sszvis-rangeRuler__total{font-size:0.625rem;fill:#545454;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-style:normal}.sszvis-tooltip{min-width:3.75rem;position:absolute}.sszvis-tooltip__background{position:absolute}.sszvis-tooltip__background path{fill:rgba(255, 255, 255, 0.9)}.sszvis-tooltip__background.sszvis-tooltip__background--fallback path{stroke:#ddd;stroke-width:1}.sszvis-tooltip__content{font-family:Arial;padding:0.625rem 0.625rem 0.4375rem 0.625rem;position:relative;white-space:nowrap;z-index:1}.sszvis-tooltip__content strong{font-weight:bold}.sszvis-tooltip__content em{font-weight:bold}.sszvis-tooltip__header{color:#545454;font-size:0.75rem;line-height:1.3333;vertical-align:middle}.sszvis-tooltip__body{color:#7c7c7c;font-size:0.6875rem;line-height:1.4545;vertical-align:middle}.sszvis-tooltip--small .sszvis-tooltip__content{padding:0.375rem 0.625rem 0.25rem 0.625rem;text-align:center}.sszvis-tooltip__body__table,.sszvis-tooltip__body__table td{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:top}.sszvis-tooltip__body__table{border:none !important;border-collapse:collapse;border-spacing:0;min-width:7.5rem;margin-top:0.375rem;width:100%}.sszvis-tooltip__body__table tr{border-top:0.0625rem solid #e5e6e7}.sszvis-tooltip__body__table td{border:none !important;padding:0.4375rem 0.5em 0.4375rem 0 !important;text-align:left;vertical-align:top}.sszvis-tooltip__body__table tr:last-child td{padding-bottom:0.1875rem}.sszvis-tooltip__body__table td:last-child{color:#545454;font-weight:bold;padding-right:0;text-align:right}.sszvis-tooltipAnchor{pointer-events:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.sszvis-referenceline{stroke-width:1.5;stroke:#aaa;stroke-dasharray:3 3}.sszvis-referenceline__caption{fill:#7c7c7c;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.6875rem;text-anchor:middle;-webkit-backface-visibility:hidden}.sszvis-dataareacircle__caption{fill:#7c7c7c;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.6875rem;text-anchor:middle}.sszvis-dataarearectangle__caption{fill:#7c7c7c;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.6875rem;text-anchor:middle}.sszvis-legend__label{fill:#767676;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.75rem;font-style:normal;font-weight:normal;text-anchor:start}.sszvis-legend__label--small{fill:#767676;font-size:0.625rem}.sszvis-legend__axislabel{fill:#767676;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--stzh-font);font-size:0.625rem;font-style:normal;font-weight:normal}.sszvis-legend__crispmark{shape-rendering:crispEdges}.sszvis-legend__greyline{fill:none;stroke:#b8b8b8;stroke-width:1.1}.sszvis-legend__dashedline{stroke:#cccccc;stroke-dasharray:2 3;stroke-width:1}stzh-chart{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}stzh-chart[hidden]{display:none}stzh-chart *,stzh-chart *::before,stzh-chart *::after{-webkit-box-sizing:border-box;box-sizing:border-box}';var StzhChart=function(){function t(t){registerInstance(this,t);this.initialized=false;this.chartId=undefined;this.create=function(){}}t.prototype.createWatcher=function(){if(!this.initialized&&this.chartElement){this.initialized=true;this.create(this.chartElement,{d3:d3,sszvis:sszvis$2,topojson:topojson})}};t.prototype.componentDidRender=function(){if(!this.initialized&&this.chartElement){this.initialized=true;this.create(this.chartElement,{d3:d3,sszvis:sszvis$2,topojson:topojson})}};t.prototype.render=function(){var t=this;var e={"stzh-chart":true};return h(Host,null,h("div",{class:e},h("div",{id:this.chartId,ref:function(e){return t.chartElement=e},class:"stzh-chart__element"})))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{create:["createWatcher"]}},enumerable:false,configurable:true});return t}();StzhChart.style=stzhChartCss;export{StzhChart as stzh_chart};