j1-template 2022.4.1 → 2022.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_article_navigator.html +1 -1
  3. data/_includes/themes/j1/layouts/content_generator_blog_archive.html +1 -1
  4. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +1 -1
  5. data/assets/themes/j1/adapter/js/nbinteract.js +11 -0
  6. data/assets/themes/j1/modules/bokeh/README.md +380 -0
  7. data/assets/themes/j1/modules/bokeh/js/v2.4.3/bokeh.min.js +596 -0
  8. data/assets/themes/j1/modules/nbInteract/css/theme/uno/nbinteract-core.css +7 -0
  9. data/assets/themes/j1/modules/nbInteract/css/theme/uno/nbinteract-core.min.css +1 -1
  10. data/assets/themes/j1/modules/vega/js/vega/LICENSE +27 -0
  11. data/assets/themes/j1/modules/vega/js/vega/README.md +42 -0
  12. data/assets/themes/j1/modules/vega/js/vega/vega-core.js +34550 -0
  13. data/assets/themes/j1/modules/vega/js/vega/vega-core.min.js +2 -0
  14. data/assets/themes/j1/modules/vega/js/vega/vega-core.min.js.map +1 -0
  15. data/assets/themes/j1/modules/vega/js/vega/vega.js +49095 -0
  16. data/assets/themes/j1/modules/vega/js/vega/vega.min.js +2 -0
  17. data/assets/themes/j1/modules/vega/js/vega/vega.min.js.map +1 -0
  18. data/assets/themes/j1/modules/vega/js/vega-embed/LICENSE +27 -0
  19. data/assets/themes/j1/modules/vega/js/vega-embed/README.md +230 -0
  20. data/assets/themes/j1/modules/vega/js/vega-embed/vega-embed.js +6607 -0
  21. data/assets/themes/j1/modules/vega/js/vega-embed/vega-embed.js.map +1 -0
  22. data/assets/themes/j1/modules/vega/js/vega-embed/vega-embed.min.js +21 -0
  23. data/assets/themes/j1/modules/vega/js/vega-embed/vega-embed.min.js.map +1 -0
  24. data/assets/themes/j1/modules/vega/js/vega-lite/LICENSE +27 -0
  25. data/assets/themes/j1/modules/vega/js/vega-lite/README.md +34 -0
  26. data/assets/themes/j1/modules/vega/js/vega-lite/vega-lite-schema.json +30999 -0
  27. data/assets/themes/j1/modules/vega/js/vega-lite/vega-lite.js +24585 -0
  28. data/assets/themes/j1/modules/vega/js/vega-lite/vega-lite.js.map +1 -0
  29. data/assets/themes/j1/modules/vega/js/vega-lite/vega-lite.min.js +2 -0
  30. data/assets/themes/j1/modules/vega/js/vega-lite/vega-lite.min.js.map +1 -0
  31. data/lib/j1/version.rb +1 -1
  32. data/lib/starter_web/Gemfile +1 -1
  33. data/lib/starter_web/_config.yml +1 -1
  34. data/lib/starter_web/_data/modules/defaults/nbinteract.yml +1 -1
  35. data/lib/starter_web/_data/modules/navigator_menu.yml +40 -23
  36. data/lib/starter_web/_data/modules/nbinteract.yml +314 -295
  37. data/lib/starter_web/_data/resources.yml +101 -0
  38. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  39. data/lib/starter_web/assets/images/modules/attics/wrongtog-1920x1280.jpg +0 -0
  40. data/lib/starter_web/assets/images/modules/attics/yellow-cactus-1920x1280.jpg +0 -0
  41. data/lib/starter_web/assets/images/modules/icons/bokeh/bokeh-32x32.ico +0 -0
  42. data/lib/starter_web/assets/images/modules/icons/bokeh/bokeh.ico +0 -0
  43. data/lib/starter_web/assets/images/modules/icons/bokeh/logo-160x160.png +0 -0
  44. data/lib/starter_web/package.json +1 -1
  45. data/lib/starter_web/pages/public/jupyter/examples/{j1-circular-times-table.adoc → distributed/j1-circular-times-table.adoc} +7 -2
  46. data/lib/starter_web/pages/public/jupyter/examples/{j1-interactive-widgets.adoc → distributed/j1-common-used-widgets.adoc} +14 -6
  47. data/lib/starter_web/pages/public/jupyter/examples/{j1-odes-in-python.adoc → distributed/j1-odes-in-python.adoc} +7 -2
  48. data/lib/starter_web/pages/public/jupyter/examples/{j1_climate-change-forecast.adoc → localized/j1_climate-change-forecast.adoc} +10 -5
  49. data/lib/starter_web/pages/public/jupyter/where_to_go.adoc +239 -0
  50. data/lib/starter_web/pages/public/learn/where_to_go.adoc +23 -7
  51. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  52. data/lib/starter_web/utilsrv/package.json +1 -1
  53. metadata +35 -30
  54. data/lib/starter_web/pages/public/jupyter/docs/_includes/attributes.asciidoc +0 -58
  55. data/lib/starter_web/pages/public/jupyter/docs/_includes/documents/j1_docs_example_static.asciidoc +0 -232
  56. data/lib/starter_web/pages/public/jupyter/docs/j1-nbinteract-doc.adoc +0 -563
  57. data/lib/starter_web/pages/public/jupyter/docs/nbi-widget-manual.adoc +0 -465
  58. data/lib/starter_web/pages/public/jupyter/docs/nbinteract-doc.adoc +0 -473
  59. data/lib/starter_web/pages/public/jupyter/examples/j1-testing-plotly.adoc +0 -94
  60. data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-checkpoint.ipynb +0 -12387
  61. data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_climate_change_forecast-checkpoint.ipynb +0 -1058
  62. data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_docs_example_dynamic-checkpoint.ipynb +0 -14478
  63. data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-checkpoint.ipynb +0 -738
  64. data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_ode_selected-checkpoint.ipynb +0 -14478
  65. data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_odes_in_python-checkpoint.ipynb +0 -15227
  66. data/lib/starter_web/pages/public/jupyter/notebooks/j1/factor_by_factor.mp4 +0 -0
  67. data/lib/starter_web/pages/public/jupyter/notebooks/j1/line_by_line.mp4 +0 -0
  68. data/lib/starter_web/pages/public/jupyter/notebooks/j1/point_by_point.mp4 +0 -0
  69. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_central_limit_theorem-checkpoint.ipynb +0 -247
  70. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_variability_of_the_sample_mean-checkpoint.ipynb +0 -323
  71. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_graphing-checkpoint.ipynb +0 -387
  72. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_interactive_questions-checkpoint.ipynb +0 -185
  73. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_layout-checkpoint.ipynb +0 -384
  74. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_interact-checkpoint.ipynb +0 -254
  75. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_monty_hall-checkpoint.ipynb +0 -732
  76. data/lib/starter_web/pages/public/jupyter/services/binderhub.adoc +0 -564
  77. data/lib/starter_web/pages/public/jupyter/services/jupyterhub.adoc +0 -244
@@ -0,0 +1,2 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("d3-dsv"),require("topojson-client"),require("d3-array"),require("d3-format"),require("d3-time"),require("d3-time-format"),require("d3-shape"),require("d3-path"),require("d3-scale"),require("d3-interpolate"),require("d3-geo"),require("d3-color"),require("d3-force"),require("d3-hierarchy"),require("d3-delaunay"),require("d3-timer")):"function"==typeof define&&define.amd?define(["exports","d3-dsv","topojson-client","d3-array","d3-format","d3-time","d3-time-format","d3-shape","d3-path","d3-scale","d3-interpolate","d3-geo","d3-color","d3-force","d3-hierarchy","d3-delaunay","d3-timer"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).vega={},e.d3,e.topojson,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3,e.d3)}(this,(function(e,t,n,r,i,a,u,o,s,l,c,f,d,h,p,m,v){"use strict";function g(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var y=g(l),b=g(c);function x(e,t,n){return e.fields=t||[],e.fname=n,e}function _(e){return null==e?null:e.fname}function k(e){return null==e?null:e.fields}function A(e){return 1===e.length?w(e[0]):D(e)}var w=function(e){return function(t){return t[e]}},D=function(e){var t=e.length;return function(n){for(var r=0;r<t;++r)n=n[e[r]];return n}};function E(e){throw Error(e)}function C(e){var t,n,r,i=[],a=e.length,u=null,o=0,s="";function l(){i.push(s+e.substring(t,n)),s="",t=n+1}for(e+="",t=n=0;n<a;++n)if("\\"===(r=e[n]))s+=e.substring(t,n),s+=e.substring(++n,++n),t=n;else if(r===u)l(),u=null,o=-1;else{if(u)continue;t===o&&'"'===r||t===o&&"'"===r?(t=n+1,u=r):"."!==r||o?"["===r?(n>t&&l(),o=t=n+1):"]"===r&&(o||E("Access path missing open bracket: "+e),o>0&&l(),o=0,t=n+1):n>t?l():t=n+1}return o&&E("Access path missing closing bracket: "+e),u&&E("Access path missing closing quote: "+e),n>t&&(n++,l()),i}function F(e,t,n){var r=C(e);return e=1===r.length?r[0]:e,x((n&&n.get||A)(r),[e],t||e)}var M=F("id"),S=x((function(e){return e}),[],"identity"),B=x((function(){return 0}),[],"zero"),O=x((function(){return 1}),[],"one"),R=x((function(){return!0}),[],"true"),z=x((function(){return!1}),[],"false");function q(e,t,n){var r=[t].concat([].slice.call(n));console[e].apply(console,r)}function T(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:q,r=e||0;return{level:function(e){return arguments.length?(r=+e,this):r},error:function(){return r>=1&&n(t||"error","ERROR",arguments),this},warn:function(){return r>=2&&n(t||"warn","WARN",arguments),this},info:function(){return r>=3&&n(t||"log","INFO",arguments),this},debug:function(){return r>=4&&n(t||"log","DEBUG",arguments),this}}}var L=Array.isArray;function N(e){return e===Object(e)}var P=function(e){return"__proto__"!==e};function j(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce((function(e,t){for(var n in t)if("signals"===n)e.signals=I(e.signals,t.signals);else{var r="legend"===n?{layout:1}:"style"===n||null;U(e,n,t[n],r)}return e}),{})}function U(e,t,n,r){var i,a;if(P(t))if(N(n)&&!L(n))for(i in a=N(e[t])?e[t]:e[t]={},n)r&&(!0===r||r[i])?U(a,i,n[i]):P(i)&&(a[i]=n[i]);else e[t]=n}function I(e,t){if(null==e)return t;var n={},r=[];function i(e){n[e.name]||(n[e.name]=1,r.push(e))}return t.forEach(i),e.forEach(i),r}function $(e){return e[e.length-1]}function W(e){return null==e||""===e?null:+e}var G=function(e){return function(t){return e*Math.exp(t)}},H=function(e){return function(t){return Math.log(e*t)}},V=function(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}},Y=function(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}},X=function(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}};function J(e,t,n,r){var i=n(e[0]),a=n($(e)),u=(a-i)*t;return[r(i-u),r(a-u)]}function Q(e,t){return J(e,t,W,S)}function K(e,t){var n=Math.sign(e[0]);return J(e,t,H(n),G(n))}function Z(e,t,n){return J(e,t,X(n),X(1/n))}function ee(e,t,n){return J(e,t,V(n),Y(n))}function te(e,t,n,r,i){var a=r(e[0]),u=r($(e)),o=null!=t?r(t):(a+u)/2;return[i(o+(a-o)*n),i(o+(u-o)*n)]}function ne(e,t,n){return te(e,t,n,W,S)}function re(e,t,n){var r=Math.sign(e[0]);return te(e,t,n,H(r),G(r))}function ie(e,t,n,r){return te(e,t,n,X(r),X(1/r))}function ae(e,t,n,r){return te(e,t,n,V(r),Y(r))}function ue(e){return 1+~~(new Date(e).getMonth()/3)}function oe(e){return 1+~~(new Date(e).getUTCMonth()/3)}function se(e){return null!=e?L(e)?e:[e]:[]}function le(e,t,n){var r,i=e[0],a=e[1];return a<i&&(r=a,a=i,i=r),(r=a-i)>=n-t?[t,n]:[i=Math.min(Math.max(i,t),n-r),i+r]}function ce(e){return"function"==typeof e}function fe(e,t,n){n=n||{},t=se(t)||[];var r=[],i=[],a={},u=n.comparator||he;return se(e).forEach((function(e,u){null!=e&&(r.push("descending"===t[u]?-1:1),i.push(e=ce(e)?e:F(e,null,n)),(k(e)||[]).forEach((function(e){return a[e]=1})))})),0===i.length?null:x(u(i,r),Object.keys(a))}var de=function(e,t){return(e<t||null==e)&&null!=t?-1:(e>t||null==t)&&null!=e?1:(t=t instanceof Date?+t:t,(e=e instanceof Date?+e:e)!==e&&t==t?-1:t!=t&&e==e?1:0)},he=function(e,t){return 1===e.length?pe(e[0],t[0]):me(e,t,e.length)},pe=function(e,t){return function(n,r){return de(e(n),e(r))*t}},me=function(e,t,n){return t.push(0),function(r,i){for(var a,u=0,o=-1;0===u&&++o<n;)a=e[o],u=de(a(r),a(i));return u*t[o]}};function ve(e){return ce(e)?e:function(){return e}}function ge(e,t){var n;return function(r){n&&clearTimeout(n),n=setTimeout((function(){return t(r),n=null}),e)}}function ye(e){for(var t,n,r=1,i=arguments.length;r<i;++r)for(n in t=arguments[r])e[n]=t[n];return e}function be(e,t){var n,r,i,a,u=0;if(e&&(n=e.length))if(null==t){for(r=e[u];u<n&&(null==r||r!=r);r=e[++u]);for(i=a=r;u<n;++u)null!=(r=e[u])&&(r<i&&(i=r),r>a&&(a=r))}else{for(r=t(e[u]);u<n&&(null==r||r!=r);r=t(e[++u]));for(i=a=r;u<n;++u)null!=(r=t(e[u]))&&(r<i&&(i=r),r>a&&(a=r))}return[i,a]}function xe(e,t){var n,r,i,a,u,o=e.length,s=-1;if(null==t){for(;++s<o;)if(null!=(r=e[s])&&r>=r){n=i=r;break}if(s===o)return[-1,-1];for(a=u=s;++s<o;)null!=(r=e[s])&&(n>r&&(n=r,a=s),i<r&&(i=r,u=s))}else{for(;++s<o;)if(null!=(r=t(e[s],s,e))&&r>=r){n=i=r;break}if(s===o)return[-1,-1];for(a=u=s;++s<o;)null!=(r=t(e[s],s,e))&&(n>r&&(n=r,a=s),i<r&&(i=r,u=s))}return[a,u]}var _e=Object.prototype.hasOwnProperty;function ke(e,t){return _e.call(e,t)}var Ae={};function we(e){var t,n={};function r(e){return ke(n,e)&&n[e]!==Ae}var i={size:0,empty:0,object:n,has:r,get:function(e){return r(e)?n[e]:void 0},set:function(e,t){return r(e)||(++i.size,n[e]===Ae&&--i.empty),n[e]=t,this},delete:function(e){return r(e)&&(--i.size,++i.empty,n[e]=Ae),this},clear:function(){i.size=i.empty=0,i.object=n={}},test:function(e){return arguments.length?(t=e,i):t},clean:function(){var e={},r=0;for(var a in n){var u=n[a];u===Ae||t&&t(u)||(e[a]=u,++r)}i.size=r,i.empty=0,i.object=n=e}};return e&&Object.keys(e).forEach((function(t){i.set(t,e[t])})),i}function De(e,t,n,r,i,a){if(!n&&0!==n)return a;var u,o=+n,s=e[0],l=$(e);l<s&&(u=s,s=l,l=u),u=Math.abs(t-s);var c=Math.abs(l-t);return u<c&&u<=o?r:c<=o?i:a}function Ee(e,t,n){var r=e.prototype=Object.create(t.prototype);return Object.defineProperty(r,"constructor",{value:e,writable:!0,enumerable:!0,configurable:!0}),ye(r,n)}function Ce(e,t,n,r){var i,a=t[0],u=t[t.length-1];return a>u&&(i=a,a=u,u=i),r=void 0===r||r,((n=void 0===n||n)?a<=e:a<e)&&(r?e<=u:e<u)}function Fe(e){return"boolean"==typeof e}function Me(e){return"[object Date]"===Object.prototype.toString.call(e)}function Se(e){return e&&ce(e[Symbol.iterator])}function Be(e){return"number"==typeof e}function Oe(e){return"[object RegExp]"===Object.prototype.toString.call(e)}function Re(e){return"string"==typeof e}function ze(e,t,n){e&&(e=t?se(e).map((function(e){return e.replace(/\\(.)/g,"$1")})):se(e));var r,i=e&&e.length,a=n&&n.get||A,u=function(e){return a(t?[e]:C(e))};if(i)if(1===i){var o=u(e[0]);r=function(e){return""+o(e)}}else{var s=e.map(u);r=function(e){for(var t=""+s[0](e),n=0;++n<i;)t+="|"+s[n](e);return t}}else r=function(){return""};return x(r,e,"key")}function qe(e,t){var n=e[0],r=$(e),i=+t;return i?1===i?r:n+i*(r-n):n}function Te(e){var t,n,r;e=+e||1e4;var i=function(){t={},n={},r=0},a=function(i,a){return++r>e&&(n=t,t={},r=1),t[i]=a};return i(),{clear:i,has:function(e){return ke(t,e)||ke(n,e)},get:function(e){return ke(t,e)?t[e]:ke(n,e)?a(e,n[e]):void 0},set:function(e,n){return ke(t,e)?t[e]=n:a(e,n)}}}function Le(e,t,n,r){var i=t.length,a=n.length;if(!a)return t;if(!i)return n;for(var u=r||new t.constructor(i+a),o=0,s=0,l=0;o<i&&s<a;++l)u[l]=e(t[o],n[s])>0?n[s++]:t[o++];for(;o<i;++o,++l)u[l]=t[o];for(;s<a;++s,++l)u[l]=n[s];return u}function Ne(e,t){for(var n="";--t>=0;)n+=e;return n}function Pe(e,t,n,r){var i=n||" ",a=e+"",u=t-a.length;return u<=0?a:"left"===r?Ne(i,u)+a:"center"===r?Ne(i,~~(u/2))+a+Ne(i,Math.ceil(u/2)):a+Ne(i,u)}function je(e){return e&&$(e)-e[0]||0}function Ue(e){return L(e)?"["+e.map(Ue)+"]":N(e)||Re(e)?JSON.stringify(e).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):e}function Ie(e){return null==e||""===e?null:!(!e||"false"===e||"0"===e)&&!!e}var $e,We,Ge,He,Ve,Ye,Xe,Je=function(e){return Be(e)||Me(e)?e:Date.parse(e)};function Qe(e,t){return t=t||Je,null==e||""===e?null:t(e)}function Ke(e){return null==e||""===e?null:e+""}function Ze(e){for(var t={},n=e.length,r=0;r<n;++r)t[e[r]]=!0;return t}function et(e,t,n,r){var i=null!=r?r:"…",a=e+"",u=a.length,o=Math.max(0,t-i.length);return u<=t?a:"left"===n?i+a.slice(u-o):"center"===n?a.slice(0,Math.ceil(o/2))+i+a.slice(u-~~(o/2)):a.slice(0,o)+i}function tt(e,t,n){if(e)if(t)for(var r=e.length,i=0;i<r;++i){var a=t(e[i]);a&&n(a,i,e)}else e.forEach(n)}function nt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function rt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?nt(Object(n),!0).forEach((function(t){ot(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):nt(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function it(e){return it="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},it(e)}function at(e,t,n,r,i,a,u){try{var o=e[a](u),s=o.value}catch(e){return void n(e)}o.done?t(s):Promise.resolve(s).then(r,i)}function ut(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function u(e){at(a,r,i,u,o,"next",e)}function o(e){at(a,r,i,u,o,"throw",e)}u(void 0)}))}}function ot(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function st(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,i,a=[],u=!0,o=!1;try{for(n=n.call(e);!(u=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);u=!0);}catch(e){o=!0,i=e}finally{try{u||null==n.return||n.return()}finally{if(o)throw i}}return a}(e,t)||ct(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function lt(e){return function(e){if(Array.isArray(e))return ft(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ct(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ct(e,t){if(e){if("string"==typeof e)return ft(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ft(e,t):void 0}}function ft(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function dt(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=ct(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,u=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){o=!0,a=e},f:function(){try{u||null==n.return||n.return()}finally{if(o)throw a}}}}var ht="year",pt="quarter",mt="month",vt="week",gt="date",yt="day",bt="dayofyear",xt="hours",_t="minutes",kt="seconds",At="milliseconds",wt=[ht,pt,mt,vt,gt,yt,bt,xt,_t,kt,At],Dt=wt.reduce((function(e,t,n){return e[t]=1+n,e}),{});function Et(e){var t=se(e).slice(),n={};return t.length||E("Missing time unit."),t.forEach((function(e){ke(Dt,e)?n[e]=1:E("Invalid time unit: ".concat(e,"."))})),(n.week||n.day?1:0)+(n.quarter||n.month||n.date?1:0)+(n.dayofyear?1:0)>1&&E("Incompatible time units: ".concat(e)),t.sort((function(e,t){return Dt[e]-Dt[t]})),t}var Ct=(ot($e={},ht,"%Y "),ot($e,pt,"Q%q "),ot($e,mt,"%b "),ot($e,gt,"%d "),ot($e,vt,"W%U "),ot($e,yt,"%a "),ot($e,bt,"%j "),ot($e,xt,"%H:00"),ot($e,_t,"00:%M"),ot($e,kt,":%S"),ot($e,At,".%L"),ot($e,"".concat(ht,"-").concat(mt),"%Y-%m "),ot($e,"".concat(ht,"-").concat(mt,"-").concat(gt),"%Y-%m-%d "),ot($e,"".concat(xt,"-").concat(_t),"%H:%M"),$e);function Ft(e,t){var n,r,i=ye({},Ct,t),a=Et(e),u=a.length,o="",s=0;for(s=0;s<u;)for(n=a.length;n>s;--n)if(null!=i[r=a.slice(s,n).join("-")]){o+=i[r],s=n;break}return o.trim()}var Mt=new Date;function St(e){return Mt.setFullYear(e),Mt.setMonth(0),Mt.setDate(1),Mt.setHours(0,0,0,0),Mt}function Bt(e){return Rt(new Date(e))}function Ot(e){return zt(new Date(e))}function Rt(e){return a.timeDay.count(St(e.getFullYear())-1,e)}function zt(e){return a.timeWeek.count(St(e.getFullYear())-1,e)}function qt(e){return St(e).getDay()}function Tt(e,t,n,r,i,a,u){if(0<=e&&e<100){var o=new Date(-1,t,n,r,i,a,u);return o.setFullYear(e),o}return new Date(e,t,n,r,i,a,u)}function Lt(e){return Pt(new Date(e))}function Nt(e){return jt(new Date(e))}function Pt(e){var t=Date.UTC(e.getUTCFullYear(),0,1);return a.utcDay.count(t-1,e)}function jt(e){var t=Date.UTC(e.getUTCFullYear(),0,1);return a.utcWeek.count(t-1,e)}function Ut(e){return Mt.setTime(Date.UTC(e,0,1)),Mt.getUTCDay()}function It(e,t,n,r,i,a,u){if(0<=e&&e<100){var o=new Date(Date.UTC(-1,t,n,r,i,a,u));return o.setUTCFullYear(n.y),o}return new Date(Date.UTC(e,t,n,r,i,a,u))}function $t(e,t,n,r,i){var a=t||1,u=$(e),o=function(e,t,i){return function(e,t,n,r){var i=n<=1?e:r?function(t,i){return r+n*Math.floor((e(t,i)-r)/n)}:function(t,r){return n*Math.floor(e(t,r)/n)};return t?function(e,n){return t(i(e,n),n)}:i}(n[i=i||e],r[i],e===u&&a,t)},s=new Date,l=Ze(e),c=l.year?o(ht):ve(2012),f=l.month?o(mt):l.quarter?o(pt):B,d=l.week&&l.day?o(yt,1,vt+yt):l.week?o(vt,1):l.day?o(yt,1):l.date?o(gt,1):l.dayofyear?o(bt,1):O,h=l.hours?o(xt):B,p=l.minutes?o(_t):B,m=l.seconds?o(kt):B,v=l.milliseconds?o(At):B;return function(e){s.setTime(+e);var t=c(s);return i(t,f(s),d(s,t),h(s),p(s),m(s),v(s))}}function Wt(e,t,n){return t+7*e-(n+6)%7}var Gt=(ot(We={},ht,(function(e){return e.getFullYear()})),ot(We,pt,(function(e){return Math.floor(e.getMonth()/3)})),ot(We,mt,(function(e){return e.getMonth()})),ot(We,gt,(function(e){return e.getDate()})),ot(We,xt,(function(e){return e.getHours()})),ot(We,_t,(function(e){return e.getMinutes()})),ot(We,kt,(function(e){return e.getSeconds()})),ot(We,At,(function(e){return e.getMilliseconds()})),ot(We,bt,(function(e){return Rt(e)})),ot(We,vt,(function(e){return zt(e)})),ot(We,vt+yt,(function(e,t){return Wt(zt(e),e.getDay(),qt(t))})),ot(We,yt,(function(e,t){return Wt(1,e.getDay(),qt(t))})),We),Ht=(ot(Ge={},pt,(function(e){return 3*e})),ot(Ge,vt,(function(e,t){return Wt(e,0,qt(t))})),Ge);function Vt(e,t){return $t(e,t||1,Gt,Ht,Tt)}var Yt=(ot(He={},ht,(function(e){return e.getUTCFullYear()})),ot(He,pt,(function(e){return Math.floor(e.getUTCMonth()/3)})),ot(He,mt,(function(e){return e.getUTCMonth()})),ot(He,gt,(function(e){return e.getUTCDate()})),ot(He,xt,(function(e){return e.getUTCHours()})),ot(He,_t,(function(e){return e.getUTCMinutes()})),ot(He,kt,(function(e){return e.getUTCSeconds()})),ot(He,At,(function(e){return e.getUTCMilliseconds()})),ot(He,bt,(function(e){return Pt(e)})),ot(He,vt,(function(e){return jt(e)})),ot(He,yt,(function(e,t){return Wt(1,e.getUTCDay(),Ut(t))})),ot(He,vt+yt,(function(e,t){return Wt(jt(e),e.getUTCDay(),Ut(t))})),He),Xt=(ot(Ve={},pt,(function(e){return 3*e})),ot(Ve,vt,(function(e,t){return Wt(e,0,Ut(t))})),Ve);function Jt(e,t){return $t(e,t||1,Yt,Xt,It)}var Qt=(ot(Ye={},ht,a.timeYear),ot(Ye,pt,a.timeMonth.every(3)),ot(Ye,mt,a.timeMonth),ot(Ye,vt,a.timeWeek),ot(Ye,gt,a.timeDay),ot(Ye,yt,a.timeDay),ot(Ye,bt,a.timeDay),ot(Ye,xt,a.timeHour),ot(Ye,_t,a.timeMinute),ot(Ye,kt,a.timeSecond),ot(Ye,At,a.timeMillisecond),Ye),Kt=(ot(Xe={},ht,a.utcYear),ot(Xe,pt,a.utcMonth.every(3)),ot(Xe,mt,a.utcMonth),ot(Xe,vt,a.utcWeek),ot(Xe,gt,a.utcDay),ot(Xe,yt,a.utcDay),ot(Xe,bt,a.utcDay),ot(Xe,xt,a.utcHour),ot(Xe,_t,a.utcMinute),ot(Xe,kt,a.utcSecond),ot(Xe,At,a.utcMillisecond),Xe);function Zt(e){return Qt[e]}function en(e){return Kt[e]}function tn(e,t,n){return e?e.offset(t,n):void 0}function nn(e,t,n){return tn(Zt(e),t,n)}function rn(e,t,n){return tn(en(e),t,n)}function an(e,t,n,r){return e?e.range(t,n,r):void 0}function un(e,t,n,r){return an(Zt(e),t,n,r)}function on(e,t,n,r){return an(en(e),t,n,r)}var sn,ln,cn=1e3,fn=6e4,dn=36e5,hn=864e5,pn=2592e6,mn=31536e6,vn=[ht,mt,gt,xt,_t,kt,At],gn=vn.slice(0,-1),yn=gn.slice(0,-1),bn=yn.slice(0,-1),xn=bn.slice(0,-1),_n=[ht,mt],kn=[ht],An=[[gn,1,cn],[gn,5,5e3],[gn,15,15e3],[gn,30,3e4],[yn,1,fn],[yn,5,3e5],[yn,15,9e5],[yn,30,18e5],[bn,1,dn],[bn,3,108e5],[bn,6,216e5],[bn,12,432e5],[xn,1,hn],[[ht,vt],1,6048e5],[_n,1,pn],[_n,3,7776e6],[kn,1,mn]];function wn(e){var t,n,i=e.extent,a=e.maxbins||40,u=Math.abs(je(i))/a,o=r.bisector((function(e){return e[2]})).right(An,u);return o===An.length?(t=kn,n=r.tickStep(i[0]/mn,i[1]/mn,a)):o?(t=(o=An[u/An[o-1][2]<An[o][2]/u?o-1:o])[0],n=o[1]):(t=vn,n=Math.max(r.tickStep(i[0],i[1],a),1)),{units:t,step:n}}function Dn(e){var t={};return function(n){return t[n]||(t[n]=e(n))}}function En(e){var t=Dn(e.format),n=e.formatPrefix;return{format:t,formatPrefix:n,formatFloat:function(e){var n,r,a=i.formatSpecifier(e||",");if(null==a.precision){switch(a.precision=12,a.type){case"%":a.precision-=2;break;case"e":a.precision-=1}return n=t(a),r=t(".1f")(1)[1],function(e){var t=n(e),i=t.indexOf(r);if(i<0)return t;for(var a=function(e,t){var n,r=e.lastIndexOf("e");if(r>0)return r;for(r=e.length;--r>t;)if((n=e.charCodeAt(r))>=48&&n<=57)return r+1}(t,i),u=a<t.length?t.slice(a):"";--a>i;)if("0"!==t[a]){++a;break}return t.slice(0,a)+u}}return t(a)},formatSpan:function(e,a,u,o){o=i.formatSpecifier(null==o?",f":o);var s,l=r.tickStep(e,a,u),c=Math.max(Math.abs(e),Math.abs(a));if(null==o.precision)switch(o.type){case"s":return isNaN(s=i.precisionPrefix(l,c))||(o.precision=s),n(o,c);case"":case"e":case"g":case"p":case"r":isNaN(s=i.precisionRound(l,c))||(o.precision=s-("e"===o.type));break;case"f":case"%":isNaN(s=i.precisionFixed(l))||(o.precision=s-2*("%"===o.type))}return t(o)}}}function Cn(){return sn=En({format:i.format,formatPrefix:i.formatPrefix})}function Fn(e){return En(i.formatLocale(e))}function Mn(e){return arguments.length?sn=Fn(e):sn}function Sn(e,t,n){N(n=n||{})||E("Invalid time multi-format specifier: ".concat(n));var r=t(kt),i=t(_t),a=t(xt),u=t(gt),o=t(vt),s=t(mt),l=t(pt),c=t(ht),f=e(n.milliseconds||".%L"),d=e(n.seconds||":%S"),h=e(n.minutes||"%I:%M"),p=e(n.hours||"%I %p"),m=e(n.date||n.day||"%a %d"),v=e(n.week||"%b %d"),g=e(n.month||"%B"),y=e(n.quarter||"%B"),b=e(n.year||"%Y");return function(e){return(r(e)<e?f:i(e)<e?d:a(e)<e?h:u(e)<e?p:s(e)<e?o(e)<e?m:v:c(e)<e?l(e)<e?g:y:b)(e)}}function Bn(e){var t=Dn(e.format),n=Dn(e.utcFormat);return{timeFormat:function(e){return Re(e)?t(e):Sn(t,Zt,e)},utcFormat:function(e){return Re(e)?n(e):Sn(n,en,e)},timeParse:Dn(e.parse),utcParse:Dn(e.utcParse)}}function On(){return ln=Bn({format:u.timeFormat,parse:u.timeParse,utcFormat:u.utcFormat,utcParse:u.utcParse})}function Rn(e){return Bn(u.timeFormatLocale(e))}function zn(e){return arguments.length?ln=Rn(e):ln}Cn(),On();var qn=function(e,t){return ye({},e,t)};function Tn(e,t){var n=e?Fn(e):Mn(),r=t?Rn(t):zn();return qn(n,r)}function Ln(e,t){var n=arguments.length;return n&&2!==n&&E("defaultLocale expects either zero or two arguments."),n?qn(Mn(e),zn(t)):qn(Mn(),zn())}var Nn=/^(data:|([A-Za-z]+:)?\/\/)/,Pn=/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp|file|data):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i,jn=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,Un="file://";function In(e,t){return $n.apply(this,arguments)}function $n(){return($n=ut(regeneratorRuntime.mark((function e(t,n){var r,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.sanitize(t,n);case 2:return r=e.sent,i=r.href,e.abrupt("return",r.localFile?this.file(i):this.http(i,n));case 5:case"end":return e.stop()}}),e,this)})))).apply(this,arguments)}function Wn(e,t){return Gn.apply(this,arguments)}function Gn(){return Gn=ut(regeneratorRuntime.mark((function e(t,n){var r,i,a,u,o,s,l;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=ye({},this.options,n),r=this.fileAccess,i={href:null},s=Pn.test(t.replace(jn,"")),null!=t&&"string"==typeof t&&s||E("Sanitize failure, invalid URI: "+Ue(t)),l=Nn.test(t),(o=n.baseURL)&&!l&&(t.startsWith("/")||o.endsWith("/")||(t="/"+t),t=o+t),u=(a=t.startsWith(Un))||"file"===n.mode||"http"!==n.mode&&!l&&r,a?t=t.slice(Un.length):t.startsWith("//")&&("file"===n.defaultProtocol?(t=t.slice(2),u=!0):t=(n.defaultProtocol||"http")+":"+t),Object.defineProperty(i,"localFile",{value:!!u}),i.href=t,n.target&&(i.target=n.target+""),n.rel&&(i.rel=n.rel+""),"image"===n.context&&n.crossOrigin&&(i.crossOrigin=n.crossOrigin+""),e.abrupt("return",i);case 14:case"end":return e.stop()}}),e,this)}))),Gn.apply(this,arguments)}function Hn(e){return e?function(t){return new Promise((function(n,r){e.readFile(t,(function(e,t){e?r(e):n(t)}))}))}:Vn}function Vn(){return Yn.apply(this,arguments)}function Yn(){return(Yn=ut(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:E("No file system access.");case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Xn(e){return e?function(){var t=ut(regeneratorRuntime.mark((function t(n,r){var i,a,u;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=ye({},this.options.http,r),a=r&&r.response,t.next=4,e(n,i);case 4:return u=t.sent,t.abrupt("return",u.ok?ce(u[a])?u[a]():u.text():E(u.status+""+u.statusText));case 6:case"end":return t.stop()}}),t,this)})));return function(e,n){return t.apply(this,arguments)}}():Jn}function Jn(){return Qn.apply(this,arguments)}function Qn(){return(Qn=ut(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:E("No HTTP fetch method available.");case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Kn=function(e){return!(Number.isNaN(+e)||e instanceof Date)},Zn={boolean:Ie,integer:W,number:W,date:Qe,string:Ke,unknown:S},er=[function(e){return"true"===e||"false"===e||!0===e||!1===e},function(e){return Kn(e)&&Number.isInteger(+e)},Kn,function(e){return!Number.isNaN(Date.parse(e))}],tr=["boolean","integer","number","date"];function nr(e,t){if(!e||!e.length)return"unknown";for(var n,r,i,a=e.length,u=er.length,o=er.map((function(e,t){return t+1})),s=0,l=0;s<a;++s)for(r=t?e[s][t]:e[s],n=0;n<u;++n)if(o[n]&&(null!=(i=r)&&i==i)&&!er[n](r)&&(o[n]=0,++l===er.length))return"string";return tr[o.reduce((function(e,t){return 0===e?t:e}),0)-1]}function rr(e,t){return t.reduce((function(t,n){return t[n]=nr(e,n),t}),{})}function ir(e){var t=function(t,n){var r={delimiter:e};return ar(t,n?ye(n,r):r)};return t.responseType="text",t}function ar(e,n){return n.header&&(e=n.header.map(Ue).join(n.delimiter)+"\n"+e),t.dsvFormat(n.delimiter).parse(e+"")}function ur(e,t){var n,r=t&&t.property?F(t.property):S;return!N(e)||(n=e,"function"==typeof Buffer&&ce(Buffer.isBuffer)&&Buffer.isBuffer(n))?r(JSON.parse(e)):function(e,t){!L(e)&&Se(e)&&(e=lt(e));return t&&t.copy?JSON.parse(JSON.stringify(e)):e}(r(e),t)}ar.responseType="text",ur.responseType="json";var or={interior:function(e,t){return e!==t},exterior:function(e,t){return e===t}};function sr(e,t){var r,i,a,u;return e=ur(e,t),t&&t.feature?(r=n.feature,a=t.feature):t&&t.mesh?(r=n.mesh,a=t.mesh,u=or[t.filter]):E("Missing TopoJSON feature or mesh parameter."),(i=(i=e.objects[a])?r(e,i,u):E("Invalid TopoJSON object: "+a))&&i.features||[i]}sr.responseType="json";var lr={dsv:ar,csv:ir(","),tsv:ir("\t"),json:ur,topojson:sr};function cr(e,t){return arguments.length>1?(lr[e]=t,this):ke(lr,e)?lr[e]:null}function fr(e){var t=cr(e);return t&&t.responseType||"text"}function dr(e,t,n,r){var i=cr((t=t||{}).type||"json");return i||E("Unknown data format type: "+t.type),e=i(e,t),t.parse&&function(e,t,n,r){if(!e.length)return;var i=zn();n=n||i.timeParse,r=r||i.utcParse;var a,u,o,s,l,c,f=e.columns||Object.keys(e[0]);"auto"===t&&(t=rr(e,f));var d=(f=Object.keys(t)).map((function(e){var i,a,u=t[e];if(u&&(u.startsWith("date:")||u.startsWith("utc:")))return("'"===(a=(i=u.split(/:(.+)?/,2))[1])[0]&&"'"===a[a.length-1]||'"'===a[0]&&'"'===a[a.length-1])&&(a=a.slice(1,-1)),("utc"===i[0]?r:n)(a);if(!Zn[u])throw Error("Illegal format pattern: "+e+":"+u);return Zn[u]}));for(o=0,l=e.length,c=f.length;o<l;++o)for(a=e[o],s=0;s<c;++s)a[u=f[s]]=d[s](a[u])}(e,t.parse,n,r),ke(e,"columns")&&delete e.columns,e}var hr=function(e,t){return function(n){return{options:n||{},sanitize:Wn,load:In,fileAccess:!!t,file:Hn(t),http:Xn(e)}}}("undefined"!=typeof fetch&&fetch,null);function pr(e){var t=e||S,n=[],r={};return n.add=function(e){var i=t(e);return r[i]||(r[i]=1,n.push(e)),n},n.remove=function(e){var i=t(e);if(r[i]){r[i]=0;var a=n.indexOf(e);a>=0&&n.splice(a,1)}return n},n}function mr(e,t){return vr.apply(this,arguments)}function vr(){return(vr=ut(regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,n(t);case 3:e.next=8;break;case 5:e.prev=5,e.t0=e.catch(0),t.error(e.t0);case 8:case"end":return e.stop()}}),e,null,[[0,5]])})))).apply(this,arguments)}var gr=Symbol("vega_id"),yr=1;function br(e){return!(!e||!xr(e))}function xr(e){return e[gr]}function _r(e,t){return e[gr]=t,e}function kr(e){var t=e===Object(e)?e:{data:e};return xr(t)?t:_r(t,yr++)}function Ar(e){return wr(e,kr({}))}function wr(e,t){for(var n in e)t[n]=e[n];return t}function Dr(e,t){return _r(t,xr(e))}function Er(e,t){return e?t?function(n,r){return e(n,r)||xr(t(n))-xr(t(r))}:function(t,n){return e(t,n)||xr(t)-xr(n)}:null}function Cr(e){return e&&e.constructor===Fr}function Fr(){var e=[],t=[],n=[],r=[],i=[],a=null,u=!1;return{constructor:Fr,insert:function(t){for(var n=se(t),r=n.length,i=0;i<r;++i)e.push(n[i]);return this},remove:function(e){for(var n=ce(e)?r:t,i=se(e),a=i.length,u=0;u<a;++u)n.push(i[u]);return this},modify:function(e,t,r){var a={field:t,value:ve(r)};return ce(e)?(a.filter=e,i.push(a)):(a.tuple=e,n.push(a)),this},encode:function(e,t){return ce(e)?i.push({filter:e,field:t}):n.push({tuple:e,field:t}),this},clean:function(e){return a=e,this},reflow:function(){return u=!0,this},pulse:function(o,s){var l,c,f,d,h,p,m={},v={};for(l=0,c=s.length;l<c;++l)m[xr(s[l])]=1;for(l=0,c=t.length;l<c;++l)m[xr(h=t[l])]=-1;for(l=0,c=r.length;l<c;++l)d=r[l],s.forEach((function(e){d(e)&&(m[xr(e)]=-1)}));for(l=0,c=e.length;l<c;++l)p=xr(h=e[l]),m[p]?m[p]=1:o.add.push(kr(e[l]));for(l=0,c=s.length;l<c;++l)h=s[l],m[xr(h)]<0&&o.rem.push(h);function g(e,t,n){n?e[t]=n(e):o.encode=t,u||(v[xr(e)]=e)}for(l=0,c=n.length;l<c;++l)h=(f=n[l]).tuple,d=f.field,(p=m[xr(h)])>0&&(g(h,d,f.value),o.modifies(d));for(l=0,c=i.length;l<c;++l)f=i[l],d=f.filter,s.forEach((function(e){d(e)&&m[xr(e)]>0&&g(e,f.field,f.value)})),o.modifies(f.field);if(u)o.mod=t.length||r.length?s.filter((function(e){return m[xr(e)]>0})):s.slice();else for(p in v)o.mod.push(v[p]);return(a||null==a&&(t.length||r.length))&&o.clean(!0),o}}}var Mr="_:mod:_";function Sr(){Object.defineProperty(this,Mr,{writable:!0,value:{}})}Sr.prototype={set:function(e,t,n,r){var i=this,a=i[e],u=i[Mr];return null!=t&&t>=0?(a[t]!==n||r)&&(a[t]=n,u[t+":"+e]=-1,u[e]=-1):(a!==n||r)&&(i[e]=n,u[e]=L(n)?1+n.length:-1),i},modified:function(e,t){var n=this[Mr];if(!arguments.length){for(var r in n)if(n[r])return!0;return!1}if(L(e)){for(var i=0;i<e.length;++i)if(n[e[i]])return!0;return!1}return null!=t&&t>=0?t+1<n[e]||!!n[t+":"+e]:!!n[e]},clear:function(){return this[Mr]={},this}};var Br=0,Or=new Sr;function Rr(e,t,n,r){this.id=++Br,this.value=e,this.stamp=-1,this.rank=-1,this.qrank=-1,this.flags=0,t&&(this._update=t),n&&this.parameters(n,r)}function zr(e){return function(t){var n=this.flags;return 0===arguments.length?!!(n&e):(this.flags=t?n|e:n&~e,this)}}Rr.prototype={targets:function(){return this._targets||(this._targets=pr(M))},set:function(e){return this.value!==e?(this.value=e,1):0},skip:zr(1),modified:zr(2),parameters:function(e,t,n){var r=this;t=!1!==t;var i,a,u,o,s=this._argval=this._argval||new Sr,l=this._argops=this._argops||[],c=[],f=function(e,n,i){i instanceof Rr?(i!==r&&(t&&i.targets().add(r),c.push(i)),l.push({op:i,name:e,index:n})):s.set(e,n,i)};for(i in e)if(a=e[i],"pulse"===i)se(a).forEach((function(e){e instanceof Rr?e!==r&&(e.targets().add(r),c.push(e)):E("Pulse parameters must be operator instances.")})),this.source=a;else if(L(a))for(s.set(i,-1,Array(u=a.length)),o=0;o<u;++o)f(i,o,a[o]);else f(i,-1,a);return this.marshall().clear(),n&&(l.initonly=!0),c},marshall:function(e){var t,n,r,i,a=this._argval||Or,u=this._argops;if(u){var o=u.length;for(n=0;n<o;++n)i=(r=(t=u[n]).op).modified()&&r.stamp===e,a.set(t.name,t.index,r.value,i);if(u.initonly){for(n=0;n<o;++n)(t=u[n]).op.targets().remove(this);this._argops=null,this._update=null}}return a},detach:function(){var e,t,n,r=this._argops;if(r)for(e=0,t=r.length;e<t;++e)(n=r[e].op)._targets&&n._targets.remove(this);this.pulse=null,this.source=null},evaluate:function(e){var t=this._update;if(t){var n=this.marshall(e.stamp),r=t.call(this,n,e);if(n.clear(),r!==this.value)this.value=r;else if(!this.modified())return e.StopPropagation}},run:function(e){return e.stamp<this.stamp?e.StopPropagation:(this.skip()?(this.skip(!1),t=0):t=this.evaluate(e),this.pulse=t||e);var t}};var qr=0;function Tr(e,t,n){this.id=++qr,this.value=null,n&&(this.receive=n),e&&(this._filter=e),t&&(this._apply=t)}function Lr(e,t,n){return new Tr(e,t,n)}function Nr(){return Nr=ut(regeneratorRuntime.mark((function e(t,n){var r,i,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this,i=0,e.prev=2,e.next=5,r.loader().load(t,{context:"dataflow",response:fr(n&&n.type)});case 5:a=e.sent;try{a=r.parse(a,n)}catch(e){i=-2,r.warn("Data ingestion failed",t,e)}e.next=13;break;case 9:e.prev=9,e.t0=e.catch(2),i=-1,r.warn("Loading failed",t,e.t0);case 13:return e.abrupt("return",{data:a,status:i});case 14:case"end":return e.stop()}}),e,this,[[2,9]])}))),Nr.apply(this,arguments)}function Pr(){return Pr=ut(regeneratorRuntime.mark((function e(t,n,r){var i,a,u;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(a=(i=this)._pending||jr(i)).requests+=1,e.next=4,i.request(n,r);case 4:return u=e.sent,i.pulse(t,i.changeset().remove(R).insert(u.data||[])),a.done(),e.abrupt("return",u);case 8:case"end":return e.stop()}}),e,this)}))),Pr.apply(this,arguments)}function jr(e){var t,n=new Promise((function(e){return t=e}));return n.requests=0,n.done=function(){0==--n.requests&&(e._pending=null,t(e))},e._pending=n}Tr.prototype={_filter:R,_apply:S,targets:function(){return this._targets||(this._targets=pr(M))},consume:function(e){return arguments.length?(this._consume=!!e,this):!!this._consume},receive:function(e){if(this._filter(e)){for(var t=this.value=this._apply(e),n=this._targets,r=n?n.length:0,i=0;i<r;++i)n[i].receive(t);this._consume&&(e.preventDefault(),e.stopPropagation())}},filter:function(e){var t=Lr(e);return this.targets().add(t),t},apply:function(e){var t=Lr(null,e);return this.targets().add(t),t},merge:function(){var e=Lr();this.targets().add(e);for(var t=0,n=arguments.length;t<n;++t)arguments[t].targets().add(e);return e},throttle:function(e){var t=-1;return this.filter((function(){var n=Date.now();return n-t>e?(t=n,1):0}))},debounce:function(e){var t=Lr();return this.targets().add(Lr(null,null,ge(e,(function(e){var n=e.dataflow;t.receive(e),n&&n.run&&n.run()})))),t},between:function(e,t){var n=!1;return e.targets().add(Lr(null,null,(function(){return n=!0}))),t.targets().add(Lr(null,null,(function(){return n=!1}))),this.filter((function(){return n}))},detach:function(){this._filter=R,this._targets=null}};var Ur={skip:!0};function Ir(e,t,n,r,i,a){var u,o,s=ye({},a,Ur);ce(n)||(n=ve(n)),void 0===r?u=function(t){return e.touch(n(t))}:ce(r)?(o=new Rr(null,r,i,!1),u=function(t){o.evaluate(t);var r=n(t),i=o.value;Cr(i)?e.pulse(r,i,a):e.update(r,i,s)}):u=function(t){return e.update(n(t),r,s)},t.apply(u)}function $r(e,t,n,r,i,a){if(void 0===r)t.targets().add(n);else{var u=a||{},o=new Rr(null,function(e,t){return t=ce(t)?t:ve(t),e?function(n,r){var i=t(n,r);return e.skip()||(e.skip(i!==this.value).value=i),i}:t}(n,r),i,!1);o.modified(u.force),o.rank=t.rank,t.targets().add(o),n&&(o.skip(!0),o.value=n.value,o.targets().add(n),e.connect(n,[o]))}}var Wr={};function Gr(e,t,n){this.dataflow=e,this.stamp=null==t?-1:t,this.add=[],this.rem=[],this.mod=[],this.fields=null,this.encode=n||null}function Hr(e,t){var n=[];return tt(e,t,(function(e){return n.push(e)})),n}function Vr(e,t){var n={};return e.visit(t,(function(e){n[xr(e)]=1})),function(e){return n[xr(e)]?null:e}}function Yr(e,t){return e?function(n,r){return e(n,r)&&t(n,r)}:t}function Xr(e,t,n,r){var i=this,a=0;this.dataflow=e,this.stamp=t,this.fields=null,this.encode=r||null,this.pulses=n;var u,o=dt(n);try{for(o.s();!(u=o.n()).done;){var s=u.value;if(s.stamp===t){if(s.fields){var l=i.fields||(i.fields={});for(var c in s.fields)l[c]=1}s.changed(i.ADD)&&(a|=i.ADD),s.changed(i.REM)&&(a|=i.REM),s.changed(i.MOD)&&(a|=i.MOD)}}}catch(e){o.e(e)}finally{o.f()}this.changes=a}function Jr(){return Jr=ut(regeneratorRuntime.mark((function e(t,n,r){var i,a,u,o,s,l,c,f,d;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=[],!(i=this)._pulse){e.next=3;break}return e.abrupt("return",Kr(i));case 3:if(!i._pending){e.next=6;break}return e.next=6,i._pending;case 6:if(!n){e.next=9;break}return e.next=9,mr(i,n);case 9:if(i._touched.length){e.next=12;break}return i.debug("Dataflow invoked, but nothing to do."),e.abrupt("return",i);case 12:u=++i._clock,i._pulse=new Gr(i,u,t),i._touched.forEach((function(e){return i._enqueue(e,!0)})),i._touched=pr(M),o=0,e.prev=17;case 18:if(!(i._heap.size()>0)){e.next=35;break}if((s=i._heap.pop()).rank===s.qrank){e.next=23;break}return i._enqueue(s,!0),e.abrupt("continue",18);case 23:if(!(l=s.run(i._getPulse(s,t))).then){e.next=30;break}return e.next=27,l;case 27:l=e.sent,e.next=31;break;case 30:l.async&&(a.push(l.async),l=Wr);case 31:l!==Wr&&s._targets&&s._targets.forEach((function(e){return i._enqueue(e)})),++o,e.next=18;break;case 35:e.next=41;break;case 37:e.prev=37,e.t0=e.catch(17),i._heap.clear(),c=e.t0;case 41:if(i._input={},i._pulse=null,i.debug("Pulse ".concat(u,": ").concat(o," operators")),c&&(i._postrun=[],i.error(c)),!i._postrun.length){e.next=55;break}f=i._postrun.sort((function(e,t){return t.priority-e.priority})),i._postrun=[],d=0;case 49:if(!(d<f.length)){e.next=55;break}return e.next=52,mr(i,f[d].callback);case 52:++d,e.next=49;break;case 55:if(!r){e.next=58;break}return e.next=58,mr(i,r);case 58:return a.length&&Promise.all(a).then((function(e){return i.runAsync(null,(function(){e.forEach((function(e){try{e(i)}catch(e){i.error(e)}}))}))})),e.abrupt("return",i);case 60:case"end":return e.stop()}}),e,this,[[17,37]])}))),Jr.apply(this,arguments)}function Qr(){return Qr=ut(regeneratorRuntime.mark((function e(t,n,r){var i,a=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._running){e.next=5;break}return e.next=3,this._running;case 3:e.next=0;break;case 5:return i=function(){return a._running=null},(this._running=this.evaluate(t,n,r)).then(i,i),e.abrupt("return",this._running);case 8:case"end":return e.stop()}}),e,this)}))),Qr.apply(this,arguments)}function Kr(e){return e.error("Dataflow already running. Use runAsync() to chain invocations."),e}Gr.prototype={StopPropagation:Wr,ADD:1,REM:2,MOD:4,ADD_REM:3,ADD_MOD:5,ALL:7,REFLOW:8,SOURCE:16,NO_SOURCE:32,NO_FIELDS:64,fork:function(e){return new Gr(this.dataflow).init(this,e)},clone:function(){var e=this.fork(7);return e.add=e.add.slice(),e.rem=e.rem.slice(),e.mod=e.mod.slice(),e.source&&(e.source=e.source.slice()),e.materialize(23)},addAll:function(){var e=this;return!e.source||e.add===e.rem||!e.rem.length&&e.source.length===e.add.length||((e=new Gr(this.dataflow).init(this)).add=e.source,e.rem=[]),e},init:function(e,t){var n=this;return n.stamp=e.stamp,n.encode=e.encode,!e.fields||64&t||(n.fields=e.fields),1&t?(n.addF=e.addF,n.add=e.add):(n.addF=null,n.add=[]),2&t?(n.remF=e.remF,n.rem=e.rem):(n.remF=null,n.rem=[]),4&t?(n.modF=e.modF,n.mod=e.mod):(n.modF=null,n.mod=[]),32&t?(n.srcF=null,n.source=null):(n.srcF=e.srcF,n.source=e.source,e.cleans&&(n.cleans=e.cleans)),n},runAfter:function(e){this.dataflow.runAfter(e)},changed:function(e){var t=e||7;return 1&t&&this.add.length||2&t&&this.rem.length||4&t&&this.mod.length},reflow:function(e){if(e)return this.fork(7).reflow();var t=this.add.length,n=this.source&&this.source.length;return n&&n!==t&&(this.mod=this.source,t&&this.filter(4,Vr(this,1))),this},clean:function(e){return arguments.length?(this.cleans=!!e,this):this.cleans},modifies:function(e){var t=this.fields||(this.fields={});return L(e)?e.forEach((function(e){return t[e]=!0})):t[e]=!0,this},modified:function(e,t){var n=this.fields;return!(!t&&!this.mod.length||!n)&&(arguments.length?L(e)?e.some((function(e){return n[e]})):n[e]:!!n)},filter:function(e,t){var n=this;return 1&e&&(n.addF=Yr(n.addF,t)),2&e&&(n.remF=Yr(n.remF,t)),4&e&&(n.modF=Yr(n.modF,t)),16&e&&(n.srcF=Yr(n.srcF,t)),n},materialize:function(e){var t=this;return 1&(e=e||7)&&t.addF&&(t.add=Hr(t.add,t.addF),t.addF=null),2&e&&t.remF&&(t.rem=Hr(t.rem,t.remF),t.remF=null),4&e&&t.modF&&(t.mod=Hr(t.mod,t.modF),t.modF=null),16&e&&t.srcF&&(t.source=t.source.filter(t.srcF),t.srcF=null),t},visit:function(e,t){var n=this,r=t;if(16&e)return tt(n.source,n.srcF,r),n;1&e&&tt(n.add,n.addF,r),2&e&&tt(n.rem,n.remF,r),4&e&&tt(n.mod,n.modF,r);var i=n.source;if(8&e&&i){var a=n.add.length+n.mod.length;a===i.length||tt(i,a?Vr(n,5):n.srcF,r)}return n}},Ee(Xr,Gr,{fork:function(e){var t=new Gr(this.dataflow).init(this,e&this.NO_FIELDS);return void 0!==e&&(e&t.ADD&&this.visit(t.ADD,(function(e){return t.add.push(e)})),e&t.REM&&this.visit(t.REM,(function(e){return t.rem.push(e)})),e&t.MOD&&this.visit(t.MOD,(function(e){return t.mod.push(e)}))),t},changed:function(e){return this.changes&e},modified:function(e){var t=this,n=t.fields;return n&&t.changes&t.MOD?L(e)?e.some((function(e){return n[e]})):n[e]:0},filter:function(){E("MultiPulse does not support filtering.")},materialize:function(){E("MultiPulse does not support materialization.")},visit:function(e,t){var n=this,r=n.pulses,i=r.length,a=0;if(e&n.SOURCE)for(;a<i;++a)r[a].visit(e,t);else for(;a<i;++a)r[a].stamp===n.stamp&&r[a].visit(e,t);return n}});var Zr={skip:!1,force:!1};function ei(e){var t=[];return{clear:function(){return t=[]},size:function(){return t.length},peek:function(){return t[0]},push:function(n){return t.push(n),ti(t,0,t.length-1,e)},pop:function(){var n,r=t.pop();return t.length?(n=t[0],t[0]=r,function(e,t,n){var r,i=t,a=e.length,u=e[t],o=1+(t<<1);for(;o<a;)(r=o+1)<a&&n(e[o],e[r])>=0&&(o=r),e[t]=e[o],o=1+((t=o)<<1);e[t]=u,ti(e,i,t,n)}(t,0,e)):n=r,n}}}function ti(e,t,n,r){for(var i,a,u=e[n];n>t&&r(u,i=e[a=n-1>>1])<0;)e[n]=i,n=a;return e[n]=u}function ni(){this.logger(T()),this.logLevel(1),this._clock=0,this._rank=0,this._locale=Ln();try{this._loader=hr()}catch(e){}this._touched=pr(M),this._input={},this._pulse=null,this._heap=ei((function(e,t){return e.qrank-t.qrank})),this._postrun=[]}function ri(e){return function(){return this._log[e].apply(this,arguments)}}function ii(e,t){Rr.call(this,e,null,t)}ni.prototype={stamp:function(){return this._clock},loader:function(e){return arguments.length?(this._loader=e,this):this._loader},locale:function(e){return arguments.length?(this._locale=e,this):this._locale},logger:function(e){return arguments.length?(this._log=e,this):this._log},error:ri("error"),warn:ri("warn"),info:ri("info"),debug:ri("debug"),logLevel:ri("level"),cleanThreshold:1e4,add:function(e,t,n,r){var i,a=1;return e instanceof Rr?i=e:e&&e.prototype instanceof Rr?i=new e:ce(e)?i=new Rr(null,e):(a=0,i=new Rr(e,t)),this.rank(i),a&&(r=n,n=t),n&&this.connect(i,i.parameters(n,r)),this.touch(i),i},connect:function(e,t){for(var n=e.rank,r=t.length,i=0;i<r;++i)if(n<t[i].rank)return void this.rerank(e)},rank:function(e){e.rank=++this._rank},rerank:function(e){for(var t,n,r,i=[e];i.length;)if(this.rank(t=i.pop()),n=t._targets)for(r=n.length;--r>=0;)i.push(t=n[r]),t===e&&E("Cycle detected in dataflow graph.")},pulse:function(e,t,n){this.touch(e,n||Zr);var r=new Gr(this,this._clock+(this._pulse?0:1)),i=e.pulse&&e.pulse.source||[];return r.target=e,this._input[e.id]=t.pulse(r,i),this},touch:function(e,t){var n=t||Zr;return this._pulse?this._enqueue(e):this._touched.add(e),n.skip&&e.skip(!0),this},update:function(e,t,n){var r=n||Zr;return(e.set(t)||r.force)&&this.touch(e,r),this},changeset:Fr,ingest:function(e,t,n){return t=this.parse(t,n),this.pulse(e,this.changeset().insert(t))},parse:function(e,t){var n=this.locale();return dr(e,t,n.timeParse,n.utcParse)},preload:function(e,t,n){return Pr.apply(this,arguments)},request:function(e,t){return Nr.apply(this,arguments)},events:function(e,t,n,r){for(var i,a=this,u=Lr(n,r),o=function(e){e.dataflow=a;try{u.receive(e)}catch(e){a.error(e)}finally{a.run()}},s=(i="string"==typeof e&&"undefined"!=typeof document?document.querySelectorAll(e):se(e)).length,l=0;l<s;++l)i[l].addEventListener(t,o);return u},on:function(e,t,n,r,i){return(e instanceof Rr?$r:Ir)(this,e,t,n,r,i),this},evaluate:function(e,t,n){return Jr.apply(this,arguments)},run:function(e,t,n){return this._pulse?Kr(this):(this.evaluate(e,t,n),this)},runAsync:function(e,t,n){return Qr.apply(this,arguments)},runAfter:function(e,t,n){if(this._pulse||t)this._postrun.push({priority:n||0,callback:e});else try{e(this)}catch(e){this.error(e)}},_enqueue:function(e,t){var n=e.stamp<this._clock;n&&(e.stamp=this._clock),(n||t)&&(e.qrank=e.rank,this._heap.push(e))},_getPulse:function(e,t){var n=e.source,r=this._clock;return n&&L(n)?new Xr(this,r,n.map((function(e){return e.pulse})),t):this._input[e.id]||function(e,t){if(t&&t.stamp===e.stamp)return t;e=e.fork(),t&&t!==Wr&&(e.source=t.source);return e}(this._pulse,n&&n.pulse)}},Ee(ii,Rr,{run:function(e){var t,n=this;return e.stamp<this.stamp?e.StopPropagation:(this.skip()?this.skip(!1):t=this.evaluate(e),(t=t||e).then?t=t.then((function(e){return n.pulse=e})):t!==e.StopPropagation&&(this.pulse=t),t)},evaluate:function(e){var t=this.marshall(e.stamp),n=this.transform(t,e);return t.clear(),n},transform:function(){}});var ai={};function ui(e){var t=oi(e);return t&&t.Definition||null}function oi(e){return e=e&&e.toLowerCase(),ke(ai,e)?ai[e]:null}var si=regeneratorRuntime.mark(li);function li(e,t){var n,r,i,a,u,o,s;return regeneratorRuntime.wrap((function(l){for(;;)switch(l.prev=l.next){case 0:if(null!=t){l.next=21;break}n=dt(e),l.prev=2,n.s();case 4:if((r=n.n()).done){l.next=11;break}if(!(null!=(i=r.value)&&""!==i&&(i=+i)>=i)){l.next=9;break}return l.next=9,i;case 9:l.next=4;break;case 11:l.next=16;break;case 13:l.prev=13,l.t0=l.catch(2),n.e(l.t0);case 16:return l.prev=16,n.f(),l.finish(16);case 19:l.next=41;break;case 21:a=-1,u=dt(e),l.prev=23,u.s();case 25:if((o=u.n()).done){l.next=33;break}if(s=o.value,!(null!=(s=t(s,++a,e))&&""!==s&&(s=+s)>=s)){l.next=31;break}return l.next=31,s;case 31:l.next=25;break;case 33:l.next=38;break;case 35:l.prev=35,l.t1=l.catch(23),u.e(l.t1);case 38:return l.prev=38,u.f(),l.finish(38);case 41:case"end":return l.stop()}}),si,null,[[2,13,16,19],[23,35,38,41]])}function ci(e,t,n){var i=Float64Array.from(li(e,n));return i.sort(r.ascending),t.map((function(e){return r.quantileSorted(i,e)}))}function fi(e,t){return ci(e,[.25,.5,.75],t)}function di(e,t){var n=e.length,i=r.deviation(e,t),a=fi(e,t),u=(a[2]-a[0])/1.34;return 1.06*(Math.min(i,u)||i||Math.abs(a[0])||1)*Math.pow(n,-.2)}function hi(e){var t,n,r,i,a,u,o=e.maxbins||20,s=e.base||10,l=Math.log(s),c=e.divide||[5,2],f=e.extent[0],d=e.extent[1],h=e.span||d-f||Math.abs(f)||1;if(e.step)t=e.step;else if(e.steps){for(i=h/o,a=0,u=e.steps.length;a<u&&e.steps[a]<i;++a);t=e.steps[Math.max(0,a-1)]}else{for(n=Math.ceil(Math.log(o)/l),r=e.minstep||0,t=Math.max(r,Math.pow(s,Math.round(Math.log(h)/l)-n));Math.ceil(h/t)>o;)t*=s;for(a=0,u=c.length;a<u;++a)(i=t/c[a])>=r&&h/i<=o&&(t=i)}var p=(i=Math.log(t))>=0?0:1+~~(-i/l),m=Math.pow(s,-p-1);return(e.nice||void 0===e.nice)&&(f=f<(i=Math.floor(f/t+m)*t)?i-t:i,d=Math.ceil(d/t)*t),{start:f,stop:d===f?f+t:d,step:t}}function pi(t,n,i,a){if(!t.length)return[void 0,void 0];var u,o,s,l,c=Float64Array.from(li(t,a)),f=c.length,d=n;for(s=0,l=Array(d);s<d;++s){for(u=0,o=0;o<f;++o)u+=c[~~(e.random()*f)];l[s]=u/f}return l.sort(r.ascending),[r.quantile(l,i/2),r.quantile(l,1-i/2)]}function mi(e,t,n,r){r=r||function(e){return e};for(var i,a=e.length,u=new Float64Array(a),o=0,s=1,l=r(e[0]),c=l,f=l+t;s<a;++s){if((i=r(e[s]))>=f){for(c=(l+c)/2;o<s;++o)u[o]=c;f=i+t,l=i}c=i}for(c=(l+c)/2;o<s;++o)u[o]=c;return n?function(e,t){var n,r,i=e.length,a=0,u=1;for(;e[a]===e[u];)++u;for(;u<i;){for(n=u+1;e[u]===e[n];)++n;if(e[u]-e[u-1]<t){for(r=u+(a+n-u-u>>1);r<u;)e[r++]=e[u];for(;r>u;)e[r--]=e[a]}a=u,u=n}return e}(u,t+t/4):u}e.random=Math.random;var vi=Math.sqrt(2*Math.PI),gi=Math.SQRT2,yi=NaN;function bi(t,n){t=t||0,n=null==n?1:n;var r,i,a=0,u=0;if(yi==yi)a=yi,yi=NaN;else{do{r=(a=2*e.random()-1)*a+(u=2*e.random()-1)*u}while(0===r||r>1);a*=i=Math.sqrt(-2*Math.log(r)/r),yi=u*i}return t+a*n}function xi(e,t,n){var r=(e-(t||0))/(n=null==n?1:n);return Math.exp(-.5*r*r)/(n*vi)}function _i(e,t,n){var r,i=(e-(t=t||0))/(n=null==n?1:n),a=Math.abs(i);if(a>37)r=0;else{var u=Math.exp(-a*a/2);a<7.07106781186547?(r=u*((((((.0352624965998911*a+.700383064443688)*a+6.37396220353165)*a+33.912866078383)*a+112.079291497871)*a+221.213596169931)*a+220.206867912376),r/=((((((.0883883476483184*a+1.75566716318264)*a+16.064177579207)*a+86.7807322029461)*a+296.564248779674)*a+637.333633378831)*a+793.826512519948)*a+440.413735824752):r=u/(a+1/(a+2/(a+3/(a+4/(a+.65)))))/2.506628274631}return i>0?1-r:r}function ki(e,t,n){return e<0||e>1?NaN:(t||0)+(null==n?1:n)*gi*function(e){var t,n=-Math.log((1-e)*(1+e));t=n<6.25?1.6536545626831027+(t=.24015818242558962+(t=(t=(t=.00018673420803405714+(t=(t=(t=4.2347877827932404e-7+(t=(t=(t=1.0512122733215323e-9+(t=(t=(t=26335093153082323e-28+(t=(t=(t=6637638134358324e-30+(t=20972767875968562e-33+(t=(t=11157877678025181e-33+(t=128584807152564e-32+(t=(t=-364441206401782e-35)*(n-=3.125)-16850591381820166e-35)*n)*n)*n-1333171662854621e-31)*n)*n)*n-4054566272975207e-29)*n-8151934197605472e-29)*n)*n-12975133253453532e-27)*n-5415412054294628e-26)*n)*n-4.112633980346984e-9)*n-2.9070369957882005e-8)*n)*n-13654692000834679e-22)*n-13882523362786469e-21)*n)*n-.000740702534166267)*n-.006033670871430149)*n)*n:n<16?3.0838856104922208+(t=1.0052589676941592+(t=.005370914553590064+(t=(t=.002491442096107851+(t=(t=.0009532893797373805+(t=(t=24031110387097894e-21+(t=6828485145957318e-20+(t=(t=12475304481671779e-21+(t=29234449089955446e-22+(t=(t=15027403968909828e-22+(t=1.8239629214389228e-8+(t=(t=9.075656193888539e-8+(t=2.2137376921775787e-9)*(n=Math.sqrt(n)-3.25))*n-2.7517406297064545e-7)*n)*n)*n-4013867526981546e-21)*n)*n)*n-47318229009055734e-21)*n)*n)*n-.0003550375203628475)*n)*n-.0016882755560235047)*n)*n-.003751208507569241)*n)*n)*n:Number.isFinite(n)?4.849906401408584+(t=1.0103004648645344+(t=(t=(t=7599527703001776e-20+(t=(t=4526062597223154e-21+(t=(t=2.2900482228026655e-7+(t=(t=2.914795345090108e-8+(t=(t=7.61570120807834e-9+(t=(t=1.5076572693500548e-9+(t=(t=-27109920616438573e-27)*(n=Math.sqrt(n)-5)-2.555641816996525e-10)*n)*n-3.789465440126737e-9)*n)*n-1.496002662714924e-8)*n)*n-6.771199775845234e-8)*n)*n-9.9298272942317e-7)*n)*n-1968177810553167e-20)*n)*n-.00021503011930044477)*n-.00013871931833623122)*n)*n:1/0;return t*e}(2*e-1)}function Ai(e,t){var n,r,i={mean:function(e){return arguments.length?(n=e||0,i):n},stdev:function(e){return arguments.length?(r=null==e?1:e,i):r},sample:function(){return bi(n,r)},pdf:function(e){return xi(e,n,r)},cdf:function(e){return _i(e,n,r)},icdf:function(e){return ki(e,n,r)}};return i.mean(e).stdev(t)}function wi(t,n){var r=Ai(),i=0,a={data:function(e){return arguments.length?(t=e,i=e?e.length:0,a.bandwidth(n)):t},bandwidth:function(e){return arguments.length?(!(n=e)&&t&&(n=di(t)),a):n},sample:function(){return t[~~(e.random()*i)]+n*r.sample()},pdf:function(e){for(var a=0,u=0;u<i;++u)a+=r.pdf((e-t[u])/n);return a/n/i},cdf:function(e){for(var a=0,u=0;u<i;++u)a+=r.cdf((e-t[u])/n);return a/i},icdf:function(){throw Error("KDE icdf not supported.")}};return a.data(t)}function Di(e,t){return e=e||0,t=null==t?1:t,Math.exp(e+bi()*t)}function Ei(e,t,n){if(e<=0)return 0;t=t||0,n=null==n?1:n;var r=(Math.log(e)-t)/n;return Math.exp(-.5*r*r)/(n*vi*e)}function Ci(e,t,n){return _i(Math.log(e),t,n)}function Fi(e,t,n){return Math.exp(ki(e,t,n))}function Mi(e,t){var n,r,i={mean:function(e){return arguments.length?(n=e||0,i):n},stdev:function(e){return arguments.length?(r=null==e?1:e,i):r},sample:function(){return Di(n,r)},pdf:function(e){return Ei(e,n,r)},cdf:function(e){return Ci(e,n,r)},icdf:function(e){return Fi(e,n,r)}};return i.mean(e).stdev(t)}function Si(t,n){var r,i=0;function a(e){var t,n=[],r=0;for(t=0;t<i;++t)r+=n[t]=null==e[t]?1:+e[t];for(t=0;t<i;++t)n[t]/=r;return n}var u={weights:function(e){return arguments.length?(r=a(n=e||[]),u):n},distributions:function(e){return arguments.length?(e?(i=e.length,t=e):(i=0,t=[]),u.weights(n)):t},sample:function(){for(var n=e.random(),a=t[i-1],u=r[0],o=0;o<i-1;u+=r[++o])if(n<u){a=t[o];break}return a.sample()},pdf:function(e){for(var n=0,a=0;a<i;++a)n+=r[a]*t[a].pdf(e);return n},cdf:function(e){for(var n=0,a=0;a<i;++a)n+=r[a]*t[a].cdf(e);return n},icdf:function(){throw Error("Mixture icdf not supported.")}};return u.distributions(t).weights(n)}function Bi(t,n){return null==n&&(n=null==t?1:t,t=0),t+(n-t)*e.random()}function Oi(e,t,n){return null==n&&(n=null==t?1:t,t=0),e>=t&&e<=n?1/(n-t):0}function Ri(e,t,n){return null==n&&(n=null==t?1:t,t=0),e<t?0:e>n?1:(e-t)/(n-t)}function zi(e,t,n){return null==n&&(n=null==t?1:t,t=0),e>=0&&e<=1?t+e*(n-t):NaN}function qi(e,t){var n,r,i={min:function(e){return arguments.length?(n=e||0,i):n},max:function(e){return arguments.length?(r=null==e?1:e,i):r},sample:function(){return Bi(n,r)},pdf:function(e){return Oi(e,n,r)},cdf:function(e){return Ri(e,n,r)},icdf:function(e){return zi(e,n,r)}};return null==t&&(t=null==e?1:e,e=0),i.min(e).max(t)}function Ti(e,t,n,r){var i=r-e*e,a=Math.abs(i)<1e-24?0:(n-e*t)/i;return[t-a*e,a]}function Li(e,t,n,r){e=e.filter((function(e){var r=t(e),i=n(e);return null!=r&&(r=+r)>=r&&null!=i&&(i=+i)>=i})),r&&e.sort((function(e,n){return t(e)-t(n)}));var i,a,u,o,s=e.length,l=new Float64Array(s),c=new Float64Array(s),f=0,d=0,h=0,p=dt(e);try{for(p.s();!(o=p.n()).done;)u=o.value,l[f]=i=+t(u),c[f]=a=+n(u),d+=(i-d)/++f,h+=(a-h)/f}catch(e){p.e(e)}finally{p.f()}for(f=0;f<s;++f)l[f]-=d,c[f]-=h;return[l,c,d,h]}function Ni(e,t,n,r){var i,a,u,o=-1,s=dt(e);try{for(s.s();!(u=s.n()).done;){var l=u.value;i=t(l),a=n(l),null!=i&&(i=+i)>=i&&null!=a&&(a=+a)>=a&&r(i,a,++o)}}catch(e){s.e(e)}finally{s.f()}}function Pi(e,t,n,r,i){var a=0,u=0;return Ni(e,t,n,(function(e,t){var n=t-i(e),o=t-r;a+=n*n,u+=o*o})),1-a/u}function ji(e,t,n){var r=0,i=0,a=0,u=0,o=0;Ni(e,t,n,(function(e,t){++o,r+=(e-r)/o,i+=(t-i)/o,a+=(e*t-a)/o,u+=(e*e-u)/o}));var s=Ti(r,i,a,u),l=function(e){return s[0]+s[1]*e};return{coef:s,predict:l,rSquared:Pi(e,t,n,i,l)}}function Ui(e,t,n){var r=0,i=0,a=0,u=0,o=0;Ni(e,t,n,(function(e,t){++o,e=Math.log(e),r+=(e-r)/o,i+=(t-i)/o,a+=(e*t-a)/o,u+=(e*e-u)/o}));var s=Ti(r,i,a,u),l=function(e){return s[0]+s[1]*Math.log(e)};return{coef:s,predict:l,rSquared:Pi(e,t,n,i,l)}}function Ii(e,t,n){var r=st(Li(e,t,n),4),i=r[0];r[1];var a,u,o,s=r[2],l=r[3],c=0,f=0,d=0,h=0,p=0;Ni(e,t,n,(function(e,t){a=i[p++],u=Math.log(t),c+=(t*u-c)/p,f+=((o=a*t)-f)/p,d+=(o*u-d)/p,h+=(a*o-h)/p}));var m=st(Ti(f/l,c/l,d/l,h/l),2),v=m[0],g=m[1],y=function(e){return Math.exp(v+g*(e-s))};return{coef:[Math.exp(v-g*s),g],predict:y,rSquared:Pi(e,t,n,l,y)}}function $i(e,t,n){var r=0,i=0,a=0,u=0,o=0,s=0;Ni(e,t,n,(function(e,t){var n=Math.log(e),l=Math.log(t);++s,r+=(n-r)/s,i+=(l-i)/s,a+=(n*l-a)/s,u+=(n*n-u)/s,o+=(t-o)/s}));var l=Ti(r,i,a,u),c=function(e){return l[0]*Math.pow(e,l[1])};return l[0]=Math.exp(l[0]),{coef:l,predict:c,rSquared:Pi(e,t,n,o,c)}}function Wi(e,t,n){var r,i,a,u,o=st(Li(e,t,n),4),s=o[0],l=o[1],c=o[2],f=o[3],d=s.length,h=0,p=0,m=0,v=0,g=0;for(r=0;r<d;)i=s[r],a=l[r++],h+=((u=i*i)-h)/r,p+=(u*i-p)/r,m+=(u*u-m)/r,v+=(i*a-v)/r,g+=(u*a-g)/r;var y=m-h*h,b=h*y-p*p,x=(g*h-v*p)/b,_=(v*y-g*p)/b,k=-x*h,A=function(e){return x*(e-=c)*e+_*e+k+f};return{coef:[k-_*c+x*c*c+f,_-2*x*c,x],predict:A,rSquared:Pi(e,t,n,f,A)}}function Gi(e,t,n,r){if(1===r)return ji(e,t,n);if(2===r)return Wi(e,t,n);var i,a,u,o,s,l=st(Li(e,t,n),4),c=l[0],f=l[1],d=l[2],h=l[3],p=c.length,m=[],v=[],g=r+1;for(i=0;i<g;++i){for(u=0,o=0;u<p;++u)o+=Math.pow(c[u],i)*f[u];for(m.push(o),s=new Float64Array(g),a=0;a<g;++a){for(u=0,o=0;u<p;++u)o+=Math.pow(c[u],i+a);s[a]=o}v.push(s)}v.push(m);var y=function(e){var t,n,r,i,a,u=e.length-1,o=[];for(t=0;t<u;++t){for(i=t,n=t+1;n<u;++n)Math.abs(e[t][n])>Math.abs(e[t][i])&&(i=n);for(r=t;r<u+1;++r)a=e[r][t],e[r][t]=e[r][i],e[r][i]=a;for(n=t+1;n<u;++n)for(r=u;r>=t;r--)e[r][n]-=e[r][t]*e[t][n]/e[t][t]}for(n=u-1;n>=0;--n){for(a=0,r=n+1;r<u;++r)a+=e[r][n]*o[r];o[n]=(e[u][n]-a)/e[n][n]}return o}(v),b=function(e){e-=d;var t=h+y[0]+y[1]*e+y[2]*e*e;for(i=3;i<g;++i)t+=y[i]*Math.pow(e,i);return t};return{coef:Hi(g,y,-d,h),predict:b,rSquared:Pi(e,t,n,h,b)}}function Hi(e,t,n,r){var i,a,u,o,s=Array(e);for(i=0;i<e;++i)s[i]=0;for(i=e-1;i>=0;--i)for(u=t[i],o=1,s[i]+=u,a=1;a<=i;++a)o*=(i+1-a)/a,s[i-a]+=u*Math.pow(n,a)*o;return s[0]+=r,s}function Vi(e,t,n,i){for(var a=st(Li(e,t,n,!0),4),u=a[0],o=a[1],s=a[2],l=a[3],c=u.length,f=Math.max(2,~~(i*c)),d=new Float64Array(c),h=new Float64Array(c),p=new Float64Array(c).fill(1),m=-1;++m<=2;){for(var v=[0,f-1],g=0;g<c;++g){for(var y=u[g],b=v[0],x=v[1],_=y-u[b]>u[x]-y?b:x,k=0,A=0,w=0,D=0,E=0,C=1/Math.abs(u[_]-y||1),F=b;F<=x;++F){var M=u[F],S=o[F],B=Yi(Math.abs(y-M)*C)*p[F],O=M*B;k+=B,A+=O,w+=S*B,D+=S*O,E+=M*O}var R=st(Ti(A/k,w/k,D/k,E/k),2),z=R[0],q=R[1];d[g]=z+q*y,h[g]=Math.abs(o[g]-d[g]),Xi(u,g+1,v)}if(2===m)break;var T=r.median(h);if(Math.abs(T)<1e-12)break;for(var L,N,P=0;P<c;++P)L=h[P]/(6*T),p[P]=L>=1?1e-12:(N=1-L*L)*N}return function(e,t,n,r){for(var i,a=e.length,u=[],o=0,s=0,l=[];o<a;++o)i=e[o]+n,l[0]===i?l[1]+=(t[o]-l[1])/++s:(s=0,l[1]+=r,l=[i,t[o]],u.push(l));return l[1]+=r,u}(u,d,s,l)}function Yi(e){return(e=1-e*e*e)*e*e}function Xi(e,t,n){var r=e[t],i=n[0],a=n[1]+1;if(!(a>=e.length))for(;t>i&&e[a]-r<=r-e[i];)n[0]=++i,n[1]=a,++a}var Ji=.5*Math.PI/180;function Qi(e,t,n,r){n=n||25,r=Math.max(n,r||200);var i=function(t){return[t,e(t)]},a=t[0],u=t[1],o=u-a,s=o/r,l=[i(a)],c=[];if(n===r){for(var f=1;f<r;++f)l.push(i(a+f/n*o));return l.push(i(u)),l}c.push(i(u));for(var d=n;--d>0;)c.push(i(a+d/n*o));for(var h=l[0],p=c[c.length-1],m=1/o,v=function(e,t){for(var n=e,r=e,i=t.length,a=0;a<i;++a){var u=t[a][1];u<n&&(n=u),u>r&&(r=u)}return 1/(r-n)}(h[1],c);p;){var g=i((h[0]+p[0])/2);g[0]-h[0]>=s&&Ki(h,g,p,m,v)>Ji?c.push(g):(h=p,l.push(p),c.pop()),p=c[c.length-1]}return l}function Ki(e,t,n,r,i){var a=Math.atan2(i*(n[1]-e[1]),r*(n[0]-e[0])),u=Math.atan2(i*(t[1]-e[1]),r*(t[0]-e[0]));return Math.abs(a-u)}function Zi(e){return e&&e.length?1===e.length?e[0]:(t=e,function(e){for(var n=t.length,r=1,i=String(t[0](e));r<n;++r)i+="|"+t[r](e);return i}):function(){return""};var t}function ea(e,t,n){return n||e+(t?"_"+t:"")}var ta=function(){},na={init:ta,add:ta,rem:ta,idx:0},ra={values:{init:function(e){return e.cell.store=!0},value:function(e){return e.cell.data.values()},idx:-1},count:{value:function(e){return e.cell.num}},__count__:{value:function(e){return e.missing+e.valid}},missing:{value:function(e){return e.missing}},valid:{value:function(e){return e.valid}},sum:{init:function(e){return e.sum=0},value:function(e){return e.sum},add:function(e,t){return e.sum+=+t},rem:function(e,t){return e.sum-=t}},product:{init:function(e){return e.product=1},value:function(e){return e.valid?e.product:void 0},add:function(e,t){return e.product*=t},rem:function(e,t){return e.product/=t}},mean:{init:function(e){return e.mean=0},value:function(e){return e.valid?e.mean:void 0},add:function(e,t){return e.mean_d=t-e.mean,e.mean+=e.mean_d/e.valid},rem:function(e,t){return e.mean_d=t-e.mean,e.mean-=e.valid?e.mean_d/e.valid:e.mean}},average:{value:function(e){return e.valid?e.mean:void 0},req:["mean"],idx:1},variance:{init:function(e){return e.dev=0},value:function(e){return e.valid>1?e.dev/(e.valid-1):void 0},add:function(e,t){return e.dev+=e.mean_d*(t-e.mean)},rem:function(e,t){return e.dev-=e.mean_d*(t-e.mean)},req:["mean"],idx:1},variancep:{value:function(e){return e.valid>1?e.dev/e.valid:void 0},req:["variance"],idx:2},stdev:{value:function(e){return e.valid>1?Math.sqrt(e.dev/(e.valid-1)):void 0},req:["variance"],idx:2},stdevp:{value:function(e){return e.valid>1?Math.sqrt(e.dev/e.valid):void 0},req:["variance"],idx:2},stderr:{value:function(e){return e.valid>1?Math.sqrt(e.dev/(e.valid*(e.valid-1))):void 0},req:["variance"],idx:2},distinct:{value:function(e){return e.cell.data.distinct(e.get)},req:["values"],idx:3},ci0:{value:function(e){return e.cell.data.ci0(e.get)},req:["values"],idx:3},ci1:{value:function(e){return e.cell.data.ci1(e.get)},req:["values"],idx:3},median:{value:function(e){return e.cell.data.q2(e.get)},req:["values"],idx:3},q1:{value:function(e){return e.cell.data.q1(e.get)},req:["values"],idx:3},q3:{value:function(e){return e.cell.data.q3(e.get)},req:["values"],idx:3},min:{init:function(e){return e.min=void 0},value:function(e){return e.min=Number.isNaN(e.min)?e.cell.data.min(e.get):e.min},add:function(e,t){(t<e.min||void 0===e.min)&&(e.min=t)},rem:function(e,t){t<=e.min&&(e.min=NaN)},req:["values"],idx:4},max:{init:function(e){return e.max=void 0},value:function(e){return e.max=Number.isNaN(e.max)?e.cell.data.max(e.get):e.max},add:function(e,t){(t>e.max||void 0===e.max)&&(e.max=t)},rem:function(e,t){t>=e.max&&(e.max=NaN)},req:["values"],idx:4},argmin:{init:function(e){return e.argmin=void 0},value:function(e){return e.argmin||e.cell.data.argmin(e.get)},add:function(e,t,n){t<e.min&&(e.argmin=n)},rem:function(e,t){t<=e.min&&(e.argmin=void 0)},req:["min","values"],idx:3},argmax:{init:function(e){return e.argmax=void 0},value:function(e){return e.argmax||e.cell.data.argmax(e.get)},add:function(e,t,n){t>e.max&&(e.argmax=n)},rem:function(e,t){t>=e.max&&(e.argmax=void 0)},req:["max","values"],idx:3}},ia=Object.keys(ra);function aa(e,t){return ra[e](t)}function ua(e,t){return e.idx-t.idx}function oa(){var e=this;this.valid=0,this.missing=0,this._ops.forEach((function(t){return t.init(e)}))}function sa(e,t){var n=this;null!=e&&""!==e?e==e&&(++this.valid,this._ops.forEach((function(r){return r.add(n,e,t)}))):++this.missing}function la(e,t){var n=this;null!=e&&""!==e?e==e&&(--this.valid,this._ops.forEach((function(r){return r.rem(n,e,t)}))):--this.missing}function ca(e){var t=this;return this._out.forEach((function(n){return e[n.out]=n.value(t)})),e}function fa(e,t){var n=t||S,r=function(e){var t={};return e.forEach((function(e){return t[e.name]=e})),e.forEach((function e(n){n.req&&n.req.forEach((function(n){t[n]||e(t[n]=ra[n]())}))})),Object.values(t).sort(ua)}(e),i=e.slice().sort(ua);function a(e){this._ops=r,this._out=i,this.cell=e,this.init()}return a.prototype.init=oa,a.prototype.add=sa,a.prototype.rem=la,a.prototype.set=ca,a.prototype.get=n,a.fields=e.map((function(e){return e.out})),a}function da(e){this._key=e?F(e):xr,this.reset()}ia.forEach((function(e){ra[e]=function(e,t){return function(n){return ye({name:e,out:n||e},na,t)}}(e,ra[e])}));var ha=da.prototype;function pa(e){ii.call(this,null,e),this._adds=[],this._mods=[],this._alen=0,this._mlen=0,this._drop=!0,this._cross=!1,this._dims=[],this._dnames=[],this._measures=[],this._countOnly=!1,this._counts=null,this._prev=null,this._inputs=null,this._outputs=null}ha.reset=function(){this._add=[],this._rem=[],this._ext=null,this._get=null,this._q=null},ha.add=function(e){this._add.push(e)},ha.rem=function(e){this._rem.push(e)},ha.values=function(){if(this._get=null,0===this._rem.length)return this._add;var e,t,n,r=this._add,i=this._rem,a=this._key,u=r.length,o=i.length,s=Array(u-o),l={};for(e=0;e<o;++e)l[a(i[e])]=1;for(e=0,t=0;e<u;++e)l[a(n=r[e])]?l[a(n)]=0:s[t++]=n;return this._rem=[],this._add=s},ha.distinct=function(e){for(var t,n=this.values(),r={},i=n.length,a=0;--i>=0;)ke(r,t=e(n[i])+"")||(r[t]=1,++a);return a},ha.extent=function(e){if(this._get!==e||!this._ext){var t=this.values(),n=xe(t,e);this._ext=[t[n[0]],t[n[1]]],this._get=e}return this._ext},ha.argmin=function(e){return this.extent(e)[0]||{}},ha.argmax=function(e){return this.extent(e)[1]||{}},ha.min=function(e){var t=this.extent(e)[0];return null!=t?e(t):void 0},ha.max=function(e){var t=this.extent(e)[1];return null!=t?e(t):void 0},ha.quartile=function(e){return this._get===e&&this._q||(this._q=fi(this.values(),e),this._get=e),this._q},ha.q1=function(e){return this.quartile(e)[0]},ha.q2=function(e){return this.quartile(e)[1]},ha.q3=function(e){return this.quartile(e)[2]},ha.ci=function(e){return this._get===e&&this._ci||(this._ci=pi(this.values(),1e3,.05,e),this._get=e),this._ci},ha.ci0=function(e){return this.ci(e)[0]},ha.ci1=function(e){return this.ci(e)[1]},pa.Definition={type:"Aggregate",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:ia},{name:"fields",type:"field",null:!0,array:!0},{name:"as",type:"string",null:!0,array:!0},{name:"drop",type:"boolean",default:!0},{name:"cross",type:"boolean",default:!1},{name:"key",type:"field"}]},Ee(pa,ii,{transform:function(e,t){var n=this,r=this,i=t.fork(t.NO_SOURCE|t.NO_FIELDS),a=e.modified();return r.stamp=i.stamp,r.value&&(a||t.modified(r._inputs,!0))?(r._prev=r.value,r.value=a?r.init(e):{},t.visit(t.SOURCE,(function(e){return r.add(e)}))):(r.value=r.value||r.init(e),t.visit(t.REM,(function(e){return r.rem(e)})),t.visit(t.ADD,(function(e){return r.add(e)}))),i.modifies(r._outputs),r._drop=!1!==e.drop,e.cross&&r._dims.length>1&&(r._drop=!1,r.cross()),t.clean()&&r._drop&&i.clean(!0).runAfter((function(){return n.clean()})),r.changes(i)},cross:function(){var e=this,t=e.value,n=e._dnames,r=n.map((function(){return{}})),i=n.length;function a(e){var t,a,u,o;for(t in e)for(u=e[t].tuple,a=0;a<i;++a)r[a][o=u[n[a]]]=o}a(e._prev),a(t),function a(u,o,s){var l=n[s],c=r[s++];for(var f in c){var d=u?u+"|"+f:f;o[l]=c[f],s<i?a(d,o,s):t[d]||e.cell(d,o)}}("",{},0)},init:function(e){var t=this._inputs=[],n=this._outputs=[],r={};function i(e){for(var n,i=se(k(e)),a=i.length,u=0;u<a;++u)r[n=i[u]]||(r[n]=1,t.push(n))}this._dims=se(e.groupby),this._dnames=this._dims.map((function(e){var t=_(e);return i(e),n.push(t),t})),this.cellkey=e.key?e.key:Zi(this._dims),this._countOnly=!0,this._counts=[],this._measures=[];var a,u,o,s,l,c,f=e.fields||[null],d=e.ops||["count"],h=e.as||[],p=f.length,m={};for(p!==d.length&&E("Unmatched number of fields and aggregate ops."),c=0;c<p;++c)a=f[c],u=d[c],null==a&&"count"!==u&&E("Null aggregate field specified."),l=ea(u,s=_(a),h[c]),n.push(l),"count"!==u?((o=m[s])||(i(a),(o=m[s]=[]).field=a,this._measures.push(o)),"count"!==u&&(this._countOnly=!1),o.push(aa(u,l))):this._counts.push(l);return this._measures=this._measures.map((function(e){return fa(e,e.field)})),{}},cellkey:Zi(),cell:function(e,t){var n=this.value[e];return n?0===n.num&&this._drop&&n.stamp<this.stamp?(n.stamp=this.stamp,this._adds[this._alen++]=n):n.stamp<this.stamp&&(n.stamp=this.stamp,this._mods[this._mlen++]=n):(n=this.value[e]=this.newcell(e,t),this._adds[this._alen++]=n),n},newcell:function(e,t){var n={key:e,num:0,agg:null,tuple:this.newtuple(t,this._prev&&this._prev[e]),stamp:this.stamp,store:!1};if(!this._countOnly){var r=this._measures,i=r.length;n.agg=Array(i);for(var a=0;a<i;++a)n.agg[a]=new r[a](n)}return n.store&&(n.data=new da),n},newtuple:function(e,t){for(var n=this._dnames,r=this._dims,i=r.length,a={},u=0;u<i;++u)a[n[u]]=r[u](e);return t?Dr(t.tuple,a):kr(a)},clean:function(){var e=this.value;for(var t in e)0===e[t].num&&delete e[t]},add:function(e){var t=this.cellkey(e),n=this.cell(t,e);if(n.num+=1,!this._countOnly){n.store&&n.data.add(e);for(var r=n.agg,i=0,a=r.length;i<a;++i)r[i].add(r[i].get(e),e)}},rem:function(e){var t=this.cellkey(e),n=this.cell(t,e);if(n.num-=1,!this._countOnly){n.store&&n.data.rem(e);for(var r=n.agg,i=0,a=r.length;i<a;++i)r[i].rem(r[i].get(e),e)}},celltuple:function(e){var t=e.tuple,n=this._counts;e.store&&e.data.values();for(var r=0,i=n.length;r<i;++r)t[n[r]]=e.num;if(!this._countOnly)for(var a=e.agg,u=0,o=a.length;u<o;++u)a[u].set(t);return t},changes:function(e){var t,n,r,i,a=this._adds,u=this._mods,o=this._prev,s=this._drop,l=e.add,c=e.rem,f=e.mod;if(o)for(n in o)t=o[n],s&&!t.num||c.push(t.tuple);for(r=0,i=this._alen;r<i;++r)l.push(this.celltuple(a[r])),a[r]=null;for(r=0,i=this._mlen;r<i;++r)(0===(t=u[r]).num&&s?c:f).push(this.celltuple(t)),u[r]=null;return this._alen=this._mlen=0,this._prev=null,e}});function ma(e){ii.call(this,null,e)}function va(e,t,n){var r=e,i=t||[],a=n||[],u={},o=0;return{add:function(e){return a.push(e)},remove:function(e){return u[r(e)]=++o},size:function(){return i.length},data:function(e,t){return o&&(i=i.filter((function(e){return!u[r(e)]})),u={},o=0),t&&e&&i.sort(e),a.length&&(i=e?Le(e,i,a.sort(e)):i.concat(a),a=[]),i}}}function ga(e){ii.call(this,[],e)}function ya(e){Rr.call(this,null,ba,e)}function ba(e){return this.value&&!e.modified()?this.value:fe(e.fields,e.orders)}function xa(e){ii.call(this,null,e)}function _a(e){ii.call(this,null,e)}ma.Definition={type:"Bin",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"interval",type:"boolean",default:!0},{name:"anchor",type:"number"},{name:"maxbins",type:"number",default:20},{name:"base",type:"number",default:10},{name:"divide",type:"number",array:!0,default:[5,2]},{name:"extent",type:"number",array:!0,length:2,required:!0},{name:"span",type:"number"},{name:"step",type:"number"},{name:"steps",type:"number",array:!0},{name:"minstep",type:"number",default:0},{name:"nice",type:"boolean",default:!0},{name:"name",type:"string"},{name:"as",type:"string",array:!0,length:2,default:["bin0","bin1"]}]},Ee(ma,ii,{transform:function(e,t){var n,r=!1!==e.interval,i=this._bins(e),a=i.start,u=i.step,o=e.as||["bin0","bin1"],s=o[0],l=o[1];return n=e.modified()?(t=t.reflow(!0)).SOURCE:t.modified(k(e.field))?t.ADD_MOD:t.ADD,t.visit(n,r?function(e){var t=i(e);e[s]=t,e[l]=null==t?null:a+u*(1+(t-a)/u)}:function(e){return e[s]=i(e)}),t.modifies(r?o:s)},_bins:function(e){if(this.value&&!e.modified())return this.value;var t,n,r=e.field,i=hi(e),a=i.step,u=i.start,o=u+Math.ceil((i.stop-u)/a)*a;null!=(t=e.anchor)&&(n=t-(u+a*Math.floor((t-u)/a)),u+=n,o+=n);var s=function(e){var t=W(r(e));return null==t?null:t<u?-1/0:t>o?1/0:(t=Math.max(u,Math.min(t,o-a)),u+a*Math.floor(1e-14+(t-u)/a))};return s.start=u,s.stop=i.stop,s.step=a,this.value=x(s,k(r),e.name||"bin_"+_(r))}}),ga.Definition={type:"Collect",metadata:{source:!0},params:[{name:"sort",type:"compare"}]},Ee(ga,ii,{transform:function(e,t){var n=t.fork(t.ALL),r=va(xr,this.value,n.materialize(n.ADD).add),i=e.sort,a=t.changed()||i&&(e.modified("sort")||t.modified(i.fields));return n.visit(n.REM,r.remove),this.modified(a),this.value=n.source=r.data(Er(i),a),t.source&&t.source.root&&(this.value.root=t.source.root),n}}),Ee(ya,Rr),xa.Definition={type:"CountPattern",metadata:{generates:!0,changes:!0},params:[{name:"field",type:"field",required:!0},{name:"case",type:"enum",values:["upper","lower","mixed"],default:"mixed"},{name:"pattern",type:"string",default:'[\\w"]+'},{name:"stopwords",type:"string",default:""},{name:"as",type:"string",array:!0,length:2,default:["text","count"]}]},Ee(xa,ii,{transform:function(e,t){var n=function(t){return function(n){for(var r,i=function(e,t,n){switch(t){case"upper":e=e.toUpperCase();break;case"lower":e=e.toLowerCase()}return e.match(n)}(o(n),e.case,a)||[],s=0,l=i.length;s<l;++s)u.test(r=i[s])||t(r)}},r=this._parameterCheck(e,t),i=this._counts,a=this._match,u=this._stop,o=e.field,s=e.as||["text","count"],l=n((function(e){return i[e]=1+(i[e]||0)})),c=n((function(e){return i[e]-=1}));return r?t.visit(t.SOURCE,l):(t.visit(t.ADD,l),t.visit(t.REM,c)),this._finish(t,s)},_parameterCheck:function(e,t){var n=!1;return!e.modified("stopwords")&&this._stop||(this._stop=new RegExp("^"+(e.stopwords||"")+"$","i"),n=!0),!e.modified("pattern")&&this._match||(this._match=new RegExp(e.pattern||"[\\w']+","g"),n=!0),(e.modified("field")||t.modified(e.field.fields))&&(n=!0),n&&(this._counts={}),n},_finish:function(e,t){var n,r,i,a=this._counts,u=this._tuples||(this._tuples={}),o=t[0],s=t[1],l=e.fork(e.NO_SOURCE|e.NO_FIELDS);for(n in a)r=u[n],i=a[n]||0,!r&&i?(u[n]=r=kr({}),r[o]=n,r[s]=i,l.add.push(r)):0===i?(r&&l.rem.push(r),a[n]=null,u[n]=null):r[s]!==i&&(r[s]=i,l.mod.push(r));return l.modifies(t)}}),_a.Definition={type:"Cross",metadata:{generates:!0},params:[{name:"filter",type:"expr"},{name:"as",type:"string",array:!0,length:2,default:["a","b"]}]},Ee(_a,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE),r=e.as||["a","b"],i=r[0],a=r[1],u=!this.value||t.changed(t.ADD_REM)||e.modified("as")||e.modified("filter"),o=this.value;return u?(o&&(n.rem=o),o=t.materialize(t.SOURCE).source,n.add=this.value=function(e,t,n,r){for(var i,a,u=[],o={},s=e.length,l=0;l<s;++l)for(o[t]=a=e[l],i=0;i<s;++i)o[n]=e[i],r(o)&&(u.push(kr(o)),(o={})[t]=a);return u}(o,i,a,e.filter||R)):n.mod=o,n.source=this.value,n.modifies(r)}});var ka={kde:wi,mixture:Si,normal:Ai,lognormal:Mi,uniform:qi},Aa="function";function wa(e,t){var n=e.function;ke(ka,n)||E("Unknown distribution function: "+n);var r=ka[n]();for(var i in e)"field"===i?r.data((e.from||t()).map(e[i])):"distributions"===i?r[i](e[i].map((function(e){return wa(e,t)}))):it(r[i])===Aa&&r[i](e[i]);return r}function Da(e){ii.call(this,null,e)}var Ea=[{key:{function:"normal"},params:[{name:"mean",type:"number",default:0},{name:"stdev",type:"number",default:1}]},{key:{function:"lognormal"},params:[{name:"mean",type:"number",default:0},{name:"stdev",type:"number",default:1}]},{key:{function:"uniform"},params:[{name:"min",type:"number",default:0},{name:"max",type:"number",default:1}]},{key:{function:"kde"},params:[{name:"field",type:"field",required:!0},{name:"from",type:"data"},{name:"bandwidth",type:"number",default:0}]}],Ca={key:{function:"mixture"},params:[{name:"distributions",type:"param",array:!0,params:Ea},{name:"weights",type:"number",array:!0}]};function Fa(e,t){return e?e.map((function(e,n){return t[n]||_(e)})):null}function Ma(e,t,n){var r,i,a,u,o,s,l=[],c=function(e){return e(u)};if(null==t)l.push(e.map(n));else for(r={},i=0,a=e.length;i<a;++i)u=e[i],(s=r[o=t.map(c)])||(r[o]=s=[],s.dims=o,l.push(s)),s.push(n(u));return l}Da.Definition={type:"Density",metadata:{generates:!0},params:[{name:"extent",type:"number",array:!0,length:2},{name:"steps",type:"number"},{name:"minsteps",type:"number",default:25},{name:"maxsteps",type:"number",default:200},{name:"method",type:"string",default:"pdf",values:["pdf","cdf"]},{name:"distribution",type:"param",params:Ea.concat(Ca)},{name:"as",type:"string",array:!0,default:["value","density"]}]},Ee(Da,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){var r=wa(e.distribution,function(e){return function(){return e.materialize(e.SOURCE).source}}(t)),i=e.steps||e.minsteps||25,a=e.steps||e.maxsteps||200,u=e.method||"pdf";"pdf"!==u&&"cdf"!==u&&E("Invalid density method: "+u),e.extent||r.data||E("Missing density extent parameter."),u=r[u];var o=e.as||["value","density"],s=Qi(u,e.extent||be(r.data()),i,a).map((function(e){var t={};return t[o[0]]=e[0],t[o[1]]=e[1],kr(t)}));this.value&&(n.rem=this.value),this.value=n.add=n.source=s}return n}});function Sa(e){ii.call(this,null,e)}Sa.Definition={type:"DotBin",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"groupby",type:"field",array:!0},{name:"step",type:"number"},{name:"smooth",type:"boolean",default:!1},{name:"as",type:"string",default:"bin"}]};function Ba(e){Rr.call(this,null,Oa,e),this.modified(!0)}function Oa(e){var t=e.expr;return this.value&&!e.modified("expr")?this.value:x((function(n){return t(n,e)}),k(t),_(t))}function Ra(e){ii.call(this,[void 0,void 0],e)}function za(e,t){Rr.call(this,e),this.parent=t,this.count=0}function qa(e){ii.call(this,{},e),this._keys=we();var t=this._targets=[];t.active=0,t.forEach=function(e){for(var n=0,r=t.active;n<r;++n)e(t[n],n,t)}}function Ta(e){Rr.call(this,null,La,e)}function La(e){return this.value&&!e.modified()?this.value:L(e.name)?se(e.name).map((function(e){return F(e)})):F(e.name,e.as)}function Na(e){ii.call(this,we(),e)}function Pa(e){ii.call(this,[],e)}function ja(e){ii.call(this,[],e)}function Ua(e){ii.call(this,null,e)}function Ia(e){ii.call(this,[],e)}Ee(Sa,ii,{transform:function(e,t){if(this.value&&!e.modified()&&!t.changed())return t;for(var n,r=t.materialize(t.SOURCE).source,i=Ma(t.source,e.groupby,S),a=e.smooth||!1,u=e.field,o=e.step||function(e,t){return je(be(e,t))/30}(r,u),s=Er((function(e,t){return u(e)-u(t)})),l=e.as||"bin",c=i.length,f=1/0,d=-1/0,h=0;h<c;++h){var p=i[h].sort(s);n=-1;var m,v=dt(mi(p,o,a,u));try{for(v.s();!(m=v.n()).done;){var g=m.value;g<f&&(f=g),g>d&&(d=g),p[++n][l]=g}}catch(e){v.e(e)}finally{v.f()}}return this.value={start:f,stop:d,step:o},t.reflow(!0).modifies(l)}}),Ee(Ba,Rr),Ra.Definition={type:"Extent",metadata:{},params:[{name:"field",type:"field",required:!0}]},Ee(Ra,ii,{transform:function(e,t){var n=this.value,r=e.field,i=t.changed()||t.modified(r.fields)||e.modified("field"),a=n[0],u=n[1];if((i||null==a)&&(a=1/0,u=-1/0),t.visit(i?t.SOURCE:t.ADD,(function(e){var t=W(r(e));null!=t&&(t<a&&(a=t),t>u&&(u=t))})),!Number.isFinite(a)||!Number.isFinite(u)){var o=_(r);o&&(o=' for field "'.concat(o,'"')),t.dataflow.warn("Infinite extent".concat(o,": [").concat(a,", ").concat(u,"]")),a=u=void 0}this.value=[a,u]}}),Ee(za,Rr,{connect:function(e){return this.detachSubflow=e.detachSubflow,this.targets().add(e),e.source=this},add:function(e){this.count+=1,this.value.add.push(e)},rem:function(e){this.count-=1,this.value.rem.push(e)},mod:function(e){this.value.mod.push(e)},init:function(e){this.value.init(e,e.NO_SOURCE)},evaluate:function(){return this.value}}),Ee(qa,ii,{activate:function(e){this._targets[this._targets.active++]=e},subflow:function(e,t,n,r){var i,a,u=this.value,o=ke(u,e)&&u[e];return o?o.value.stamp<n.stamp&&(o.init(n),this.activate(o)):(a=r||(a=this._group[e])&&a.tuple,i=n.dataflow,o=new za(n.fork(n.NO_SOURCE),this),i.add(o).connect(t(i,e,a)),u[e]=o,this.activate(o)),o},clean:function(){var e=this.value,t=0;for(var n in e)if(0===e[n].count){var r=e[n].detachSubflow;r&&r(),delete e[n],++t}if(t){var i=this._targets.filter((function(e){return e&&e.count>0}));this.initTargets(i)}},initTargets:function(e){for(var t=this._targets,n=t.length,r=e?e.length:0,i=0;i<r;++i)t[i]=e[i];for(;i<n&&null!=t[i];++i)t[i]=null;t.active=r},transform:function(e,t){var n=this,r=t.dataflow,i=e.key,a=e.subflow,u=this._keys,o=e.modified("key"),s=function(e){return n.subflow(e,a,t)};return this._group=e.group||{},this.initTargets(),t.visit(t.REM,(function(e){var t=xr(e),n=u.get(t);void 0!==n&&(u.delete(t),s(n).rem(e))})),t.visit(t.ADD,(function(e){var t=i(e);u.set(xr(e),t),s(t).add(e)})),o||t.modified(i.fields)?t.visit(t.MOD,(function(e){var t=xr(e),n=u.get(t),r=i(e);n===r?s(r).mod(e):(u.set(t,r),s(n).rem(e),s(r).add(e))})):t.changed(t.MOD)&&t.visit(t.MOD,(function(e){s(u.get(xr(e))).mod(e)})),o&&t.visit(t.REFLOW,(function(e){var t=xr(e),n=u.get(t),r=i(e);n!==r&&(u.set(t,r),s(n).rem(e),s(r).add(e))})),t.clean()?r.runAfter((function(){n.clean(),u.clean()})):u.empty>r.cleanThreshold&&r.runAfter(u.clean),t}}),Ee(Ta,Rr),Na.Definition={type:"Filter",metadata:{changes:!0},params:[{name:"expr",type:"expr",required:!0}]},Ee(Na,ii,{transform:function(e,t){var n=t.dataflow,r=this.value,i=t.fork(),a=i.add,u=i.rem,o=i.mod,s=e.expr,l=!0;function c(t){var n=xr(t),i=s(t,e),c=r.get(n);i&&c?(r.delete(n),a.push(t)):i||c?l&&i&&!c&&o.push(t):(r.set(n,1),u.push(t))}return t.visit(t.REM,(function(e){var t=xr(e);r.has(t)?r.delete(t):u.push(e)})),t.visit(t.ADD,(function(t){s(t,e)?a.push(t):r.set(xr(t),1)})),t.visit(t.MOD,c),e.modified()&&(l=!1,t.visit(t.REFLOW,c)),r.empty>n.cleanThreshold&&n.runAfter(r.clean),i}}),Pa.Definition={type:"Flatten",metadata:{generates:!0},params:[{name:"fields",type:"field",array:!0,required:!0},{name:"index",type:"string"},{name:"as",type:"string",array:!0}]},Ee(Pa,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE),r=e.fields,i=Fa(r,e.as||[]),a=e.index||null,u=i.length;return n.rem=this.value,t.visit(t.SOURCE,(function(e){for(var t,o,s,l=r.map((function(t){return t(e)})),c=l.reduce((function(e,t){return Math.max(e,t.length)}),0),f=0;f<c;++f){for(o=Ar(e),t=0;t<u;++t)o[i[t]]=null==(s=l[t][f])?null:s;a&&(o[a]=f),n.add.push(o)}})),this.value=n.source=n.add,a&&n.modifies(a),n.modifies(i)}}),ja.Definition={type:"Fold",metadata:{generates:!0},params:[{name:"fields",type:"field",array:!0,required:!0},{name:"as",type:"string",array:!0,length:2,default:["key","value"]}]},Ee(ja,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE),r=e.fields,i=r.map(_),a=e.as||["key","value"],u=a[0],o=a[1],s=r.length;return n.rem=this.value,t.visit(t.SOURCE,(function(e){for(var t,a=0;a<s;++a)(t=Ar(e))[u]=i[a],t[o]=r[a](e),n.add.push(t)})),this.value=n.source=n.add,n.modifies(a)}}),Ua.Definition={type:"Formula",metadata:{modifies:!0},params:[{name:"expr",type:"expr",required:!0},{name:"as",type:"string",required:!0},{name:"initonly",type:"boolean"}]},Ee(Ua,ii,{transform:function(e,t){var n=e.expr,r=e.as,i=e.modified(),a=e.initonly?t.ADD:i?t.SOURCE:t.modified(n.fields)||t.modified(r)?t.ADD_MOD:t.ADD;return i&&(t=t.materialize().reflow(!0)),e.initonly||t.modifies(r),t.visit(a,(function(t){return t[r]=n(t,e)}))}}),Ee(Ia,ii,{transform:function(e,t){var n,r,i,a=t.fork(t.ALL),u=e.generator,o=this.value,s=e.size-o.length;if(s>0){for(n=[];--s>=0;)n.push(i=kr(u(e))),o.push(i);a.add=a.add.length?a.materialize(a.ADD).add.concat(n):n}else r=o.slice(0,-s),a.rem=a.rem.length?a.materialize(a.REM).rem.concat(r):r,o=o.slice(-s);return a.source=this.value=o,a}});var $a={value:"value",median:r.median,mean:r.mean,min:r.min,max:r.max},Wa=[];function Ga(e){ii.call(this,[],e)}function Ha(e){pa.call(this,e)}function Va(e){ii.call(this,null,e)}function Ya(e){Rr.call(this,null,Xa,e)}function Xa(e){return this.value&&!e.modified()?this.value:ze(e.fields,e.flat)}function Ja(e){ii.call(this,[],e),this._pending=null}function Qa(e,t,n){n.forEach(kr);var r=t.fork(t.NO_FIELDS&t.NO_SOURCE);return r.rem=e.value,e.value=r.source=r.add=n,e._pending=null,r.rem.length&&r.clean(!0),r}function Ka(e){ii.call(this,{},e)}function Za(e){Rr.call(this,null,eu,e)}function eu(e){if(this.value&&!e.modified())return this.value;var t,n,r=e.extents,i=r.length,a=1/0,u=-1/0;for(t=0;t<i;++t)(n=r[t])[0]<a&&(a=n[0]),n[1]>u&&(u=n[1]);return[a,u]}function tu(e){Rr.call(this,null,nu,e)}function nu(e){return this.value&&!e.modified()?this.value:e.values.reduce((function(e,t){return e.concat(t)}),[])}function ru(e){ii.call(this,null,e)}function iu(e){pa.call(this,e)}function au(e){qa.call(this,e)}function uu(e){ii.call(this,null,e)}function ou(e){ii.call(this,null,e)}function su(e){ii.call(this,null,e)}Ga.Definition={type:"Impute",metadata:{changes:!0},params:[{name:"field",type:"field",required:!0},{name:"key",type:"field",required:!0},{name:"keyvals",array:!0},{name:"groupby",type:"field",array:!0},{name:"method",type:"enum",default:"value",values:["value","mean","median","max","min"]},{name:"value",default:0}]},Ee(Ga,ii,{transform:function(e,t){var n,r,i,a,u,o,s,l,c,f,d=t.fork(t.ALL),h=function(e){var t,n=e.method||$a.value;if(null!=$a[n])return n===$a.value?(t=void 0!==e.value?e.value:0,function(){return t}):$a[n];E("Unrecognized imputation method: "+n)}(e),p=function(e){var t=e.field;return function(e){return e?t(e):NaN}}(e),m=_(e.field),v=_(e.key),g=(e.groupby||[]).map(_),y=function(e,t,n,r){var i,a,u,o,s,l,c,f,d=function(e){return e(f)},h=[],p=r?r.slice():[],m={},v={};for(p.forEach((function(e,t){return m[e]=t+1})),o=0,c=e.length;o<c;++o)l=n(f=e[o]),s=m[l]||(m[l]=p.push(l)),(u=v[a=(i=t?t.map(d):Wa)+""])||(u=v[a]=[],h.push(u),u.values=i),u[s-1]=f;return h.domain=p,h}(t.source,e.groupby,e.key,e.keyvals),b=[],x=this.value,k=y.domain.length;for(u=0,l=y.length;u<l;++u)for(i=(n=y[u]).values,r=NaN,s=0;s<k;++s)if(null==n[s]){for(a=y.domain[s],f={_impute:!0},o=0,c=i.length;o<c;++o)f[g[o]]=i[o];f[v]=a,f[m]=Number.isNaN(r)?r=h(n,p):r,b.push(kr(f))}return b.length&&(d.add=d.materialize(d.ADD).add.concat(b)),x.length&&(d.rem=d.materialize(d.REM).rem.concat(x)),this.value=b,d}}),Ha.Definition={type:"JoinAggregate",metadata:{modifies:!0},params:[{name:"groupby",type:"field",array:!0},{name:"fields",type:"field",null:!0,array:!0},{name:"ops",type:"enum",array:!0,values:ia},{name:"as",type:"string",null:!0,array:!0},{name:"key",type:"field"}]},Ee(Ha,pa,{transform:function(e,t){var n,r=this,i=e.modified();return r.value&&(i||t.modified(r._inputs,!0))?(n=r.value=i?r.init(e):{},t.visit(t.SOURCE,(function(e){return r.add(e)}))):(n=r.value=r.value||this.init(e),t.visit(t.REM,(function(e){return r.rem(e)})),t.visit(t.ADD,(function(e){return r.add(e)}))),r.changes(),t.visit(t.SOURCE,(function(e){ye(e,n[r.cellkey(e)].tuple)})),t.reflow(i).modifies(this._outputs)},changes:function(){var e,t,n=this._adds,r=this._mods;for(e=0,t=this._alen;e<t;++e)this.celltuple(n[e]),n[e]=null;for(e=0,t=this._mlen;e<t;++e)this.celltuple(r[e]),r[e]=null;this._alen=this._mlen=0}}),Va.Definition={type:"KDE",metadata:{generates:!0},params:[{name:"groupby",type:"field",array:!0},{name:"field",type:"field",required:!0},{name:"cumulative",type:"boolean",default:!1},{name:"counts",type:"boolean",default:!1},{name:"bandwidth",type:"number",default:0},{name:"extent",type:"number",array:!0,length:2},{name:"resolve",type:"enum",values:["shared","independent"],default:"independent"},{name:"steps",type:"number"},{name:"minsteps",type:"number",default:25},{name:"maxsteps",type:"number",default:200},{name:"as",type:"string",array:!0,default:["value","density"]}]},Ee(Va,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){var r=t.materialize(t.SOURCE).source,i=Ma(r,e.groupby,e.field),a=(e.groupby||[]).map(_),u=e.bandwidth,o=e.cumulative?"cdf":"pdf",s=e.as||["value","density"],l=[],c=e.extent,f=e.steps||e.minsteps||25,d=e.steps||e.maxsteps||200;"pdf"!==o&&"cdf"!==o&&E("Invalid density method: "+o),"shared"===e.resolve&&(c||(c=be(r,e.field)),f=d=e.steps||d),i.forEach((function(t){var n=wi(t,u)[o],r=e.counts?t.length:1;Qi(n,c||be(t),f,d).forEach((function(e){for(var n={},i=0;i<a.length;++i)n[a[i]]=t.dims[i];n[s[0]]=e[0],n[s[1]]=e[1]*r,l.push(kr(n))}))})),this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}}),Ee(Ya,Rr),Ee(Ja,ii,{transform:function(e,t){var n=this,r=t.dataflow;if(this._pending)return Qa(this,t,this._pending);if(function(e){return e.modified("async")&&!(e.modified("values")||e.modified("url")||e.modified("format"))}(e))return t.StopPropagation;if(e.values)return Qa(this,t,r.parse(e.values,e.format));if(e.async){var i=r.request(e.url,e.format).then((function(e){return n._pending=se(e.data),function(e){return e.touch(n)}}));return{async:i}}return r.request(e.url,e.format).then((function(e){return Qa(n,t,se(e.data))}))}}),Ka.Definition={type:"Lookup",metadata:{modifies:!0},params:[{name:"index",type:"index",params:[{name:"from",type:"data",required:!0},{name:"key",type:"field",required:!0}]},{name:"values",type:"field",array:!0},{name:"fields",type:"field",array:!0,required:!0},{name:"as",type:"string",array:!0},{name:"default",default:null}]},Ee(Ka,ii,{transform:function(e,t){var n,r,i=e.fields,a=e.index,u=e.values,o=null==e.default?null:e.default,s=e.modified(),l=i.length,c=s?t.SOURCE:t.ADD,f=t,d=e.as;return u?(r=u.length,l>1&&!d&&E('Multi-field lookup requires explicit "as" parameter.'),d&&d.length!==l*r&&E('The "as" parameter has too few output field names.'),d=d||u.map(_),n=function(e){for(var t,n,s=0,c=0;s<l;++s)if(null==(n=a.get(i[s](e))))for(t=0;t<r;++t,++c)e[d[c]]=o;else for(t=0;t<r;++t,++c)e[d[c]]=u[t](n)}):(d||E("Missing output field names."),n=function(e){for(var t,n=0;n<l;++n)t=a.get(i[n](e)),e[d[n]]=null==t?o:t}),s?f=t.reflow(!0):c|=i.some((function(e){return t.modified(e.fields)}))?t.MOD:0,t.visit(c,n),f.modifies(d)}}),Ee(Za,Rr),Ee(tu,Rr),Ee(ru,ii,{transform:function(e,t){return this.modified(e.modified()),this.value=e,t.fork(t.NO_SOURCE|t.NO_FIELDS)}}),iu.Definition={type:"Pivot",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"field",type:"field",required:!0},{name:"value",type:"field",required:!0},{name:"op",type:"enum",values:ia,default:"sum"},{name:"limit",type:"number",default:0},{name:"key",type:"field"}]},Ee(iu,pa,{_transform:pa.prototype.transform,transform:function(e,t){return this._transform(function(e,t){var n=e.field,r=e.value,i=("count"===e.op?"__count__":e.op)||"sum",a=k(n).concat(k(r)),u=function(e,t,n){var r={},i=[];return n.visit(n.SOURCE,(function(t){var n=e(t);r[n]||(r[n]=1,i.push(n))})),i.sort(de),t?i.slice(0,t):i}(n,e.limit||0,t);t.changed()&&e.set("__pivot__",null,null,!0);return{key:e.key,groupby:e.groupby,ops:u.map((function(){return i})),fields:u.map((function(e){return function(e,t,n,r){return x((function(r){return t(r)===e?n(r):NaN}),r,e+"")}(e,n,r,a)})),as:u.map((function(e){return e+""})),modified:e.modified.bind(e)}}(e,t),t)}}),Ee(au,qa,{transform:function(e,t){var n=this,r=e.subflow,i=e.field,a=function(e){return n.subflow(xr(e),r,t,e)};return(e.modified("field")||i&&t.modified(k(i)))&&E("PreFacet does not support field modification."),this.initTargets(),i?(t.visit(t.MOD,(function(e){var t=a(e);i(e).forEach((function(e){return t.mod(e)}))})),t.visit(t.ADD,(function(e){var t=a(e);i(e).forEach((function(e){return t.add(kr(e))}))})),t.visit(t.REM,(function(e){var t=a(e);i(e).forEach((function(e){return t.rem(e)}))}))):(t.visit(t.MOD,(function(e){return a(e).mod(e)})),t.visit(t.ADD,(function(e){return a(e).add(e)})),t.visit(t.REM,(function(e){return a(e).rem(e)}))),t.clean()&&t.runAfter((function(){return n.clean()})),t}}),uu.Definition={type:"Project",metadata:{generates:!0,changes:!0},params:[{name:"fields",type:"field",array:!0},{name:"as",type:"string",null:!0,array:!0}]},Ee(uu,ii,{transform:function(e,t){var n,r=t.fork(t.NO_SOURCE),i=e.fields,a=Fa(e.fields,e.as||[]),u=i?function(e,t){return function(e,t,n,r){for(var i=0,a=n.length;i<a;++i)t[r[i]]=n[i](e);return t}(e,t,i,a)}:wr;return this.value?n=this.value:(t=t.addAll(),n=this.value={}),t.visit(t.REM,(function(e){var t=xr(e);r.rem.push(n[t]),n[t]=null})),t.visit(t.ADD,(function(e){var t=u(e,kr({}));n[xr(e)]=t,r.add.push(t)})),t.visit(t.MOD,(function(e){r.mod.push(u(e,n[xr(e)]))})),r}}),Ee(ou,ii,{transform:function(e,t){return this.value=e.value,e.modified("value")?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}}),su.Definition={type:"Quantile",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"field",type:"field",required:!0},{name:"probs",type:"number",array:!0},{name:"step",type:"number",default:.01},{name:"as",type:"string",array:!0,default:["prob","value"]}]};function lu(e){ii.call(this,null,e)}function cu(e){ii.call(this,[],e),this.count=0}function fu(e){ii.call(this,null,e)}function du(e){ii.call(this,null,e),this.modified(!0)}function hu(e){ii.call(this,null,e)}Ee(su,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=e.as||["prob","value"];if(this.value&&!e.modified()&&!t.changed())return n.source=this.value,n;var a=Ma(t.materialize(t.SOURCE).source,e.groupby,e.field),u=(e.groupby||[]).map(_),o=[],s=e.step||.01,l=e.probs||r.range(s/2,1-1e-14,s),c=l.length;return a.forEach((function(e){for(var t=ci(e,l),n=0;n<c;++n){for(var r={},a=0;a<u.length;++a)r[u[a]]=e.dims[a];r[i[0]]=l[n],r[i[1]]=t[n],o.push(kr(r))}})),this.value&&(n.rem=this.value),this.value=n.add=n.source=o,n}}),Ee(lu,ii,{transform:function(e,t){var n,r;return this.value?r=this.value:(n=t=t.addAll(),r=this.value={}),e.derive&&(n=t.fork(t.NO_SOURCE),t.visit(t.REM,(function(e){var t=xr(e);n.rem.push(r[t]),r[t]=null})),t.visit(t.ADD,(function(e){var t=Ar(e);r[xr(e)]=t,n.add.push(t)})),t.visit(t.MOD,(function(e){var t=r[xr(e)];for(var i in e)t[i]=e[i],n.modifies(i);n.mod.push(t)}))),n}}),cu.Definition={type:"Sample",metadata:{},params:[{name:"size",type:"number",default:1e3}]},Ee(cu,ii,{transform:function(t,n){var r=n.fork(n.NO_SOURCE),i=t.modified("size"),a=t.size,u=this.value.reduce((function(e,t){return e[xr(t)]=1,e}),{}),o=this.value,s=this.count,l=0;function c(t){var n,i;o.length<a?o.push(t):(i=~~((s+1)*e.random()))<o.length&&i>=l&&(n=o[i],u[xr(n)]&&r.rem.push(n),o[i]=t),++s}if(n.rem.length&&(n.visit(n.REM,(function(e){var t=xr(e);u[t]&&(u[t]=-1,r.rem.push(e)),--s})),o=o.filter((function(e){return-1!==u[xr(e)]}))),(n.rem.length||i)&&o.length<a&&n.source&&(l=s=o.length,n.visit(n.SOURCE,(function(e){u[xr(e)]||c(e)})),l=-1),i&&o.length>a){for(var f=o.length-a,d=0;d<f;++d)u[xr(o[d])]=-1,r.rem.push(o[d]);o=o.slice(f)}return n.mod.length&&n.visit(n.MOD,(function(e){u[xr(e)]&&r.mod.push(e)})),n.add.length&&n.visit(n.ADD,c),(n.add.length||l<0)&&(r.add=o.filter((function(e){return!u[xr(e)]}))),this.count=s,this.value=r.source=o,r}}),fu.Definition={type:"Sequence",metadata:{generates:!0,changes:!0},params:[{name:"start",type:"number",required:!0},{name:"stop",type:"number",required:!0},{name:"step",type:"number",default:1},{name:"as",type:"string",default:"data"}]},Ee(fu,ii,{transform:function(e,t){if(!this.value||e.modified()){var n=t.materialize().fork(t.MOD),i=e.as||"data";return n.rem=this.value?t.rem.concat(this.value):t.rem,this.value=r.range(e.start,e.stop,e.step||1).map((function(e){var t={};return t[i]=e,kr(t)})),n.add=t.add.concat(this.value),n}}}),Ee(du,ii,{transform:function(e,t){return this.value=t.source,t.changed()?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}});var pu=["unit0","unit1"];function mu(e){ii.call(this,we(),e)}function vu(e){ii.call(this,null,e)}hu.Definition={type:"TimeUnit",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"interval",type:"boolean",default:!0},{name:"units",type:"enum",values:wt,array:!0},{name:"step",type:"number",default:1},{name:"maxbins",type:"number",default:40},{name:"extent",type:"date",array:!0},{name:"timezone",type:"enum",default:"local",values:["local","utc"]},{name:"as",type:"string",array:!0,length:2,default:pu}]},Ee(hu,ii,{transform:function(e,t){var n=e.field,r=!1!==e.interval,i="utc"===e.timezone,a=this._floor(e,t),u=(i?en:Zt)(a.unit).offset,o=e.as||pu,s=o[0],l=o[1],c=a.step,f=a.start||1/0,d=a.stop||-1/0,h=t.ADD;return(e.modified()||t.changed(t.REM)||t.modified(k(n)))&&(h=(t=t.reflow(!0)).SOURCE,f=1/0,d=-1/0),t.visit(h,(function(e){var t,i,o=n(e);null==o?(e[s]=null,r&&(e[l]=null)):(e[s]=t=i=a(o),r&&(e[l]=i=u(t,c)),t<f&&(f=t),i>d&&(d=i))})),a.start=f,a.stop=d,t.modifies(r?o:s)},_floor:function(e,t){var n="utc"===e.timezone,r=e.units?{units:e.units,step:e.step||1}:wn({extent:e.extent||be(t.materialize(t.SOURCE).source,e.field),maxbins:e.maxbins}),i=r.units,a=r.step,u=Et(i),o=this.value||{},s=(n?Jt:Vt)(u,a);return s.unit=$(u),s.units=u,s.step=a,s.start=o.start,s.stop=o.stop,this.value=s}}),Ee(mu,ii,{transform:function(e,t){var n=t.dataflow,r=e.field,i=this.value,a=function(e){return i.set(r(e),e)},u=!0;return e.modified("field")||t.modified(r.fields)?(i.clear(),t.visit(t.SOURCE,a)):t.changed()?(t.visit(t.REM,(function(e){return i.delete(r(e))})),t.visit(t.ADD,a)):u=!1,this.modified(u),i.empty>n.cleanThreshold&&n.runAfter(i.clean),t.fork()}}),Ee(vu,ii,{transform:function(e,t){(!this.value||e.modified("field")||e.modified("sort")||t.changed()||e.sort&&t.modified(e.sort.fields))&&(this.value=(e.sort?t.source.slice().sort(Er(e.sort)):t.source).map(e.field))}});var gu={row_number:function(){return{next:function(e){return e.index+1}}},rank:function(){var e;return{init:function(){return e=1},next:function(t){var n=t.index,r=t.data;return n&&t.compare(r[n-1],r[n])?e=n+1:e}}},dense_rank:function(){var e;return{init:function(){return e=1},next:function(t){var n=t.index,r=t.data;return n&&t.compare(r[n-1],r[n])?++e:e}}},percent_rank:function(){var e=gu.rank(),t=e.next;return{init:e.init,next:function(e){return(t(e)-1)/(e.data.length-1)}}},cume_dist:function(){var e;return{init:function(){return e=0},next:function(t){var n=t.data,r=t.compare,i=t.index;if(e<i){for(;i+1<n.length&&!r(n[i],n[i+1]);)++i;e=i}return(1+e)/n.length}}},ntile:function(e,t){(t=+t)>0||E("ntile num must be greater than zero.");var n=gu.cume_dist(),r=n.next;return{init:n.init,next:function(e){return Math.ceil(t*r(e))}}},lag:function(e,t){return t=+t||1,{next:function(n){var r=n.index-t;return r>=0?e(n.data[r]):null}}},lead:function(e,t){return t=+t||1,{next:function(n){var r=n.index+t,i=n.data;return r<i.length?e(i[r]):null}}},first_value:function(e){return{next:function(t){return e(t.data[t.i0])}}},last_value:function(e){return{next:function(t){return e(t.data[t.i1-1])}}},nth_value:function(e,t){return(t=+t)>0||E("nth_value nth must be greater than zero."),{next:function(n){var r=n.i0+(t-1);return r<n.i1?e(n.data[r]):null}}},prev_value:function(e){var t;return{init:function(){return t=null},next:function(n){var r=e(n.data[n.index]);return null!=r?t=r:t}}},next_value:function(e){var t,n;return{init:function(){return t=null,n=-1},next:function(r){var i=r.data;return r.index<=n?t:(n=function(e,t,n){for(var r=t.length;n<r;++n){if(null!=e(t[n]))return n}return-1}(e,i,r.index))<0?(n=i.length,t=null):t=e(i[n])}}}};var yu=Object.keys(gu);function bu(e){var t=se(e.ops),n=se(e.fields),r=se(e.params),i=se(e.as),a=this.outputs=[],u=this.windows=[],o={},s={},l=[],c=[],f=!0;function d(e){se(k(e)).forEach((function(e){return o[e]=1}))}d(e.sort),t.forEach((function(e,t){var o=n[t],h=_(o),p=ea(e,h,i[t]);if(d(o),a.push(p),ke(gu,e))u.push(function(e,t,n,r){var i=gu[e](t,n);return{init:i.init||B,update:function(e,t){t[r]=i.next(e)}}}(e,n[t],r[t],p));else{if(null==o&&"count"!==e&&E("Null aggregate field specified."),"count"===e)return void l.push(p);f=!1;var m=s[h];m||((m=s[h]=[]).field=o,c.push(m)),m.push(aa(e,p))}})),(l.length||c.length)&&(this.cell=function(e,t,n){e=e.map((function(e){return fa(e,e.field)}));var r={num:0,agg:null,store:!1,count:t};if(!n)for(var i=e.length,a=r.agg=Array(i),u=0;u<i;++u)a[u]=new e[u](r);if(r.store)var o=r.data=new da;return r.add=function(e){if(r.num+=1,!n){o&&o.add(e);for(var t=0;t<i;++t)a[t].add(a[t].get(e),e)}},r.rem=function(e){if(r.num-=1,!n){o&&o.rem(e);for(var t=0;t<i;++t)a[t].rem(a[t].get(e),e)}},r.set=function(e){var i,u;for(o&&o.values(),i=0,u=t.length;i<u;++i)e[t[i]]=r.num;if(!n)for(i=0,u=a.length;i<u;++i)a[i].set(e)},r.init=function(){r.num=0,o&&o.reset();for(var e=0;e<i;++e)a[e].init()},r}(c,l,f)),this.inputs=Object.keys(o)}var xu=bu.prototype;function _u(e){ii.call(this,{},e),this._mlen=0,this._mods=[]}function ku(e,t,n,i){var a=i.sort,u=a&&!i.ignorePeers,o=i.frame||[null,0],s=e.data(n),l=s.length,c=u?r.bisector(a):null,f={i0:0,i1:0,p0:0,p1:0,index:0,data:s,compare:a||ve(-1)};t.init();for(var d=0;d<l;++d)Au(f,o,d,l),u&&wu(f,c),t.update(f,s[d])}function Au(e,t,n,r){e.p0=e.i0,e.p1=e.i1,e.i0=null==t[0]?0:Math.max(0,n-Math.abs(t[0])),e.i1=null==t[1]?r:Math.min(r,n+Math.abs(t[1])+1),e.index=n}function wu(e,t){var n=e.i0,r=e.i1-1,i=e.compare,a=e.data,u=a.length-1;n>0&&!i(a[n],a[n-1])&&(e.i0=t.left(a,a[n])),r<u&&!i(a[r],a[r+1])&&(e.i1=t.right(a,a[r]))}xu.init=function(){this.windows.forEach((function(e){return e.init()})),this.cell&&this.cell.init()},xu.update=function(e,t){var n,r=this.cell,i=this.windows,a=e.data,u=i&&i.length;if(r){for(n=e.p0;n<e.i0;++n)r.rem(a[n]);for(n=e.p1;n<e.i1;++n)r.add(a[n]);r.set(t)}for(n=0;n<u;++n)i[n].update(e,t)},_u.Definition={type:"Window",metadata:{modifies:!0},params:[{name:"sort",type:"compare"},{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:yu.concat(ia)},{name:"params",type:"number",null:!0,array:!0},{name:"fields",type:"field",null:!0,array:!0},{name:"as",type:"string",null:!0,array:!0},{name:"frame",type:"number",null:!0,array:!0,length:2,default:[null,0]},{name:"ignorePeers",type:"boolean",default:!1}]},Ee(_u,ii,{transform:function(e,t){var n=this;this.stamp=t.stamp;var r=e.modified(),i=Er(e.sort),a=Zi(e.groupby),u=function(e){return n.group(a(e))},o=this.state;o&&!r||(o=this.state=new bu(e)),r||t.modified(o.inputs)?(this.value={},t.visit(t.SOURCE,(function(e){return u(e).add(e)}))):(t.visit(t.REM,(function(e){return u(e).remove(e)})),t.visit(t.ADD,(function(e){return u(e).add(e)})));for(var s=0,l=this._mlen;s<l;++s)ku(this._mods[s],o,i,e);return this._mlen=0,this._mods=[],t.reflow(r).modifies(o.outputs)},group:function(e){var t=this.value[e];return t||(t=this.value[e]=va(xr),t.stamp=-1),t.stamp<this.stamp&&(t.stamp=this.stamp,this._mods[this._mlen++]=t),t}});var Du=Object.freeze({__proto__:null,aggregate:pa,bin:ma,collect:ga,compare:ya,countpattern:xa,cross:_a,density:Da,dotbin:Sa,expression:Ba,extent:Ra,facet:qa,field:Ta,filter:Na,flatten:Pa,fold:ja,formula:Ua,generate:Ia,impute:Ga,joinaggregate:Ha,kde:Va,key:Ya,load:Ja,lookup:Ka,multiextent:Za,multivalues:tu,params:ru,pivot:iu,prefacet:au,project:uu,proxy:ou,quantile:su,relay:lu,sample:cu,sequence:fu,sieve:du,subflow:za,timeunit:hu,tupleindex:mu,values:vu,window:_u});function Eu(e,t){if("undefined"!=typeof document&&document.createElement){var n=document.createElement("canvas");if(n&&n.getContext)return n.width=e,n.height=t,n}return null}var Cu,Fu,Mu=function(){return"undefined"!=typeof Image?Image:null};function Su(e,t,n){var r=e-t+2*n;return e?r>0?r:1:0}var Bu="linear",Ou="log",Ru="pow",zu="sqrt",qu="symlog",Tu="time",Lu="utc",Nu="sequential",Pu="diverging",ju="quantile",Uu="quantize",Iu="threshold",$u="ordinal",Wu="point",Gu="band",Hu="bin-ordinal",Vu="continuous",Yu="discrete",Xu="discretizing",Ju="interpolating",Qu="temporal";function Ku(){var e,t,n=l.scaleOrdinal().unknown(void 0),i=n.domain,a=n.range,u=[0,1],o=!1,s=0,c=0,f=.5;function d(){var n=i().length,l=u[1]<u[0],d=u[1-l],h=Su(n,s,c),p=u[l-0];e=(d-p)/(h||1),o&&(e=Math.floor(e)),p+=(d-p-e*(n-s))*f,t=e*(1-s),o&&(p=Math.round(p),t=Math.round(t));var m=r.range(n).map((function(t){return p+e*t}));return a(l?m.reverse():m)}return delete n.unknown,n.domain=function(e){return arguments.length?(i(e),d()):i()},n.range=function(e){return arguments.length?(u=[+e[0],+e[1]],d()):u.slice()},n.rangeRound=function(e){return u=[+e[0],+e[1]],o=!0,d()},n.bandwidth=function(){return t},n.step=function(){return e},n.round=function(e){return arguments.length?(o=!!e,d()):o},n.padding=function(e){return arguments.length?(c=Math.max(0,Math.min(1,e)),s=c,d()):s},n.paddingInner=function(e){return arguments.length?(s=Math.max(0,Math.min(1,e)),d()):s},n.paddingOuter=function(e){return arguments.length?(c=Math.max(0,Math.min(1,e)),d()):c},n.align=function(e){return arguments.length?(f=Math.max(0,Math.min(1,e)),d()):f},n.invertRange=function(e){if(null!=e[0]&&null!=e[1]){var n,o,s,l=u[1]<u[0],c=l?a().reverse():a(),f=c.length-1,d=+e[0],h=+e[1];if(d==d&&h==h&&(h<d&&(s=d,d=h,h=s),!(h<c[0]||d>u[1-l])))return n=Math.max(0,r.bisectRight(c,d)-1),o=d===h?n:r.bisectRight(c,h)-1,d-c[n]>t+1e-10&&++n,l&&(s=n,n=f-o,o=f-s),n>o?void 0:i().slice(n,o+1)}},n.invert=function(e){var t=n.invertRange([e,e]);return t?t[0]:t},n.copy=function(){return Ku().domain(i()).range(u).round(o).paddingInner(s).paddingOuter(c).align(f)},d()}function Zu(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,e.copy=function(){return Zu(t())},e}var eo=Array.prototype.map;function to(e){return eo.call(e,W)}var no=Array.prototype.slice;var ro={};function io(e,t,n){var r=function(){var n=t();return n.invertRange||(n.invertRange=n.invert?function(e){return function(t){var n,r=t[0],i=t[1];return i<r&&(n=r,r=i,i=n),[e.invert(r),e.invert(i)]}}(n):n.invertExtent?function(e){return function(t){var n,r,i,a,u=e.range(),o=t[0],s=t[1],l=-1;for(s<o&&(r=o,o=s,s=r),i=0,a=u.length;i<a;++i)u[i]>=o&&u[i]<=s&&(l<0&&(l=i),n=i);if(!(l<0))return o=e.invertExtent(u[l]),s=e.invertExtent(u[n]),[void 0===o[0]?o[1]:o[0],void 0===s[1]?s[0]:s[1]]}}(n):void 0),n.type=e,n};return r.metadata=Ze(se(n)),r}function ao(e,t,n){return arguments.length>1?(ro[e]=io(e,t,n),this):uo(e)?ro[e]:void 0}function uo(e){return ke(ro,e)}function oo(e,t){var n=ro[e];return n&&n.metadata[t]}function so(e){return oo(e,Vu)}function lo(e){return oo(e,Yu)}function co(e){return oo(e,Xu)}function fo(e){return oo(e,Ou)}function ho(e){return oo(e,Ju)}function po(e){return oo(e,ju)}ao("identity",y.scaleIdentity),ao(Bu,y.scaleLinear,Vu),ao(Ou,y.scaleLog,[Vu,Ou]),ao(Ru,y.scalePow,Vu),ao(zu,y.scaleSqrt,Vu),ao(qu,y.scaleSymlog,Vu),ao(Tu,y.scaleTime,[Vu,Qu]),ao(Lu,y.scaleUtc,[Vu,Qu]),ao(Nu,y.scaleSequential,[Vu,Ju]),ao("".concat(Nu,"-").concat(Bu),y.scaleSequential,[Vu,Ju]),ao("".concat(Nu,"-").concat(Ou),y.scaleSequentialLog,[Vu,Ju,Ou]),ao("".concat(Nu,"-").concat(Ru),y.scaleSequentialPow,[Vu,Ju]),ao("".concat(Nu,"-").concat(zu),y.scaleSequentialSqrt,[Vu,Ju]),ao("".concat(Nu,"-").concat(qu),y.scaleSequentialSymlog,[Vu,Ju]),ao("".concat(Pu,"-").concat(Bu),y.scaleDiverging,[Vu,Ju]),ao("".concat(Pu,"-").concat(Ou),y.scaleDivergingLog,[Vu,Ju,Ou]),ao("".concat(Pu,"-").concat(Ru),y.scaleDivergingPow,[Vu,Ju]),ao("".concat(Pu,"-").concat(zu),y.scaleDivergingSqrt,[Vu,Ju]),ao("".concat(Pu,"-").concat(qu),y.scaleDivergingSymlog,[Vu,Ju]),ao(ju,y.scaleQuantile,[Xu,ju]),ao(Uu,y.scaleQuantize,Xu),ao(Iu,y.scaleThreshold,Xu),ao(Hu,(function e(){var t=[],n=[];function i(e){return null==e||e!=e?void 0:n[(r.bisect(t,e)-1)%n.length]}return i.domain=function(e){return arguments.length?(t=to(e),i):t.slice()},i.range=function(e){return arguments.length?(n=no.call(e),i):n.slice()},i.tickFormat=function(e,n){return l.tickFormat(t[0],$(t),null==e?10:e,n)},i.copy=function(){return e().domain(i.domain()).range(i.range())},i}),[Yu,Xu]),ao($u,y.scaleOrdinal,Yu),ao(Gu,Ku,Yu),ao(Wu,(function(){return Zu(Ku().paddingInner(1))}),Yu);var mo=["clamp","base","constant","exponent"];function vo(e,t){var n=t[0],r=$(t)-n;return function(t){return e(n+t*r)}}function go(e,t,n){return b.piecewise(xo(t||"rgb",n),e)}function yo(e,t){for(var n=new Array(t),r=t+1,i=0;i<t;)n[i]=e(++i/r);return n}function bo(e,t,n){var r,i,a,u=n-t;return u&&Number.isFinite(u)?(r=(i=e.type).indexOf("-"),i=r<0?i:i.slice(r+1),a=ao(i)().domain([t,n]).range([0,1]),mo.forEach((function(t){return e[t]?a[t](e[t]()):0})),a):ve(.5)}function xo(e,t){var n=b[function(e){return"interpolate"+e.toLowerCase().split("-").map((function(e){return e[0].toUpperCase()+e.slice(1)})).join("")}(e)];return null!=t&&n&&n.gamma?n.gamma(t):n}function _o(e){for(var t=e.length/6|0,n=new Array(t),r=0;r<t;)n[r]="#"+e.slice(6*r,6*++r);return n}function ko(e,t){for(var n in e)wo(n,t(e[n]))}var Ao={};function wo(e,t){return e=e&&e.toLowerCase(),arguments.length>1?(Ao[e]=t,this):Ao[e]}ko({category10:"1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf",category20:"1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5",category20b:"393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6",category20c:"3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9",tableau10:"4c78a8f58518e4575672b7b254a24beeca3bb279a2ff9da69d755dbab0ac",tableau20:"4c78a89ecae9f58518ffbf7954a24b88d27ab79a20f2cf5b43989483bcb6e45756ff9d9879706ebab0acd67195fcbfd2b279a2d6a5c99e765fd8b5a5",accent:"7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666",dark2:"1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666",paired:"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928",pastel1:"fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2",pastel2:"b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc",set1:"e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999",set2:"66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3",set3:"8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"},_o),ko({blues:"cfe1f2bed8eca8cee58fc1de74b2d75ba3cf4592c63181bd206fb2125ca40a4a90",greens:"d3eecdc0e6baabdda594d3917bc77d60ba6c46ab5e329a512089430e7735036429",greys:"e2e2e2d4d4d4c4c4c4b1b1b19d9d9d8888887575756262624d4d4d3535351e1e1e",oranges:"fdd8b3fdc998fdb87bfda55efc9244f87f2cf06b18e4580bd14904b93d029f3303",purples:"e2e1efd4d4e8c4c5e0b4b3d6a3a0cc928ec3827cb97566ae684ea25c3696501f8c",reds:"fdc9b4fcb49afc9e80fc8767fa7051f6573fec3f2fdc2a25c81b1db21218970b13",blueGreen:"d5efedc1e8e0a7ddd18bd2be70c6a958ba9144ad77319c5d2089460e7736036429",bluePurple:"ccddecbad0e4a8c2dd9ab0d4919cc98d85be8b6db28a55a6873c99822287730f71",greenBlue:"d3eecec5e8c3b1e1bb9bd8bb82cec269c2ca51b2cd3c9fc7288abd1675b10b60a1",orangeRed:"fddcaffdcf9bfdc18afdad77fb9562f67d53ee6545e24932d32d1ebf130da70403",purpleBlue:"dbdaebc8cee4b1c3de97b7d87bacd15b9fc93a90c01e7fb70b70ab056199045281",purpleBlueGreen:"dbd8eac8cee4b0c3de93b7d872acd1549fc83892bb1c88a3097f8702736b016353",purpleRed:"dcc9e2d3b3d7ce9eccd186c0da6bb2e14da0e23189d91e6fc61159ab07498f023a",redPurple:"fccfccfcbec0faa9b8f98faff571a5ec539ddb3695c41b8aa908808d0179700174",yellowGreen:"e4f4acd1eca0b9e2949ed68880c97c62bb6e47aa5e3297502083440e723b036034",yellowOrangeBrown:"feeaa1fedd84fecc63feb746fca031f68921eb7215db5e0bc54c05ab3d038f3204",yellowOrangeRed:"fee087fed16ffebd59fea849fd903efc7335f9522bee3423de1b20ca0b22af0225",blueOrange:"134b852f78b35da2cb9dcae1d2e5eff2f0ebfce0bafbbf74e8932fc5690d994a07",brownBlueGreen:"704108a0651ac79548e3c78af3e6c6eef1eac9e9e48ed1c74da79e187a72025147",purpleGreen:"5b1667834792a67fb6c9aed3e6d6e8eff0efd9efd5aedda971bb75368e490e5e29",purpleOrange:"4114696647968f83b7b9b4d6dadbebf3eeeafce0bafbbf74e8932fc5690d994a07",redBlue:"8c0d25bf363adf745ef4ae91fbdbc9f2efeed2e5ef9dcae15da2cb2f78b3134b85",redGrey:"8c0d25bf363adf745ef4ae91fcdccbfaf4f1e2e2e2c0c0c0969696646464343434",yellowGreenBlue:"eff9bddbf1b4bde5b594d5b969c5be45b4c22c9ec02182b82163aa23479c1c3185",redYellowBlue:"a50026d4322cf16e43fcac64fedd90faf8c1dcf1ecabd6e875abd04a74b4313695",redYellowGreen:"a50026d4322cf16e43fcac63fedd8df9f7aed7ee8ea4d86e64bc6122964f006837",pinkYellowGreen:"8e0152c0267edd72adf0b3d6faddedf5f3efe1f2cab6de8780bb474f9125276419",spectral:"9e0142d13c4bf0704afcac63fedd8dfbf8b0e0f3a1a9dda269bda94288b55e4fa2",viridis:"440154470e61481a6c482575472f7d443a834144873d4e8a39568c35608d31688e2d708e2a788e27818e23888e21918d1f988b1fa08822a8842ab07f35b77943bf7154c56866cc5d7ad1518fd744a5db36bcdf27d2e21be9e51afde725",magma:"0000040404130b0924150e3720114b2c11603b0f704a107957157e651a80721f817f24828c29819a2e80a8327db6377ac43c75d1426fde4968e95462f1605df76f5cfa7f5efc8f65fe9f6dfeaf78febf84fece91fddea0fcedaffcfdbf",inferno:"0000040403130c0826170c3b240c4f330a5f420a68500d6c5d126e6b176e781c6d86216b932667a12b62ae305cbb3755c73e4cd24644dd513ae65c30ed6925f3771af8850ffb9506fca50afcb519fac62df6d645f2e661f3f484fcffa4",plasma:"0d088723069033059742039d5002a25d01a66a00a87801a88405a7900da49c179ea72198b12a90ba3488c33d80cb4779d35171da5a69e16462e76e5bed7953f2834cf68f44fa9a3dfca636fdb32ffec029fcce25f9dc24f5ea27f0f921",cividis:"00205100235800265d002961012b65042e670831690d346b11366c16396d1c3c6e213f6e26426e2c456e31476e374a6e3c4d6e42506e47536d4c566d51586e555b6e5a5e6e5e616e62646f66676f6a6a706e6d717270717573727976737c79747f7c75827f758682768985778c8877908b78938e789691789a94789e9778a19b78a59e77a9a177aea575b2a874b6ab73bbaf71c0b26fc5b66dc9b96acebd68d3c065d8c462ddc85fe2cb5ce7cf58ebd355f0d652f3da4ff7de4cfae249fce647",rainbow:"6e40aa883eb1a43db3bf3cafd83fa4ee4395fe4b83ff576eff6659ff7847ff8c38f3a130e2b72fcfcc36bee044aff05b8ff4576ff65b52f6673af27828ea8d1ddfa319d0b81cbecb23abd82f96e03d82e14c6edb5a5dd0664dbf6e40aa",sinebow:"ff4040fc582af47218e78d0bd5a703bfbf00a7d5038de70b72f41858fc2a40ff402afc5818f4720be78d03d5a700bfbf03a7d50b8de71872f42a58fc4040ff582afc7218f48d0be7a703d5bf00bfd503a7e70b8df41872fc2a58ff4040",turbo:"23171b32204a3e2a71453493493eae4b49c54a53d7485ee44569ee4074f53c7ff8378af93295f72e9ff42ba9ef28b3e926bce125c5d925cdcf27d5c629dcbc2de3b232e9a738ee9d3ff39347f68950f9805afc7765fd6e70fe667cfd5e88fc5795fb51a1f84badf545b9f140c5ec3cd0e637dae034e4d931ecd12ef4c92bfac029ffb626ffad24ffa223ff9821ff8d1fff821dff771cfd6c1af76118f05616e84b14df4111d5380fcb2f0dc0260ab61f07ac1805a313029b0f00950c00910b00",browns:"eedbbdecca96e9b97ae4a865dc9856d18954c7784cc0673fb85536ad44339f3632",tealBlues:"bce4d89dd3d181c3cb65b3c245a2b9368fae347da0306a932c5985",teals:"bbdfdfa2d4d58ac9c975bcbb61b0af4da5a43799982b8b8c1e7f7f127273006667",warmGreys:"dcd4d0cec5c1c0b8b4b3aaa7a59c9998908c8b827f7e7673726866665c5a59504e",goldGreen:"f4d166d5ca60b6c35c98bb597cb25760a6564b9c533f8f4f33834a257740146c36",goldOrange:"f4d166f8be5cf8aa4cf5983bf3852aef701be2621fd65322c54923b142239e3a26",goldRed:"f4d166f6be59f9aa51fc964ef6834bee734ae56249db5247cf4244c43141b71d3e",lightGreyRed:"efe9e6e1dad7d5cbc8c8bdb9bbaea9cd967ddc7b43e15f19df4011dc000b",lightGreyTeal:"e4eaead6dcddc8ced2b7c2c7a6b4bc64b0bf22a6c32295c11f85be1876bc",lightMulti:"e0f1f2c4e9d0b0de9fd0e181f6e072f6c053f3993ef77440ef4a3c",lightOrange:"f2e7daf7d5baf9c499fab184fa9c73f68967ef7860e8645bde515bd43d5b",lightTealBlue:"e3e9e0c0dccf9aceca7abfc859afc0389fb9328dad2f7ca0276b95255988",darkBlue:"3232322d46681a5c930074af008cbf05a7ce25c0dd38daed50f3faffffff",darkGold:"3c3c3c584b37725e348c7631ae8b2bcfa424ecc31ef9de30fff184ffffff",darkGreen:"3a3a3a215748006f4d048942489e4276b340a6c63dd2d836ffeb2cffffaa",darkMulti:"3737371f5287197d8c29a86995ce3fffe800ffffff",darkRed:"3434347036339e3c38cc4037e75d1eec8620eeab29f0ce32ffeb2c"},(function(e){return go(_o(e))}));var Do="symbol",Eo=function(e){return L(e)?e.map((function(e){return String(e)})):String(e)},Co=function(e,t){return e[1]-t[1]},Fo=function(e,t){return t[1]-e[1]};function Mo(e,t,n){var r;return Be(t)&&(e.bins&&(t=Math.max(t,e.bins.length)),null!=n&&(t=Math.min(t,Math.floor(je(e.domain())/n||1)))),N(t)&&(r=t.step,t=t.interval),Re(t)&&(t=e.type===Tu?Zt(t):e.type==Lu?en(t):E("Only time and utc scales accept interval strings."),r&&(t=t.every(r))),t}function So(e,t,n){var r=e.range(),i=r[0],a=$(r),u=Co;if(i>a&&(r=a,a=i,i=r,u=Fo),i=Math.floor(i),a=Math.ceil(a),t=t.map((function(t){return[t,e(t)]})).filter((function(e){return i<=e[1]&&e[1]<=a})).sort(u).map((function(e){return e[0]})),n>0&&t.length>1){for(var o=[t[0],$(t)];t.length>n&&t.length>=3;)t=t.filter((function(e,t){return!(t%2)}));t.length<3&&(t=o)}return t}function Bo(e,t){return e.bins?So(e,e.bins):e.ticks?e.ticks(t):e.domain()}function Oo(e,t,n,r,i,a){var u=t.type,o=Eo;if(u===Tu||i===Tu)o=e.timeFormat(r);else if(u===Lu||i===Lu)o=e.utcFormat(r);else if(fo(u)){var s=e.formatFloat(r);if(a||t.bins)o=s;else{var l=Ro(t,n,!1);o=function(e){return l(e)?s(e):""}}}else if(t.tickFormat){var c=t.domain();o=e.formatSpan(c[0],c[c.length-1],n,r)}else r&&(o=e.format(r));return o}function Ro(e,t,n){var r=Bo(e,t),i=e.base(),a=Math.log(i),u=Math.max(1,i*t/r.length),o=function(e){var t=e/Math.pow(i,Math.round(Math.log(e)/a));return t*i<i-.5&&(t*=i),t<=u};return n?r.filter(o):o}var zo=(ot(Cu={},ju,"quantiles"),ot(Cu,Uu,"thresholds"),ot(Cu,Iu,"domain"),Cu),qo=(ot(Fu={},ju,"quantiles"),ot(Fu,Uu,"domain"),Fu);function To(e,t){return e.bins?function(e){var t=e.slice(0,-1);return t.max=$(e),t}(e.bins):e.type===Ou?Ro(e,t,!0):zo[e.type]?function(e){var t=[-1/0].concat(e);return t.max=1/0,t}(e[zo[e.type]]()):Bo(e,t)}function Lo(e,t,n,r,i,a,u){var o=qo[t.type]&&a!==Tu&&a!==Lu?function(e,t,n){var r,i=t[qo[t.type]](),a=i.length,u=a>1?i[1]-i[0]:i[0];for(r=1;r<a;++r)u=Math.min(u,i[r]-i[r-1]);return e.formatSpan(0,u,30,n)}(e,t,i):Oo(e,t,n,i,a,u);return r===Do&&function(e){return zo[e.type]||e.bins}(t)?No(o):"discrete"===r?jo(o):Uo(o)}var No=function(e){return function(t,n,r){var i=Po(r[n+1],Po(r.max,1/0)),a=Io(t,e),u=Io(i,e);return a&&u?a+" – "+u:u?"< "+u:"≥ "+a}},Po=function(e,t){return null!=e?e:t},jo=function(e){return function(t,n){return n?e(t):null}},Uo=function(e){return function(t){return e(t)}},Io=function(e,t){return Number.isFinite(e)?t(e):null};function $o(e,t,n,r){var i=r||t.type;return Re(n)&&function(e){return oo(e,Qu)}(i)&&(n=n.replace(/%a/g,"%A").replace(/%b/g,"%B")),n||i!==Tu?n||i!==Lu?Lo(e,t,5,null,n,r,!0):e.utcFormat("%A, %d %B %Y, %X UTC"):e.timeFormat("%A, %d %B %Y, %X")}function Wo(e,t,n){n=n||{};var r=Math.max(3,n.maxlen||7),i=$o(e,t,n.format,n.formatType);if(co(t.type)){var a=To(t).slice(1).map(i),u=a.length;return"".concat(u," boundar").concat(1===u?"y":"ies",": ").concat(a.join(", "))}if(lo(t.type)){var o=t.domain(),s=o.length,l=s>r?o.slice(0,r-2).map(i).join(", ")+", ending with "+o.slice(-1).map(i):o.map(i).join(", ");return"".concat(s," value").concat(1===s?"":"s",": ").concat(l)}var c=t.domain();return"values from ".concat(i(c[0])," to ").concat(i($(c)))}var Go=0;var Ho="p_";function Vo(e){return e&&e.gradient}function Yo(e,t,n){var r=e.gradient,i=e.id,a="radial"===r?Ho:"";return i||(i=e.id="gradient_"+Go++,"radial"===r?(e.x1=Xo(e.x1,.5),e.y1=Xo(e.y1,.5),e.r1=Xo(e.r1,0),e.x2=Xo(e.x2,.5),e.y2=Xo(e.y2,.5),e.r2=Xo(e.r2,.5),a=Ho):(e.x1=Xo(e.x1,0),e.y1=Xo(e.y1,0),e.x2=Xo(e.x2,1),e.y2=Xo(e.y2,0))),t[i]=e,"url("+(n||"")+"#"+a+i+")"}function Xo(e,t){return null!=e?e:t}function Jo(e,t){var n,r=[];return n={gradient:"linear",x1:e?e[0]:0,y1:e?e[1]:0,x2:t?t[0]:1,y2:t?t[1]:0,stops:r,stop:function(e,t){return r.push({offset:e,color:t}),n}}}var Qo={basis:{curve:o.curveBasis},"basis-closed":{curve:o.curveBasisClosed},"basis-open":{curve:o.curveBasisOpen},bundle:{curve:o.curveBundle,tension:"beta",value:.85},cardinal:{curve:o.curveCardinal,tension:"tension",value:0},"cardinal-open":{curve:o.curveCardinalOpen,tension:"tension",value:0},"cardinal-closed":{curve:o.curveCardinalClosed,tension:"tension",value:0},"catmull-rom":{curve:o.curveCatmullRom,tension:"alpha",value:.5},"catmull-rom-closed":{curve:o.curveCatmullRomClosed,tension:"alpha",value:.5},"catmull-rom-open":{curve:o.curveCatmullRomOpen,tension:"alpha",value:.5},linear:{curve:o.curveLinear},"linear-closed":{curve:o.curveLinearClosed},monotone:{horizontal:o.curveMonotoneY,vertical:o.curveMonotoneX},natural:{curve:o.curveNatural},step:{curve:o.curveStep},"step-after":{curve:o.curveStepAfter},"step-before":{curve:o.curveStepBefore}};function Ko(e,t,n){var r=ke(Qo,e)&&Qo[e],i=null;return r&&(i=r.curve||r[t||"vertical"],r.tension&&null!=n&&(i=i[r.tension](n))),i}var Zo={m:2,l:2,h:1,v:1,z:0,c:6,s:4,q:4,t:2,a:7},es=/[mlhvzcsqta]([^mlhvzcsqta]+|$)/gi,ts=/^[+-]?(([0-9]*\.[0-9]+)|([0-9]+\.)|([0-9]+))([eE][+-]?[0-9]+)?/,ns=/^((\s+,?\s*)|(,\s*))/,rs=/^[01]/;function is(e){var t=[];return(e.match(es)||[]).forEach((function(e){var n=e[0],r=n.toLowerCase(),i=Zo[r],a=function(e,t,n){for(var r=[],i=0;t&&i<n.length;)for(var a=0;a<t;++a){var u="a"!==e||3!==a&&4!==a?ts:rs,o=n.slice(i).match(u);if(null===o)throw Error("Invalid SVG path, incorrect parameter type");i+=o[0].length,r.push(+o[0]);var s=n.slice(i).match(ns);null!==s&&(i+=s[0].length)}return r}(r,i,e.slice(1).trim()),u=a.length;if(u<i||u&&u%i!=0)throw Error("Invalid SVG path, incorrect parameter count");if(t.push([n].concat(lt(a.slice(0,i)))),u!==i){"m"===r&&(n="M"===n?"L":"l");for(var o=i;o<u;o+=i)t.push([n].concat(lt(a.slice(o,o+i))))}})),t}var as=Math.PI/180,us=Math.PI/2,os=2*Math.PI,ss=Math.sqrt(3)/2,ls={},cs={},fs=[].join;function ds(e){var t=fs.call(e);if(cs[t])return cs[t];var n=e[0],r=e[1],i=e[2],a=e[3],u=e[4],o=e[5],s=e[6],l=e[7],c=l*u,f=-s*o,d=s*u,h=l*o,p=Math.cos(i),m=Math.sin(i),v=Math.cos(a),g=Math.sin(a),y=.5*(a-i),b=Math.sin(.5*y),x=8/3*b*b/Math.sin(y),_=n+p-x*m,k=r+m+x*p,A=n+v,w=r+g,D=A+x*g,E=w-x*v;return cs[t]=[c*_+f*k,d*_+h*k,c*D+f*E,d*D+h*E,c*A+f*w,d*A+h*w]}var hs=["l",0,0,0,0,0,0,0];function ps(e,t,n){var r=hs[0]=e[0];if("a"===r||"A"===r)hs[1]=t*e[1],hs[2]=n*e[2],hs[3]=e[3],hs[4]=e[4],hs[5]=e[5],hs[6]=t*e[6],hs[7]=n*e[7];else if("h"===r||"H"===r)hs[1]=t*e[1];else if("v"===r||"V"===r)hs[1]=n*e[1];else for(var i=1,a=e.length;i<a;++i)hs[i]=(i%2==1?t:n)*e[i];return hs}function ms(e,t,n,r,i,a){var u,o,s,l,c,f=null,d=0,h=0,p=0,m=0,v=0,g=0;null==n&&(n=0),null==r&&(r=0),null==i&&(i=1),null==a&&(a=i),e.beginPath&&e.beginPath();for(var y=0,b=t.length;y<b;++y){switch(u=t[y],1===i&&1===a||(u=ps(u,i,a)),u[0]){case"l":d+=u[1],h+=u[2],e.lineTo(d+n,h+r);break;case"L":d=u[1],h=u[2],e.lineTo(d+n,h+r);break;case"h":d+=u[1],e.lineTo(d+n,h+r);break;case"H":d=u[1],e.lineTo(d+n,h+r);break;case"v":h+=u[1],e.lineTo(d+n,h+r);break;case"V":h=u[1],e.lineTo(d+n,h+r);break;case"m":v=d+=u[1],g=h+=u[2],e.moveTo(d+n,h+r);break;case"M":v=d=u[1],g=h=u[2],e.moveTo(d+n,h+r);break;case"c":o=d+u[5],s=h+u[6],p=d+u[3],m=h+u[4],e.bezierCurveTo(d+u[1]+n,h+u[2]+r,p+n,m+r,o+n,s+r),d=o,h=s;break;case"C":d=u[5],h=u[6],p=u[3],m=u[4],e.bezierCurveTo(u[1]+n,u[2]+r,p+n,m+r,d+n,h+r);break;case"s":o=d+u[3],s=h+u[4],p=2*d-p,m=2*h-m,e.bezierCurveTo(p+n,m+r,d+u[1]+n,h+u[2]+r,o+n,s+r),p=d+u[1],m=h+u[2],d=o,h=s;break;case"S":o=u[3],s=u[4],p=2*d-p,m=2*h-m,e.bezierCurveTo(p+n,m+r,u[1]+n,u[2]+r,o+n,s+r),d=o,h=s,p=u[1],m=u[2];break;case"q":o=d+u[3],s=h+u[4],p=d+u[1],m=h+u[2],e.quadraticCurveTo(p+n,m+r,o+n,s+r),d=o,h=s;break;case"Q":o=u[3],s=u[4],e.quadraticCurveTo(u[1]+n,u[2]+r,o+n,s+r),d=o,h=s,p=u[1],m=u[2];break;case"t":o=d+u[1],s=h+u[2],null===f[0].match(/[QqTt]/)?(p=d,m=h):"t"===f[0]?(p=2*d-l,m=2*h-c):"q"===f[0]&&(p=2*d-p,m=2*h-m),l=p,c=m,e.quadraticCurveTo(p+n,m+r,o+n,s+r),h=s,p=(d=o)+u[1],m=h+u[2];break;case"T":o=u[1],s=u[2],p=2*d-p,m=2*h-m,e.quadraticCurveTo(p+n,m+r,o+n,s+r),d=o,h=s;break;case"a":vs(e,d+n,h+r,[u[1],u[2],u[3],u[4],u[5],u[6]+d+n,u[7]+h+r]),d+=u[6],h+=u[7];break;case"A":vs(e,d+n,h+r,[u[1],u[2],u[3],u[4],u[5],u[6]+n,u[7]+r]),d=u[6],h=u[7];break;case"z":case"Z":d=v,h=g,e.closePath()}f=u}}function vs(e,t,n,r){for(var i=function(e,t,n,r,i,a,u,o,s){var l=fs.call(arguments);if(ls[l])return ls[l];var c=u*as,f=Math.sin(c),d=Math.cos(c),h=d*(o-e)*.5+f*(s-t)*.5,p=d*(s-t)*.5-f*(o-e)*.5,m=h*h/((n=Math.abs(n))*n)+p*p/((r=Math.abs(r))*r);m>1&&(n*=m=Math.sqrt(m),r*=m);var v=d/n,g=f/n,y=-f/r,b=d/r,x=v*o+g*s,_=y*o+b*s,k=v*e+g*t,A=y*e+b*t,w=1/((k-x)*(k-x)+(A-_)*(A-_))-.25;w<0&&(w=0);var D=Math.sqrt(w);a==i&&(D=-D);var E=.5*(x+k)-D*(A-_),C=.5*(_+A)+D*(k-x),F=Math.atan2(_-C,x-E),M=Math.atan2(A-C,k-E)-F;M<0&&1===a?M+=os:M>0&&0===a&&(M-=os);for(var S=Math.ceil(Math.abs(M/(us+.001))),B=[],O=0;O<S;++O){var R=F+O*M/S,z=F+(O+1)*M/S;B[O]=[E,C,R,z,n,r,f,d]}return ls[l]=B}(r[5],r[6],r[0],r[1],r[3],r[4],r[2],t,n),a=0;a<i.length;++a){var u=ds(i[a]);e.bezierCurveTo(u[0],u[1],u[2],u[3],u[4],u[5])}}var gs=.5773502691896257,ys={circle:{draw:function(e,t){var n=Math.sqrt(t)/2;e.moveTo(n,0),e.arc(0,0,n,0,os)}},cross:{draw:function(e,t){var n=Math.sqrt(t)/2,r=n/2.5;e.moveTo(-n,-r),e.lineTo(-n,r),e.lineTo(-r,r),e.lineTo(-r,n),e.lineTo(r,n),e.lineTo(r,r),e.lineTo(n,r),e.lineTo(n,-r),e.lineTo(r,-r),e.lineTo(r,-n),e.lineTo(-r,-n),e.lineTo(-r,-r),e.closePath()}},diamond:{draw:function(e,t){var n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(0,-n),e.lineTo(n,0),e.lineTo(0,n),e.closePath()}},square:{draw:function(e,t){var n=Math.sqrt(t),r=-n/2;e.rect(r,r,n,n)}},arrow:{draw:function(e,t){var n=Math.sqrt(t)/2,r=n/7,i=n/2.5,a=n/8;e.moveTo(-r,n),e.lineTo(r,n),e.lineTo(r,-a),e.lineTo(i,-a),e.lineTo(0,-n),e.lineTo(-i,-a),e.lineTo(-r,-a),e.closePath()}},wedge:{draw:function(e,t){var n=Math.sqrt(t)/2,r=ss*n,i=r-n*gs,a=n/4;e.moveTo(0,-r-i),e.lineTo(-a,r-i),e.lineTo(a,r-i),e.closePath()}},triangle:{draw:function(e,t){var n=Math.sqrt(t)/2,r=ss*n,i=r-n*gs;e.moveTo(0,-r-i),e.lineTo(-n,r-i),e.lineTo(n,r-i),e.closePath()}},"triangle-up":{draw:function(e,t){var n=Math.sqrt(t)/2,r=ss*n;e.moveTo(0,-r),e.lineTo(-n,r),e.lineTo(n,r),e.closePath()}},"triangle-down":{draw:function(e,t){var n=Math.sqrt(t)/2,r=ss*n;e.moveTo(0,r),e.lineTo(-n,-r),e.lineTo(n,-r),e.closePath()}},"triangle-right":{draw:function(e,t){var n=Math.sqrt(t)/2,r=ss*n;e.moveTo(r,0),e.lineTo(-r,-n),e.lineTo(-r,n),e.closePath()}},"triangle-left":{draw:function(e,t){var n=Math.sqrt(t)/2,r=ss*n;e.moveTo(-r,0),e.lineTo(r,-n),e.lineTo(r,n),e.closePath()}},stroke:{draw:function(e,t){var n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(n,0)}}};function bs(e){return ke(ys,e)?ys[e]:function(e){if(!ke(xs,e)){var t=is(e);xs[e]={draw:function(e,n){ms(e,t,0,0,Math.sqrt(n)/2)}}}return xs[e]}(e)}var xs={};var _s=.448084975506;function ks(e){return e.x}function As(e){return e.y}function ws(e){return e.width}function Ds(e){return e.height}function Es(e){return"function"==typeof e?e:function(){return+e}}function Cs(e,t,n){return Math.max(t,Math.min(e,n))}function Fs(){var e=ks,t=As,n=ws,r=Ds,i=Es(0),a=i,u=i,o=i,l=null;function c(c,f,d){var h,p=null!=f?f:+e.call(this,c),m=null!=d?d:+t.call(this,c),v=+n.call(this,c),g=+r.call(this,c),y=Math.min(v,g)/2,b=Cs(+i.call(this,c),0,y),x=Cs(+a.call(this,c),0,y),_=Cs(+u.call(this,c),0,y),k=Cs(+o.call(this,c),0,y);if(l||(l=h=s.path()),b<=0&&x<=0&&_<=0&&k<=0)l.rect(p,m,v,g);else{var A=p+v,w=m+g;l.moveTo(p+b,m),l.lineTo(A-x,m),l.bezierCurveTo(A-_s*x,m,A,m+_s*x,A,m+x),l.lineTo(A,w-k),l.bezierCurveTo(A,w-_s*k,A-_s*k,w,A-k,w),l.lineTo(p+_,w),l.bezierCurveTo(p+_s*_,w,p,w-_s*_,p,w-_),l.lineTo(p,m+b),l.bezierCurveTo(p,m+_s*b,p+_s*b,m,p+b,m),l.closePath()}if(h)return l=null,h+""||null}return c.x=function(t){return arguments.length?(e=Es(t),c):e},c.y=function(e){return arguments.length?(t=Es(e),c):t},c.width=function(e){return arguments.length?(n=Es(e),c):n},c.height=function(e){return arguments.length?(r=Es(e),c):r},c.cornerRadius=function(e,t,n,r){return arguments.length?(i=Es(e),a=null!=t?Es(t):i,o=null!=n?Es(n):i,u=null!=r?Es(r):a,c):i},c.context=function(e){return arguments.length?(l=null==e?null:e,c):l},c}function Ms(){var e,t,n,r,i,a,u,o,l=null;function c(e,t,n){var r=n/2;if(i){var s=u-t,c=e-a;if(s||c){var f=Math.sqrt(s*s+c*c),d=(s/=f)*o,h=(c/=f)*o,p=Math.atan2(c,s);l.moveTo(a-d,u-h),l.lineTo(e-s*r,t-c*r),l.arc(e,t,r,p-Math.PI,p),l.lineTo(a+d,u+h),l.arc(a,u,o,p,p+Math.PI)}else l.arc(e,t,r,0,os);l.closePath()}else i=1;a=e,u=t,o=r}function f(a){var u,o,f,d=a.length,h=!1;for(null==l&&(l=f=s.path()),u=0;u<=d;++u)!(u<d&&r(o=a[u],u,a))===h&&(h=!h)&&(i=0),h&&c(+e(o,u,a),+t(o,u,a),+n(o,u,a));if(f)return l=null,f+""||null}return f.x=function(t){return arguments.length?(e=t,f):e},f.y=function(e){return arguments.length?(t=e,f):t},f.size=function(e){return arguments.length?(n=e,f):n},f.defined=function(e){return arguments.length?(r=e,f):r},f.context=function(e){return arguments.length?(l=null==e?null:e,f):l},f}function Ss(e,t){return null!=e?e:t}var Bs=function(e){return e.x||0},Os=function(e){return e.y||0},Rs=function(e){return!(!1===e.defined)},zs=o.arc().startAngle((function(e){return e.startAngle||0})).endAngle((function(e){return e.endAngle||0})).padAngle((function(e){return e.padAngle||0})).innerRadius((function(e){return e.innerRadius||0})).outerRadius((function(e){return e.outerRadius||0})).cornerRadius((function(e){return e.cornerRadius||0})),qs=o.area().x(Bs).y1(Os).y0((function(e){return(e.y||0)+(e.height||0)})).defined(Rs),Ts=o.area().y(Os).x1(Bs).x0((function(e){return(e.x||0)+(e.width||0)})).defined(Rs),Ls=o.line().x(Bs).y(Os).defined(Rs),Ns=Fs().x(Bs).y(Os).width((function(e){return e.width||0})).height((function(e){return e.height||0})).cornerRadius((function(e){return Ss(e.cornerRadiusTopLeft,e.cornerRadius)||0}),(function(e){return Ss(e.cornerRadiusTopRight,e.cornerRadius)||0}),(function(e){return Ss(e.cornerRadiusBottomRight,e.cornerRadius)||0}),(function(e){return Ss(e.cornerRadiusBottomLeft,e.cornerRadius)||0})),Ps=o.symbol().type((function(e){return bs(e.shape||"circle")})).size((function(e){return Ss(e.size,64)})),js=Ms().x(Bs).y(Os).defined(Rs).size((function(e){return e.size||1}));function Us(e){return e.cornerRadius||e.cornerRadiusTopLeft||e.cornerRadiusTopRight||e.cornerRadiusBottomRight||e.cornerRadiusBottomLeft}function Is(e,t,n,r){return Ns.context(e)(t,n,r)}var $s=1;function Ws(){$s=1}function Gs(e,t,n){var r=t.clip,i=e._defs,a=t.clip_id||(t.clip_id="clip"+$s++),u=i.clipping[a]||(i.clipping[a]={id:a});return ce(r)?u.path=r(null):Us(n)?u.path=Is(null,n,0,0):(u.width=n.width||0,u.height=n.height||0),"url(#"+a+")"}function Hs(e){this.clear(),e&&this.union(e)}function Vs(e){this.mark=e,this.bounds=this.bounds||new Hs}function Ys(e){Vs.call(this,e),this.items=this.items||[]}function Xs(e){this._pending=0,this._loader=e||hr()}function Js(e){e._pending+=1}function Qs(e){e._pending-=1}function Ks(e,t,n){if(t.stroke&&0!==t.opacity&&0!==t.strokeOpacity){var r=null!=t.strokeWidth?+t.strokeWidth:1;e.expand(r+(n?function(e,t){return e.strokeJoin&&"miter"!==e.strokeJoin?0:t}(t,r):0))}return e}Hs.prototype={clone:function(){return new Hs(this)},clear:function(){return this.x1=+Number.MAX_VALUE,this.y1=+Number.MAX_VALUE,this.x2=-Number.MAX_VALUE,this.y2=-Number.MAX_VALUE,this},empty:function(){return this.x1===+Number.MAX_VALUE&&this.y1===+Number.MAX_VALUE&&this.x2===-Number.MAX_VALUE&&this.y2===-Number.MAX_VALUE},equals:function(e){return this.x1===e.x1&&this.y1===e.y1&&this.x2===e.x2&&this.y2===e.y2},set:function(e,t,n,r){return n<e?(this.x2=e,this.x1=n):(this.x1=e,this.x2=n),r<t?(this.y2=t,this.y1=r):(this.y1=t,this.y2=r),this},add:function(e,t){return e<this.x1&&(this.x1=e),t<this.y1&&(this.y1=t),e>this.x2&&(this.x2=e),t>this.y2&&(this.y2=t),this},expand:function(e){return this.x1-=e,this.y1-=e,this.x2+=e,this.y2+=e,this},round:function(){return this.x1=Math.floor(this.x1),this.y1=Math.floor(this.y1),this.x2=Math.ceil(this.x2),this.y2=Math.ceil(this.y2),this},scale:function(e){return this.x1*=e,this.y1*=e,this.x2*=e,this.y2*=e,this},translate:function(e,t){return this.x1+=e,this.x2+=e,this.y1+=t,this.y2+=t,this},rotate:function(e,t,n){var r=this.rotatedPoints(e,t,n);return this.clear().add(r[0],r[1]).add(r[2],r[3]).add(r[4],r[5]).add(r[6],r[7])},rotatedPoints:function(e,t,n){var r=this.x1,i=this.y1,a=this.x2,u=this.y2,o=Math.cos(e),s=Math.sin(e),l=t-t*o+n*s,c=n-t*s-n*o;return[o*r-s*i+l,s*r+o*i+c,o*r-s*u+l,s*r+o*u+c,o*a-s*i+l,s*a+o*i+c,o*a-s*u+l,s*a+o*u+c]},union:function(e){return e.x1<this.x1&&(this.x1=e.x1),e.y1<this.y1&&(this.y1=e.y1),e.x2>this.x2&&(this.x2=e.x2),e.y2>this.y2&&(this.y2=e.y2),this},intersect:function(e){return e.x1>this.x1&&(this.x1=e.x1),e.y1>this.y1&&(this.y1=e.y1),e.x2<this.x2&&(this.x2=e.x2),e.y2<this.y2&&(this.y2=e.y2),this},encloses:function(e){return e&&this.x1<=e.x1&&this.x2>=e.x2&&this.y1<=e.y1&&this.y2>=e.y2},alignsWith:function(e){return e&&(this.x1==e.x1||this.x2==e.x2||this.y1==e.y1||this.y2==e.y2)},intersects:function(e){return e&&!(this.x2<e.x1||this.x1>e.x2||this.y2<e.y1||this.y1>e.y2)},contains:function(e,t){return!(e<this.x1||e>this.x2||t<this.y1||t>this.y2)},width:function(){return this.x2-this.x1},height:function(){return this.y2-this.y1}},Ee(Ys,Vs),Xs.prototype={pending:function(){return this._pending},sanitizeURL:function(e){var t=this;return Js(t),t._loader.sanitize(e,{context:"href"}).then((function(e){return Qs(t),e})).catch((function(){return Qs(t),null}))},loadImage:function(e){var t=this,n=Mu();return Js(t),t._loader.sanitize(e,{context:"image"}).then((function(e){var r=e.href;if(!r||!n)throw{url:r};var i=new n,a=ke(e,"crossOrigin")?e.crossOrigin:"anonymous";return null!=a&&(i.crossOrigin=a),i.onload=function(){return Qs(t)},i.onerror=function(){return Qs(t)},i.src=r,i})).catch((function(e){return Qs(t),{complete:!1,width:0,height:0,src:e&&e.url||""}}))},ready:function(){var e=this;return new Promise((function(t){!function n(r){e.pending()?setTimeout((function(){n(!0)}),10):t(r)}(!1)}))}};var Zs,el,tl,nl,rl,il,al,ul,ol=os-1e-8,sl=function(e,t){return Zs.add(e,t)},ll=function(e,t){return sl(el=e,tl=t)},cl=function(e){return sl(e,Zs.y1)},fl=function(e){return sl(Zs.x1,e)},dl=function(e,t){return rl*e+al*t},hl=function(e,t){return il*e+ul*t},pl=function(e,t){return sl(dl(e,t),hl(e,t))},ml=function(e,t){return ll(dl(e,t),hl(e,t))};function vl(e,t){return Zs=e,t?(nl=t*as,rl=ul=Math.cos(nl),il=Math.sin(nl),al=-il):(rl=ul=1,nl=il=al=0),gl}var gl={beginPath:function(){},closePath:function(){},moveTo:ml,lineTo:ml,rect:function(e,t,n,r){nl?(pl(e+n,t),pl(e+n,t+r),pl(e,t+r),ml(e,t)):(sl(e+n,t+r),ll(e,t))},quadraticCurveTo:function(e,t,n,r){var i=dl(e,t),a=hl(e,t),u=dl(n,r),o=hl(n,r);yl(el,i,u,cl),yl(tl,a,o,fl),ll(u,o)},bezierCurveTo:function(e,t,n,r,i,a){var u=dl(e,t),o=hl(e,t),s=dl(n,r),l=hl(n,r),c=dl(i,a),f=hl(i,a);bl(el,u,s,c,cl),bl(tl,o,l,f,fl),ll(c,f)},arc:function(e,t,n,r,i,a){if(r+=nl,i+=nl,el=n*Math.cos(i)+e,tl=n*Math.sin(i)+t,Math.abs(i-r)>ol)sl(e-n,t-n),sl(e+n,t+n);else{var u,o,s=function(r){return sl(n*Math.cos(r)+e,n*Math.sin(r)+t)};if(s(r),s(i),i!==r)if((r%=os)<0&&(r+=os),(i%=os)<0&&(i+=os),i<r&&(a=!a,u=r,r=i,i=u),a)for(i-=os,u=r-r%us,o=0;o<4&&u>i;++o,u-=us)s(u);else for(u=r-r%us+us,o=0;o<4&&u<i;++o,u+=us)s(u)}}};function yl(e,t,n,r){var i=(e-t)/(e+n-2*t);0<i&&i<1&&r(e+(t-e)*i)}function bl(e,t,n,r,i){var a,u=r-e+3*t-3*n,o=e+n-2*t,s=e-t,l=0,c=0;Math.abs(u)>1e-14?(a=o*o+s*u)>=0&&(l=(-o+(a=Math.sqrt(a)))/u,c=(-o-a)/u):l=.5*s/o,0<l&&l<1&&i(xl(l,e,t,n,r)),0<c&&c<1&&i(xl(c,e,t,n,r))}function xl(e,t,n,r,i){var a=1-e,u=a*a,o=e*e;return u*a*t+3*u*e*n+3*a*o*r+o*e*i}var _l=(_l=Eu(1,1))?_l.getContext("2d"):null,kl=new Hs;function Al(e){return function(t,n){if(!_l)return!0;e(_l,t),kl.clear().union(t.bounds).intersect(n).round();for(var r=kl.x1,i=kl.y1,a=kl.x2,u=kl.y2,o=i;o<=u;++o)for(var s=r;s<=a;++s)if(_l.isPointInPath(s,o))return!0;return!1}}function wl(e,t){return t.contains(e.x||0,e.y||0)}function Dl(e,t){var n=e.x||0,r=e.y||0,i=e.width||0,a=e.height||0;return t.intersects(kl.set(n,r,n+i,r+a))}function El(e,t){var n=e.x||0,r=e.y||0;return Cl(t,n,r,null!=e.x2?e.x2:n,null!=e.y2?e.y2:r)}function Cl(e,t,n,r,i){var a,u,o,s,l=e.x1,c=e.y1,f=e.x2,d=e.y2,h=r-t,p=i-n,m=0,v=1;for(s=0;s<4;++s){if(0===s&&(a=-h,u=-(l-t)),1===s&&(a=h,u=f-t),2===s&&(a=-p,u=-(c-n)),3===s&&(a=p,u=d-n),Math.abs(a)<1e-10&&u<0)return!1;if(o=u/a,a<0){if(o>v)return!1;o>m&&(m=o)}else if(a>0){if(o<m)return!1;o<v&&(v=o)}}return!0}function Fl(e,t){e.globalCompositeOperation=t.blend||"source-over"}function Ml(e,t){return null==e?t:e}function Sl(e,t){for(var n=t.length,r=0;r<n;++r)e.addColorStop(t[r].offset,t[r].color);return e}function Bl(e,t,n){return Vo(n)?function(e,t,n){var r,i=n.width(),a=n.height();if("radial"===t.gradient)r=e.createRadialGradient(n.x1+Ml(t.x1,.5)*i,n.y1+Ml(t.y1,.5)*a,Math.max(i,a)*Ml(t.r1,0),n.x1+Ml(t.x2,.5)*i,n.y1+Ml(t.y2,.5)*a,Math.max(i,a)*Ml(t.r2,.5));else{var u=Ml(t.x1,0),o=Ml(t.y1,0),s=Ml(t.x2,1),l=Ml(t.y2,0);if(u!==s&&o!==l&&i!==a){var c=Eu(Math.ceil(i),Math.ceil(a)),f=c.getContext("2d");return f.scale(i,a),f.fillStyle=Sl(f.createLinearGradient(u,o,s,l),t.stops),f.fillRect(0,0,i,a),e.createPattern(c,"no-repeat")}r=e.createLinearGradient(n.x1+u*i,n.y1+o*a,n.x1+s*i,n.y1+l*a)}return Sl(r,t.stops)}(e,n,t.bounds):n}function Ol(e,t,n){return(n*=null==t.fillOpacity?1:t.fillOpacity)>0&&(e.globalAlpha=n,e.fillStyle=Bl(e,t,t.fill),!0)}var Rl=[];function zl(e,t,n){var r=null!=(r=t.strokeWidth)?r:1;return!(r<=0)&&((n*=null==t.strokeOpacity?1:t.strokeOpacity)>0&&(e.globalAlpha=n,e.strokeStyle=Bl(e,t,t.stroke),e.lineWidth=r,e.lineCap=t.strokeCap||"butt",e.lineJoin=t.strokeJoin||"miter",e.miterLimit=t.strokeMiterLimit||10,e.setLineDash&&(e.setLineDash(t.strokeDash||Rl),e.lineDashOffset=t.strokeDashOffset||0),!0))}function ql(e,t){return e.zindex-t.zindex||e.index-t.index}function Tl(e){if(!e.zdirty)return e.zitems;var t,n,r,i=e.items,a=[];for(n=0,r=i.length;n<r;++n)(t=i[n]).index=n,t.zindex&&a.push(t);return e.zdirty=!1,e.zitems=a.sort(ql)}function Ll(e,t){var n,r,i=e.items;if(i&&i.length){var a=Tl(e);if(a&&a.length){for(n=0,r=i.length;n<r;++n)i[n].zindex||t(i[n]);i=a}for(n=0,r=i.length;n<r;++n)t(i[n])}}function Nl(e,t){var n,r,i=e.items;if(!i||!i.length)return null;var a=Tl(e);for(a&&a.length&&(i=a),r=i.length;--r>=0;)if(n=t(i[r]))return n;if(i===a)for(r=(i=e.items).length;--r>=0;)if(!i[r].zindex&&(n=t(i[r])))return n;return null}function Pl(e){return function(t,n,r){Ll(n,(function(n){r&&!r.intersects(n.bounds)||Ul(e,t,n,n)}))}}function jl(e){return function(t,n,r){!n.items.length||r&&!r.intersects(n.bounds)||Ul(e,t,n.items[0],n.items)}}function Ul(e,t,n,r){var i=null==n.opacity?1:n.opacity;0!==i&&(e(t,r)||(Fl(t,n),n.fill&&Ol(t,n,i)&&t.fill(),n.stroke&&zl(t,n,i)&&t.stroke()))}function Il(e){return e=e||R,function(t,n,r,i,a,u){return r*=t.pixelRatio,i*=t.pixelRatio,Nl(n,(function(n){var o=n.bounds;if((!o||o.contains(a,u))&&o)return e(t,n,r,i,a,u)?n:void 0}))}}function $l(e,t){return function(n,r,i,a){var u,o,s=Array.isArray(r)?r[0]:r,l=null==t?s.fill:t,c=s.stroke&&n.isPointInStroke;return c&&(u=s.strokeWidth,o=s.strokeCap,n.lineWidth=null!=u?u:1,n.lineCap=null!=o?o:"butt"),!e(n,r)&&(l&&n.isPointInPath(i,a)||c&&n.isPointInStroke(i,a))}}function Wl(e){return Il($l(e))}function Gl(e,t){return"translate("+e+","+t+")"}function Hl(e){return"rotate("+e+")"}function Vl(e){return Gl(e.x||0,e.y||0)}function Yl(e,t,n){function r(e,n){var r=n.x||0,i=n.y||0,a=n.angle||0;e.translate(r,i),a&&e.rotate(a*=as),e.beginPath(),t(e,n),a&&e.rotate(-a),e.translate(-r,-i)}return{type:e,tag:"path",nested:!1,attr:function(e,n){e("transform",function(e){return Gl(e.x||0,e.y||0)+(e.angle?" "+Hl(e.angle):"")}(n)),e("d",t(null,n))},bound:function(e,n){return t(vl(e,n.angle),n),Ks(e,n).translate(n.x||0,n.y||0)},draw:Pl(r),pick:Wl(r),isect:n||Al(r)}}var Xl=Yl("arc",(function(e,t){return zs.context(e)(t)}));function Jl(e,t,n){function r(e,n){e.beginPath(),t(e,n)}var i=$l(r);return{type:e,tag:"path",nested:!0,attr:function(e,n){var r=n.mark.items;r.length&&e("d",t(null,r))},bound:function(e,n){var r=n.items;return 0===r.length?e:(t(vl(e),r),Ks(e,r[0]))},draw:jl(r),pick:function(e,t,n,r,a,u){var o=t.items,s=t.bounds;return!o||!o.length||s&&!s.contains(a,u)?null:(n*=e.pixelRatio,r*=e.pixelRatio,i(e,o,n,r)?o[0]:null)},isect:wl,tip:n}}var Ql=Jl("area",(function(e,t){var n=t[0],r=n.interpolate||"linear";return("horizontal"===n.orient?Ts:qs).curve(Ko(r,n.orient,n.tension)).context(e)(t)}),(function(e,t){for(var n,r,i="horizontal"===e[0].orient?t[1]:t[0],a="horizontal"===e[0].orient?"y":"x",u=e.length,o=1/0;--u>=0;)!1!==e[u].defined&&(r=Math.abs(e[u][a]-i))<o&&(o=r,n=e[u]);return n}));function Kl(e,t){e.beginPath(),Us(t)?Is(e,t,0,0):e.rect(0,0,t.width||0,t.height||0),e.clip()}function Zl(e){var t=Ml(e.strokeWidth,1);return null!=e.strokeOffset?e.strokeOffset:e.stroke&&t>.5&&t<1.5?.5-Math.abs(t-1):0}function ec(e,t){var n=Zl(t);e("d",Is(null,t,n,n))}function tc(e,t,n,r){var i=Zl(t);e.beginPath(),Is(e,t,(n||0)+i,(r||0)+i)}var nc=$l(tc),rc=$l(tc,!1),ic=$l(tc,!0);var ac={type:"group",tag:"g",nested:!1,attr:function(e,t){e("transform",Vl(t))},bound:function(e,t){if(!t.clip&&t.items)for(var n=t.items,r=n.length,i=0;i<r;++i)e.union(n[i].bounds);return(t.clip||t.width||t.height)&&!t.noBound&&e.add(0,0).add(t.width||0,t.height||0),Ks(e,t),e.translate(t.x||0,t.y||0)},draw:function(e,t,n){var r=this;Ll(t,(function(t){var i=t.x||0,a=t.y||0,u=t.strokeForeground,o=null==t.opacity?1:t.opacity;(t.stroke||t.fill)&&o&&(tc(e,t,i,a),Fl(e,t),t.fill&&Ol(e,t,o)&&e.fill(),t.stroke&&!u&&zl(e,t,o)&&e.stroke()),e.save(),e.translate(i,a),t.clip&&Kl(e,t),n&&n.translate(-i,-a),Ll(t,(function(t){r.draw(e,t,n)})),n&&n.translate(i,a),e.restore(),u&&t.stroke&&o&&(tc(e,t,i,a),Fl(e,t),zl(e,t,o)&&e.stroke())}))},pick:function(e,t,n,r,i,a){var u=this;if(t.bounds&&!t.bounds.contains(i,a)||!t.items)return null;var o=n*e.pixelRatio,s=r*e.pixelRatio;return Nl(t,(function(l){var c,f,d,h=l.bounds;if(!h||h.contains(i,a)){f=l.x||0,d=l.y||0;var p=f+(l.width||0),m=d+(l.height||0),v=l.clip;if(!v||!(i<f||i>p||a<d||a>m)){if(e.save(),e.translate(f,d),f=i-f,d=a-d,v&&Us(l)&&!ic(e,l,o,s))return e.restore(),null;var g=l.strokeForeground,y=!1!==t.interactive;return y&&g&&l.stroke&&rc(e,l,o,s)?(e.restore(),l):(!(c=Nl(l,(function(e){return function(e,t,n){return(!1!==e.interactive||"group"===e.marktype)&&e.bounds&&e.bounds.contains(t,n)}(e,f,d)?u.pick(e,n,r,f,d):null})))&&y&&(l.fill||!g&&l.stroke)&&nc(e,l,o,s)&&(c=l),e.restore(),c||null)}}}))},isect:Dl,content:function(e,t,n){e("clip-path",t.clip?Gs(n,t,t):null)},background:function(e,t){e("class","background"),e("aria-hidden",!0),ec(e,t)},foreground:function(e,t){e("class","foreground"),e("aria-hidden",!0),t.strokeForeground?ec(e,t):e("d","")}},uc={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",version:"1.1"};function oc(e,t){var n=e.image;return(!n||e.url&&e.url!==n.url)&&(n={complete:!1,width:0,height:0},t.loadImage(e.url).then((function(t){e.image=t,e.image.url=e.url}))),n}function sc(e,t){return null!=e.width?e.width:t&&t.width?!1!==e.aspect&&e.height?e.height*t.width/t.height:t.width:0}function lc(e,t){return null!=e.height?e.height:t&&t.height?!1!==e.aspect&&e.width?e.width*t.height/t.width:t.height:0}function cc(e,t){return"center"===e?t/2:"right"===e?t:0}function fc(e,t){return"middle"===e?t/2:"bottom"===e?t:0}var dc={type:"image",tag:"image",nested:!1,attr:function(e,t,n){var r=oc(t,n),i=sc(t,r),a=lc(t,r),u=(t.x||0)-cc(t.align,i),o=(t.y||0)-fc(t.baseline,a);e("href",!r.src&&r.toDataURL?r.toDataURL():r.src||"",uc["xmlns:xlink"],"xlink:href"),e("transform",Gl(u,o)),e("width",i),e("height",a),e("preserveAspectRatio",!1===t.aspect?"none":"xMidYMid")},bound:function(e,t){var n=t.image,r=sc(t,n),i=lc(t,n),a=(t.x||0)-cc(t.align,r),u=(t.y||0)-fc(t.baseline,i);return e.set(a,u,a+r,u+i)},draw:function(e,t,n){var r=this;Ll(t,(function(t){if(!n||n.intersects(t.bounds)){var i=oc(t,r),a=sc(t,i),u=lc(t,i);if(0!==a&&0!==u){var o,s,l,c,f=(t.x||0)-cc(t.align,a),d=(t.y||0)-fc(t.baseline,u);!1!==t.aspect&&(s=i.width/i.height,l=t.width/t.height,s==s&&l==l&&s!==l&&(l<s?(d+=(u-(c=a/s))/2,u=c):(f+=(a-(c=u*s))/2,a=c))),(i.complete||i.toDataURL)&&(Fl(e,t),e.globalAlpha=null!=(o=t.opacity)?o:1,e.imageSmoothingEnabled=!1!==t.smooth,e.drawImage(i,f,d,a,u))}}}))},pick:Il(),isect:R,get:oc,xOffset:cc,yOffset:fc},hc=Jl("line",(function(e,t){var n=t[0],r=n.interpolate||"linear";return Ls.curve(Ko(r,n.orient,n.tension)).context(e)(t)}),(function(e,t){for(var n,r,i=Math.pow(e[0].strokeWidth||1,2),a=e.length;--a>=0;)if(!1!==e[a].defined&&(n=e[a].x-t[0])*n+(r=e[a].y-t[1])*r<i)return e[a];return null}));function pc(e,t){var n=t.path;if(null==n)return!0;var r=t.x||0,i=t.y||0,a=t.scaleX||1,u=t.scaleY||1,o=(t.angle||0)*as,s=t.pathCache;s&&s.path===n||((t.pathCache=s=is(n)).path=n),o&&e.rotate&&e.translate?(e.translate(r,i),e.rotate(o),ms(e,s,0,0,a,u),e.rotate(-o),e.translate(-r,-i)):ms(e,s,r,i,a,u)}var mc={type:"path",tag:"path",nested:!1,attr:function(e,t){var n=t.scaleX||1,r=t.scaleY||1;1===n&&1===r||e("vector-effect","non-scaling-stroke"),e("transform",function(e){return Gl(e.x||0,e.y||0)+(e.angle?" "+Hl(e.angle):"")+(e.scaleX||e.scaleY?" "+function(e,t){return"scale("+e+","+t+")"}(e.scaleX||1,e.scaleY||1):"")}(t)),e("d",t.path)},bound:function(e,t){return pc(vl(e,t.angle),t)?e.set(0,0,0,0):Ks(e,t,!0)},draw:Pl(pc),pick:Wl(pc),isect:Al(pc)};function vc(e,t){e.beginPath(),Is(e,t)}var gc={type:"rect",tag:"path",nested:!1,attr:function(e,t){e("d",Is(null,t))},bound:function(e,t){var n,r;return Ks(e.set(n=t.x||0,r=t.y||0,n+t.width||0,r+t.height||0),t)},draw:Pl(vc),pick:Wl(vc),isect:Dl};function yc(e,t,n){var r,i,a,u;return!(!t.stroke||!zl(e,t,n))&&(r=t.x||0,i=t.y||0,a=null!=t.x2?t.x2:r,u=null!=t.y2?t.y2:i,e.beginPath(),e.moveTo(r,i),e.lineTo(a,u),!0)}var bc={type:"rule",tag:"line",nested:!1,attr:function(e,t){e("transform",Vl(t)),e("x2",null!=t.x2?t.x2-(t.x||0):0),e("y2",null!=t.y2?t.y2-(t.y||0):0)},bound:function(e,t){var n,r;return Ks(e.set(n=t.x||0,r=t.y||0,null!=t.x2?t.x2:n,null!=t.y2?t.y2:r),t)},draw:function(e,t,n){Ll(t,(function(t){if(!n||n.intersects(t.bounds)){var r=null==t.opacity?1:t.opacity;r&&yc(e,t,r)&&(Fl(e,t),e.stroke())}}))},pick:Il((function(e,t,n,r){return!!e.isPointInStroke&&(yc(e,t,1)&&e.isPointInStroke(n,r))})),isect:El},xc=Yl("shape",(function(e,t){return(t.mark.shape||t.shape).context(e)(t)})),_c=Yl("symbol",(function(e,t){return Ps.context(e)(t)}),wl),kc=Te(),Ac={height:Mc,measureWidth:Cc,estimateWidth:Dc,width:Dc,canvas:wc};function wc(e){Ac.width=e&&_l?Cc:Dc}function Dc(e,t){return Ec(Rc(e,t),Mc(e))}function Ec(e,t){return~~(.8*e.length*t)}function Cc(e,t){return Mc(e)<=0||!(t=Rc(e,t))?0:Fc(t,qc(e))}function Fc(e,t){var n="(".concat(t,") ").concat(e),r=kc.get(n);return void 0===r&&(_l.font=t,r=_l.measureText(e).width,kc.set(n,r)),r}function Mc(e){return null!=e.fontSize?+e.fontSize||0:11}function Sc(e){return null!=e.lineHeight?e.lineHeight:Mc(e)+2}function Bc(e){return t=e.lineBreak&&e.text&&!L(e.text)?e.text.split(e.lineBreak):e.text,L(t)?t.length>1?t:t[0]:t;var t}function Oc(e){var t=Bc(e);return(L(t)?t.length-1:0)*Sc(e)}function Rc(e,t){var n=null==t?"":(t+"").trim();return e.limit>0&&n.length?function(e,t){var n=+e.limit,r=function(e){if(Ac.width===Cc){var t=qc(e);return function(e){return Fc(e,t)}}var n=Mc(e);return function(e){return Ec(e,n)}}(e);if(r(t)<n)return t;var i,a=e.ellipsis||"…",u="rtl"===e.dir,o=0,s=t.length;if(n-=r(a),u){for(;o<s;)i=o+s>>>1,r(t.slice(i))>n?o=i+1:s=i;return a+t.slice(o)}for(;o<s;)i=1+(o+s>>>1),r(t.slice(0,i))<n?o=i:s=i-1;return t.slice(0,o)+a}(e,n):n}function zc(e,t){var n=e.font;return(t&&n?String(n).replace(/"/g,"'"):n)||"sans-serif"}function qc(e,t){return(e.fontStyle?e.fontStyle+" ":"")+(e.fontVariant?e.fontVariant+" ":"")+(e.fontWeight?e.fontWeight+" ":"")+Mc(e)+"px "+zc(e,t)}function Tc(e){var t=e.baseline,n=Mc(e);return Math.round("top"===t?.79*n:"middle"===t?.3*n:"bottom"===t?-.21*n:"line-top"===t?.29*n+.5*Sc(e):"line-bottom"===t?.29*n-.5*Sc(e):0)}wc(!0);var Lc={left:"start",center:"middle",right:"end"},Nc=new Hs;function Pc(e){var t,n=e.x||0,r=e.y||0,i=e.radius||0;return i&&(t=(e.theta||0)-us,n+=i*Math.cos(t),r+=i*Math.sin(t)),Nc.x1=n,Nc.y1=r,Nc}function jc(e,t,n){var r,i=Ac.height(t),a=t.align,u=Pc(t),o=u.x1,s=u.y1,l=t.dx||0,c=(t.dy||0)+Tc(t)-Math.round(.8*i),f=Bc(t);if(L(f)?(i+=Sc(t)*(f.length-1),r=f.reduce((function(e,n){return Math.max(e,Ac.width(t,n))}),0)):r=Ac.width(t,f),"center"===a?l-=r/2:"right"===a&&(l-=r),e.set(l+=o,c+=s,l+r,c+i),t.angle&&!n)e.rotate(t.angle*as,o,s);else if(2===n)return e.rotatedPoints(t.angle*as,o,s);return e}var Uc={type:"text",tag:"text",nested:!1,attr:function(e,t){var n,r=t.dx||0,i=(t.dy||0)+Tc(t),a=Pc(t),u=a.x1,o=a.y1,s=t.angle||0;e("text-anchor",Lc[t.align]||"start"),s?(n=Gl(u,o)+" "+Hl(s),(r||i)&&(n+=" "+Gl(r,i))):n=Gl(u+r,o+i),e("transform",n)},bound:jc,draw:function(e,t,n){Ll(t,(function(t){var r,i,a,u,o,s,l,c=null==t.opacity?1:t.opacity;if(!(n&&!n.intersects(t.bounds)||0===c||t.fontSize<=0||null==t.text||0===t.text.length)){if(e.font=qc(t),e.textAlign=t.align||"left",i=(r=Pc(t)).x1,a=r.y1,t.angle&&(e.save(),e.translate(i,a),e.rotate(t.angle*as),i=a=0),i+=t.dx||0,a+=(t.dy||0)+Tc(t),s=Bc(t),Fl(e,t),L(s))for(o=Sc(t),u=0;u<s.length;++u)l=Rc(t,s[u]),t.fill&&Ol(e,t,c)&&e.fillText(l,i,a),t.stroke&&zl(e,t,c)&&e.strokeText(l,i,a),a+=o;else l=Rc(t,s),t.fill&&Ol(e,t,c)&&e.fillText(l,i,a),t.stroke&&zl(e,t,c)&&e.strokeText(l,i,a);t.angle&&e.restore()}}))},pick:Il((function(e,t,n,r,i,a){if(t.fontSize<=0)return!1;if(!t.angle)return!0;var u=Pc(t),o=u.x1,s=u.y1,l=jc(Nc,t,1),c=-t.angle*as,f=Math.cos(c),d=Math.sin(c),h=f*i-d*a+(o-f*o+d*s),p=d*i+f*a+(s-d*o-f*s);return l.contains(h,p)})),isect:function(e,t){var n=jc(Nc,e,2);return Cl(t,n[0],n[1],n[2],n[3])||Cl(t,n[0],n[1],n[4],n[5])||Cl(t,n[4],n[5],n[6],n[7])||Cl(t,n[2],n[3],n[6],n[7])}},Ic=Jl("trail",(function(e,t){return js.context(e)(t)}),(function(e,t){for(var n,r,i=e.length;--i>=0;)if(!1!==e[i].defined&&(n=e[i].x-t[0])*n+(r=e[i].y-t[1])*r<(n=e[i].size||1)*n)return e[i];return null})),$c={arc:Xl,area:Ql,group:ac,image:dc,line:hc,path:mc,rect:gc,rule:bc,shape:xc,symbol:_c,text:Uc,trail:Ic};function Wc(e,t,n){var r=$c[e.mark.marktype],i=t||r.bound;return r.nested&&(e=e.mark),i(e.bounds||(e.bounds=new Hs),e,n)}var Gc={mark:null};function Hc(e,t,n){var r,i,a,u,o=$c[e.marktype],s=o.bound,l=e.items,c=l&&l.length;if(o.nested)return c?a=l[0]:(Gc.mark=e,a=Gc),u=Wc(a,s,n),t=t&&t.union(u)||u;if(t=t||e.bounds&&e.bounds.clear()||new Hs,c)for(r=0,i=l.length;r<i;++r)t.union(Wc(l[r],s,n));return e.bounds=t}var Vc=["marktype","name","role","interactive","clip","items","zindex","x","y","width","height","align","baseline","fill","fillOpacity","opacity","blend","stroke","strokeOpacity","strokeWidth","strokeCap","strokeDash","strokeDashOffset","strokeForeground","strokeOffset","startAngle","endAngle","innerRadius","outerRadius","cornerRadius","padAngle","cornerRadiusTopLeft","cornerRadiusTopRight","cornerRadiusBottomLeft","cornerRadiusBottomRight","interpolate","tension","orient","defined","url","aspect","smooth","path","scaleX","scaleY","x2","y2","size","shape","text","angle","theta","radius","dir","dx","dy","ellipsis","limit","lineBreak","lineHeight","font","fontSize","fontWeight","fontStyle","fontVariant","description","aria","ariaRole","ariaRoleDescription"];function Yc(e,t){return JSON.stringify(e,Vc,t)}function Xc(e){return Jc("string"==typeof e?JSON.parse(e):e)}function Jc(e){var t,n,r,i=e.marktype,a=e.items;if(a)for(n=0,r=a.length;n<r;++n)t=i?"mark":"group",a[n][t]=e,a[n].zindex&&(a[n][t].zdirty=!0),"group"===(i||t)&&Jc(a[n]);return i&&Hc(e),e}function Qc(e){arguments.length?this.root=Xc(e):(this.root=Kc({marktype:"group",name:"root",role:"frame"}),this.root.items=[new Ys(this.root)])}function Kc(e,t){var n={bounds:new Hs,clip:!!e.clip,group:t,interactive:!1!==e.interactive,items:[],marktype:e.marktype,name:e.name||void 0,role:e.role||void 0,zindex:e.zindex||0};return null!=e.aria&&(n.aria=e.aria),e.description&&(n.description=e.description),n}function Zc(e,t,n){return!e&&"undefined"!=typeof document&&document.createElement&&(e=document),e?n?e.createElementNS(n,t):e.createElement(t):null}function ef(e,t){t=t.toLowerCase();for(var n=e.childNodes,r=0,i=n.length;r<i;++r)if(n[r].tagName.toLowerCase()===t)return n[r]}function tf(e,t,n,r){var i,a=e.childNodes[t];return a&&a.tagName.toLowerCase()===n.toLowerCase()||(i=a||null,a=Zc(e.ownerDocument,n,r),e.insertBefore(a,i)),a}function nf(e,t){for(var n=e.childNodes,r=n.length;r>t;)e.removeChild(n[--r]);return e}function rf(e){return"mark-"+e.marktype+(e.role?" role-"+e.role:"")+(e.name?" "+e.name:"")}function af(e,t){var n=t.getBoundingClientRect();return[e.clientX-n.left-(t.clientLeft||0),e.clientY-n.top-(t.clientTop||0)]}function uf(e,t){this._active=null,this._handlers={},this._loader=e||hr(),this._tooltip=t||of}function of(e,t,n,r){e.element().setAttribute("title",r||"")}function sf(e){this._el=null,this._bgcolor=null,this._loader=new Xs(e)}Qc.prototype={toJSON:function(e){return Yc(this.root,e||0)},mark:function(e,t,n){var r=Kc(e,t=t||this.root.items[0]);return t.items[n]=r,r.zindex&&(r.group.zdirty=!0),r}},uf.prototype={initialize:function(e,t,n){return this._el=e,this._obj=n||null,this.origin(t)},element:function(){return this._el},canvas:function(){return this._el&&this._el.firstChild},origin:function(e){return arguments.length?(this._origin=e||[0,0],this):this._origin.slice()},scene:function(e){return arguments.length?(this._scene=e,this):this._scene},on:function(){},off:function(){},_handlerIndex:function(e,t,n){for(var r=e?e.length:0;--r>=0;)if(e[r].type===t&&(!n||e[r].handler===n))return r;return-1},handlers:function(e){var t=this._handlers,n=[];if(e)n.push.apply(n,lt(t[this.eventName(e)]));else for(var r in t)n.push.apply(n,lt(t[r]));return n},eventName:function(e){var t=e.indexOf(".");return t<0?e:e.slice(0,t)},handleHref:function(e,t,n){this._loader.sanitize(n,{context:"href"}).then((function(t){var n=new MouseEvent(e.type,e),r=Zc(null,"a");for(var i in t)r.setAttribute(i,t[i]);r.dispatchEvent(n)})).catch((function(){}))},handleTooltip:function(e,t,n){if(t&&null!=t.tooltip){t=function(e,t,n,r){var i,a,u=e&&e.mark;if(u&&(i=$c[u.marktype]).tip){for((a=af(t,n))[0]-=r[0],a[1]-=r[1];e=e.mark.group;)a[0]-=e.x||0,a[1]-=e.y||0;e=i.tip(u.items,a)}return e}(t,e,this.canvas(),this._origin);var r=n&&t&&t.tooltip||null;this._tooltip.call(this._obj,this,e,t,r)}},getItemBoundingClientRect:function(e){var t=this.canvas();if(t){for(var n=t.getBoundingClientRect(),r=this._origin,i=e.bounds,a=i.width(),u=i.height(),o=i.x1+r[0]+n.left,s=i.y1+r[1]+n.top;e.mark&&(e=e.mark.group);)o+=e.x||0,s+=e.y||0;return{x:o,y:s,width:a,height:u,left:o,top:s,right:o+a,bottom:s+u}}}},sf.prototype={initialize:function(e,t,n,r,i){return this._el=e,this.resize(t,n,r,i)},element:function(){return this._el},canvas:function(){return this._el&&this._el.firstChild},background:function(e){return 0===arguments.length?this._bgcolor:(this._bgcolor=e,this)},resize:function(e,t,n,r){return this._width=e,this._height=t,this._origin=n||[0,0],this._scale=r||1,this},dirty:function(){},render:function(e){var t=this;return t._call=function(){t._render(e)},t._call(),t._call=null,t},_render:function(){},renderAsync:function(e){var t=this.render(e);return this._ready?this._ready.then((function(){return t})):Promise.resolve(t)},_load:function(e,t){var n=this,r=n._loader[e](t);if(!n._ready){var i=n._call;n._ready=n._loader.ready().then((function(e){e&&i(),n._ready=null}))}return r},sanitizeURL:function(e){return this._load("sanitizeURL",e)},loadImage:function(e){return this._load("loadImage",e)}};var lf="dragenter",cf="dragleave",ff="dragover",df="mousedown",hf="mousemove",pf="mouseout",mf="mouseover",vf="click",gf="mousewheel",yf="touchstart",bf="touchmove",xf="touchend",_f=hf,kf=pf,Af=vf;function wf(e,t){uf.call(this,e,t),this._down=null,this._touch=null,this._first=!0,this._events={}}function Df(e,t){(function(e){return e===yf||e===bf||e===xf?[yf,bf,xf]:[e]})(t).forEach((function(t){return function(e,t){var n=e.canvas();n&&!e._events[t]&&(e._events[t]=1,n.addEventListener(t,e[t]?function(n){return e[t](n)}:function(n){return e.fire(t,n)}))}(e,t)}))}function Ef(e,t,n){return function(r){var i=this._active,a=this.pickEvent(r);a===i||(i&&i.exit||this.fire(n,r),this._active=a,this.fire(t,r)),this.fire(e,r)}}function Cf(e){return function(t){this.fire(e,t),this._active=null}}Ee(wf,uf,{initialize:function(e,t,n){var r=this;return this._canvas=e&&ef(e,"canvas"),[vf,df,hf,pf,cf].forEach((function(e){return Df(r,e)})),uf.prototype.initialize.call(this,e,t,n)},canvas:function(){return this._canvas},context:function(){return this._canvas.getContext("2d")},events:["keydown","keypress","keyup",lf,cf,ff,df,"mouseup",hf,pf,mf,vf,"dblclick","wheel",gf,yf,bf,xf],DOMMouseScroll:function(e){this.fire(gf,e)},mousemove:Ef(hf,mf,pf),dragover:Ef(ff,lf,cf),mouseout:Cf(pf),dragleave:Cf(cf),mousedown:function(e){this._down=this._active,this.fire(df,e)},click:function(e){this._down===this._active&&(this.fire(vf,e),this._down=null)},touchstart:function(e){this._touch=this.pickEvent(e.changedTouches[0]),this._first&&(this._active=this._touch,this._first=!1),this.fire(yf,e,!0)},touchmove:function(e){this.fire(bf,e,!0)},touchend:function(e){this.fire(xf,e,!0),this._touch=null},fire:function(e,t,n){var r=n?this._touch:this._active,i=this._handlers[e];if(t.vegaType=e,e===Af&&r&&r.href?this.handleHref(t,r,r.href):e!==_f&&e!==kf||this.handleTooltip(t,r,e!==kf),i)for(var a=0,u=i.length;a<u;++a)i[a].handler.call(this._obj,t,r)},on:function(e,t){var n=this.eventName(e),r=this._handlers;return this._handlerIndex(r[n],e,t)<0&&(Df(this,e),(r[n]||(r[n]=[])).push({type:e,handler:t})),this},off:function(e,t){var n=this.eventName(e),r=this._handlers[n],i=this._handlerIndex(r,e,t);return i>=0&&r.splice(i,1),this},pickEvent:function(e){var t=af(e,this._canvas),n=this._origin;return this.pick(this._scene,t[0],t[1],t[0]-n[0],t[1]-n[1])},pick:function(e,t,n,r,i){var a=this.context();return $c[e.marktype].pick.call(this,a,e,t,n,r,i)}});var Ff="undefined"!=typeof window&&window.devicePixelRatio||1;function Mf(e){sf.call(this,e),this._options={},this._redraw=!1,this._dirty=new Hs,this._tempb=new Hs}var Sf=sf.prototype;function Bf(e,t){uf.call(this,e,t);var n=this;n._hrefHandler=Of(n,(function(e,t){t&&t.href&&n.handleHref(e,t,t.href)})),n._tooltipHandler=Of(n,(function(e,t){n.handleTooltip(e,t,e.type!==kf)}))}Ee(Mf,sf,{initialize:function(e,t,n,r,i,a){return this._options=a||{},this._canvas=this._options.externalContext?null:Eu(1,1,this._options.type),e&&this._canvas&&(nf(e,0).appendChild(this._canvas),this._canvas.setAttribute("class","marks")),Sf.initialize.call(this,e,t,n,r,i)},resize:function(e,t,n,r){if(Sf.resize.call(this,e,t,n,r),this._canvas)!function(e,t,n,r,i,a){var u="undefined"!=typeof HTMLElement&&e instanceof HTMLElement&&null!=e.parentNode,o=e.getContext("2d"),s=u?Ff:i;for(var l in e.width=t*s,e.height=n*s,a)o[l]=a[l];u&&1!==s&&(e.style.width=t+"px",e.style.height=n+"px"),o.pixelRatio=s,o.setTransform(s,0,0,s,s*r[0],s*r[1])}(this._canvas,this._width,this._height,this._origin,this._scale,this._options.context);else{var i=this._options.externalContext;i||E("CanvasRenderer is missing a valid canvas or context"),i.scale(this._scale,this._scale),i.translate(this._origin[0],this._origin[1])}return this._redraw=!0,this},canvas:function(){return this._canvas},context:function(){return this._options.externalContext||(this._canvas?this._canvas.getContext("2d"):null)},dirty:function(e){for(var t=this._tempb.clear().union(e.bounds),n=e.mark.group;n;)t.translate(n.x||0,n.y||0),n=n.mark.group;this._dirty.union(t)},_render:function(e){var t=this.context(),n=this._origin,r=this._width,i=this._height,a=this._dirty,u=function(e,t,n){return(new Hs).set(0,0,t,n).translate(-e[0],-e[1])}(n,r,i);t.save();var o=this._redraw||a.empty()?(this._redraw=!1,u.expand(1)):function(e,t,n){return t.expand(1).round(),e.pixelRatio%1&&t.scale(e.pixelRatio).round().scale(1/e.pixelRatio),t.translate(-n[0]%1,-n[1]%1),e.beginPath(),e.rect(t.x1,t.y1,t.width(),t.height()),e.clip(),t}(t,u.intersect(a),n);return this.clear(-n[0],-n[1],r,i),this.draw(t,e,o),t.restore(),a.clear(),this},draw:function(e,t,n){var r=$c[t.marktype];t.clip&&function(e,t){var n=t.clip;e.save(),ce(n)?(e.beginPath(),n(e),e.clip()):Kl(e,t.group)}(e,t),r.draw.call(this,e,t,n),t.clip&&e.restore()},clear:function(e,t,n,r){var i=this._options,a=this.context();"pdf"===i.type||i.externalContext||a.clearRect(e,t,n,r),null!=this._bgcolor&&(a.fillStyle=this._bgcolor,a.fillRect(e,t,n,r))}});var Of=function(e,t){return function(n){var r=n.target.__data__;r=Array.isArray(r)?r[0]:r,n.vegaType=n.type,t.call(e._obj,n,r)}};Ee(Bf,uf,{initialize:function(e,t,n){var r=this._svg;return r&&(r.removeEventListener(Af,this._hrefHandler),r.removeEventListener(_f,this._tooltipHandler),r.removeEventListener(kf,this._tooltipHandler)),this._svg=r=e&&ef(e,"svg"),r&&(r.addEventListener(Af,this._hrefHandler),r.addEventListener(_f,this._tooltipHandler),r.addEventListener(kf,this._tooltipHandler)),uf.prototype.initialize.call(this,e,t,n)},canvas:function(){return this._svg},on:function(e,t){var n=this.eventName(e),r=this._handlers;if(this._handlerIndex(r[n],e,t)<0){var i={type:e,handler:t,listener:Of(this,t)};(r[n]||(r[n]=[])).push(i),this._svg&&this._svg.addEventListener(n,i.listener)}return this},off:function(e,t){var n=this.eventName(e),r=this._handlers[n],i=this._handlerIndex(r,e,t);return i>=0&&(this._svg&&this._svg.removeEventListener(n,r[i].listener),r.splice(i,1)),this}});var Rf="aria-hidden",zf="aria-label",qf="role",Tf="aria-roledescription",Lf="graphics-object",Nf="graphics-symbol",Pf=function(e,t,n){var r;return ot(r={},qf,e),ot(r,Tf,t),ot(r,zf,n||void 0),r},jf=Ze(["axis-domain","axis-grid","axis-label","axis-tick","axis-title","legend-band","legend-entry","legend-gradient","legend-label","legend-title","legend-symbol","title"]),Uf={axis:{desc:"axis",caption:function(e){var t=e.datum,n=e.orient,r=t.title?Hf(e):null,i=e.context,a=i.scales[t.scale].value,u=i.dataflow.locale(),o=a.type;return"".concat("left"===n||"right"===n?"Y":"X","-axis")+(r?" titled '".concat(r,"'"):"")+" for a ".concat(lo(o)?"discrete":o," scale")+" with ".concat(Wo(u,a,e))}},legend:{desc:"legend",caption:function(e){var t=e.datum,n=t.title?Hf(e):null,r="".concat(t.type||""," legend").trim(),i=t.scales,a=Object.keys(i),u=e.context,o=u.scales[i[a[0]]].value,s=u.dataflow.locale();return l=r,(l.length?l[0].toUpperCase()+l.slice(1):l)+(n?" titled '".concat(n,"'"):"")+" for ".concat(function(e){return(e=e.map((function(e){return e+("fill"===e||"stroke"===e?" color":"")}))).length<2?e[0]:e.slice(0,-1).join(", ")+" and "+$(e)}(a))+" with ".concat(Wo(s,o,e));var l}},"title-text":{desc:"title",caption:function(e){return"Title text '".concat(Gf(e),"'")}},"title-subtitle":{desc:"subtitle",caption:function(e){return"Subtitle text '".concat(Gf(e),"'")}}},If={ariaRole:qf,ariaRoleDescription:Tf,description:zf};function $f(e,t){var n=!1===t.aria;if(e(Rf,n||void 0),n||null==t.description)for(var r in If)e(If[r],void 0);else{var i=t.mark.marktype;e(zf,t.description),e(qf,t.ariaRole||("group"===i?Lf:Nf)),e(Tf,t.ariaRoleDescription||"".concat(i," mark"))}}function Wf(e){return!1===e.aria?ot({},Rf,!0):jf[e.role]?null:Uf[e.role]?function(e,t){try{var n=e.items[0],r=t.caption||function(){return""};return Pf(t.role||Nf,t.desc,n.description||r(n))}catch(e){return null}}(e,Uf[e.role]):function(e){var t=e.marktype,n="group"===t||"text"===t||e.items.some((function(e){return null!=e.description&&!1!==e.aria}));return Pf(n?Lf:Nf,"".concat(t," mark container"),e.description)}(e)}function Gf(e){return se(e.text).join(" ")}function Hf(e){try{return se($(e.items).items[0].text).join(" ")}catch(e){return null}}var Vf=function(e){return(e+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};function Yf(){var e="",t="",n="",r=[],i=function(){return t=n=""},a=function(a){t&&(e+="".concat(t,">").concat(n),i()),r.push(a)},u=function(e,n){return null!=n&&(t+=" ".concat(e,'="').concat(Vf(n).replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;"),'"')),o},o={open:function(e){a(e),t="<"+e;for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];for(var s=0,l=r;s<l.length;s++){var c=l[s];for(var f in c)u(f,c[f])}return o},close:function(){var a=r.pop();return e+=t?t+(n?">".concat(n,"</").concat(a,">"):"/>"):"</".concat(a,">"),i(),o},attr:u,text:function(e){return n+=Vf(e),o},toString:function(){return e}};return o}var Xf=function(e){return Jf(Yf(),e)+""};function Jf(e,t){if(e.open(t.tagName),t.hasAttributes())for(var n=t.attributes,r=n.length,i=0;i<r;++i)e.attr(n[i].name,n[i].value);if(t.hasChildNodes()){var a,u=dt(t.childNodes);try{for(u.s();!(a=u.n()).done;){var o=a.value;3===o.nodeType?e.text(o.nodeValue):Jf(e,o)}}catch(e){u.e(e)}finally{u.f()}}return e.close()}var Qf={fill:"fill",fillOpacity:"fill-opacity",stroke:"stroke",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",strokeCap:"stroke-linecap",strokeJoin:"stroke-linejoin",strokeDash:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeMiterLimit:"stroke-miterlimit",opacity:"opacity"},Kf={blend:"mix-blend-mode"},Zf={fill:"none","stroke-miterlimit":10},ed="http://www.w3.org/2000/xmlns/",td=uc.xmlns;function nd(e){sf.call(this,e),this._dirtyID=0,this._dirty=[],this._svg=null,this._root=null,this._defs=null}var rd=sf.prototype;function id(e,t){for(;e&&e.dirty!==t;e=e.mark.group){if(e.dirty=t,!e.mark||e.mark.dirty===t)return;e.mark.dirty=t}}function ad(e,t,n){var r,i,a;if("radial"===t.gradient){var u=tf(e,n++,"pattern",td);hd(u,{id:Ho+t.id,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),hd(u=tf(u,0,"rect",td),{width:1,height:1,fill:"url(".concat(md(),"#").concat(t.id,")")}),hd(e=tf(e,n++,"radialGradient",td),{id:t.id,fx:t.x1,fy:t.y1,fr:t.r1,cx:t.x2,cy:t.y2,r:t.r2})}else hd(e=tf(e,n++,"linearGradient",td),{id:t.id,x1:t.x1,x2:t.x2,y1:t.y1,y2:t.y2});for(r=0,i=t.stops.length;r<i;++r)(a=tf(e,r,"stop",td)).setAttribute("offset",t.stops[r].offset),a.setAttribute("stop-color",t.stops[r].color);return nf(e,r),n}function ud(e,t,n){return(e=tf(e,n,"clipPath",td)).setAttribute("id",t.id),t.path?tf(e,0,"path",td).setAttribute("d",t.path):hd(tf(e,0,"rect",td),{x:0,y:0,width:t.width,height:t.height}),nf(e,1),n+1}function od(e,t,n,r,i){var a,u=e._svg;if(!u&&(u=Zc(a=t.ownerDocument,r,td),e._svg=u,e.mark&&(u.__data__=e,u.__values__={fill:"default"},"g"===r))){var o=Zc(a,"path",td);u.appendChild(o),o.__data__=e;var s=Zc(a,"g",td);u.appendChild(s),s.__data__=e;var l=Zc(a,"path",td);u.appendChild(l),l.__data__=e,l.__values__={fill:"default"}}return(u.ownerSVGElement!==i||function(e,t){return e.parentNode&&e.parentNode.childNodes.length>1&&e.previousSibling!=t}(u,n))&&t.insertBefore(u,n?n.nextSibling:t.firstChild),u}Ee(nd,sf,{initialize:function(e,t,n,r,i){return this._defs={},this._clearDefs(),e&&(this._svg=tf(e,0,"svg",td),this._svg.setAttributeNS(ed,"xmlns",td),this._svg.setAttributeNS(ed,"xmlns:xlink",uc["xmlns:xlink"]),this._svg.setAttribute("version",uc.version),this._svg.setAttribute("class","marks"),nf(e,1),this._root=tf(this._svg,0,"g",td),hd(this._root,Zf),nf(this._svg,1)),this.background(this._bgcolor),rd.initialize.call(this,e,t,n,r,i)},background:function(e){return arguments.length&&this._svg&&this._svg.style.setProperty("background-color",e),rd.background.apply(this,arguments)},resize:function(e,t,n,r){return rd.resize.call(this,e,t,n,r),this._svg&&(hd(this._svg,{width:this._width*this._scale,height:this._height*this._scale,viewBox:"0 0 ".concat(this._width," ").concat(this._height)}),this._root.setAttribute("transform","translate(".concat(this._origin,")"))),this._dirty=[],this},canvas:function(){return this._svg},svg:function(){var e,t=this._svg,n=this._bgcolor;if(!t)return null;n&&(t.removeAttribute("style"),hd(e=tf(t,0,"rect",td),{width:this._width,height:this._height,fill:n}));var r=Xf(t);return n&&(t.removeChild(e),this._svg.style.setProperty("background-color",n)),r},_render:function(e){return this._dirtyCheck()&&(this._dirtyAll&&this._clearDefs(),this.mark(this._root,e),nf(this._root,1)),this.defs(),this._dirty=[],++this._dirtyID,this},dirty:function(e){e.dirty!==this._dirtyID&&(e.dirty=this._dirtyID,this._dirty.push(e))},isDirty:function(e){return this._dirtyAll||!e._svg||!e._svg.ownerSVGElement||e.dirty===this._dirtyID},_dirtyCheck:function(){this._dirtyAll=!0;var e=this._dirty;if(!e.length||!this._dirtyID)return!0;var t,n,r,i,a,u,o,s=++this._dirtyID;for(a=0,u=e.length;a<u;++a)(n=(t=e[a]).mark).marktype!==r&&(r=n.marktype,i=$c[r]),n.zdirty&&n.dirty!==s&&(this._dirtyAll=!1,id(t,s),n.items.forEach((function(e){e.dirty=s}))),n.zdirty||(t.exit?(i.nested&&n.items.length?(o=n.items[0])._svg&&this._update(i,o._svg,o):t._svg&&(o=t._svg.parentNode)&&o.removeChild(t._svg),t._svg=null):(t=i.nested?n.items[0]:t)._update!==s&&(t._svg&&t._svg.ownerSVGElement?this._update(i,t._svg,t):(this._dirtyAll=!1,id(t,s)),t._update=s));return!this._dirtyAll},mark:function(e,t,n){var r=this;if(!this.isDirty(t))return t._svg;var i=this._svg,a=$c[t.marktype],u=!1===t.interactive?"none":null,o="g"===a.tag,s=od(t,e,n,"g",i);s.setAttribute("class",rf(t));var l=Wf(t);for(var c in l)pd(s,c,l[c]);o||pd(s,"pointer-events",u),pd(s,"clip-path",t.clip?Gs(this,t,t.group):null);var f=null,d=0,h=function(e){var t=r.isDirty(e),n=od(e,s,f,a.tag,i);t&&(r._update(a,n,e),o&&function(e,t,n){t=t.lastChild.previousSibling;var r,i=0;Ll(n,(function(n){r=e.mark(t,n,r),++i})),nf(t,1+i)}(r,n,e)),f=n,++d};return a.nested?t.items.length&&h(t.items[0]):Ll(t,h),nf(s,d),s},_update:function(e,t,n){sd=t,ld=t.__values__,$f(fd,n),e.attr(fd,n,this);var r=cd[e.type];r&&r.call(this,e,t,n),sd&&this.style(sd,n)},style:function(e,t){if(null!=t){for(var n in Qf){var r="font"===n?zc(t):t[n];if(r!==ld[n]){var i=Qf[n];null==r?e.removeAttribute(i):(Vo(r)&&(r=Yo(r,this._defs.gradient,md())),e.setAttribute(i,r+"")),ld[n]=r}}for(var a in Kf)dd(e,Kf[a],t[a])}},defs:function(){var e=this._svg,t=this._defs,n=t.el,r=0;for(var i in t.gradient)n||(t.el=n=tf(e,1,"defs",td)),r=ad(n,t.gradient[i],r);for(var a in t.clipping)n||(t.el=n=tf(e,1,"defs",td)),r=ud(n,t.clipping[a],r);n&&(0===r?(e.removeChild(n),t.el=null):nf(n,r))},_clearDefs:function(){var e=this._defs;e.gradient={},e.clipping={}}});var sd=null,ld=null,cd={group:function(e,t,n){var r=sd=t.childNodes[2];ld=r.__values__,e.foreground(fd,n,this),ld=t.__values__,sd=t.childNodes[1],e.content(fd,n,this);var i=sd=t.childNodes[0];e.background(fd,n,this);var a=!1===n.mark.interactive?"none":null;if(a!==ld.events&&(pd(r,"pointer-events",a),pd(i,"pointer-events",a),ld.events=a),n.strokeForeground&&n.stroke){var u=n.fill;pd(r,"display",null),this.style(i,n),pd(i,"stroke",null),u&&(n.fill=null),ld=r.__values__,this.style(r,n),u&&(n.fill=u),sd=null}else pd(r,"display","none")},image:function(e,t,n){!1===n.smooth?(dd(t,"image-rendering","optimizeSpeed"),dd(t,"image-rendering","pixelated")):dd(t,"image-rendering",null)},text:function(e,t,n){var r,i,a,u,o=Bc(n);L(o)?(r=(i=o.map((function(e){return Rc(n,e)}))).join("\n"))!==ld.text&&(nf(t,0),a=t.ownerDocument,u=Sc(n),i.forEach((function(e,r){var i=Zc(a,"tspan",td);i.__data__=n,i.textContent=e,r&&(i.setAttribute("x",0),i.setAttribute("dy",u)),t.appendChild(i)})),ld.text=r):(i=Rc(n,o))!==ld.text&&(t.textContent=i,ld.text=i),pd(t,"font-family",zc(n)),pd(t,"font-size",Mc(n)+"px"),pd(t,"font-style",n.fontStyle),pd(t,"font-variant",n.fontVariant),pd(t,"font-weight",n.fontWeight)}};function fd(e,t,n){t!==ld[e]&&(n?function(e,t,n,r){null!=n?e.setAttributeNS(r,t,n):e.removeAttributeNS(r,t)}(sd,e,t,n):pd(sd,e,t),ld[e]=t)}function dd(e,t,n){n!==ld[t]&&(null==n?e.style.removeProperty(t):e.style.setProperty(t,n+""),ld[t]=n)}function hd(e,t){for(var n in t)pd(e,n,t[n])}function pd(e,t,n){null!=n?e.setAttribute(t,n):e.removeAttribute(t)}function md(){var e;return"undefined"==typeof window?"":(e=window.location).hash?e.href.slice(0,-e.hash.length):e.href}function vd(e){sf.call(this,e),this._text=null,this._defs={gradient:{},clipping:{}}}Ee(vd,sf,{svg:function(){return this._text},_render:function(e){var t=Yf();t.open("svg",ye({},uc,{class:"marks",width:this._width*this._scale,height:this._height*this._scale,viewBox:"0 0 ".concat(this._width," ").concat(this._height)}));var n=this._bgcolor;return n&&"transparent"!==n&&"none"!==n&&t.open("rect",{width:this._width,height:this._height,fill:n}).close(),t.open("g",Zf,{transform:"translate("+this._origin+")"}),this.mark(t,e),t.close(),this.defs(t),this._text=t.close()+"",this},mark:function(e,t){var n=this,r=$c[t.marktype],i=r.tag,a=[$f,r.attr];e.open("g",{class:rf(t),"clip-path":t.clip?Gs(this,t,t.group):null},Wf(t),{"pointer-events":"g"!==i&&!1===t.interactive?"none":null});var u=function(u){var o=n.href(u);if(o&&e.open("a",o),e.open(i,n.attr(t,u,a,"g"!==i?i:null)),"text"===i){var s=Bc(u);if(L(s))for(var l={x:0,dy:Sc(u)},c=0;c<s.length;++c)e.open("tspan",c?l:null).text(Rc(u,s[c])).close();else e.text(Rc(u,s))}else if("g"===i){var f=u.strokeForeground,d=u.fill,h=u.stroke;f&&h&&(u.stroke=null),e.open("path",n.attr(t,u,r.background,"bgrect")).close(),e.open("g",n.attr(t,u,r.content)),Ll(u,(function(t){return n.mark(e,t)})),e.close(),f&&h?(d&&(u.fill=null),u.stroke=h,e.open("path",n.attr(t,u,r.foreground,"bgrect")).close(),d&&(u.fill=d)):e.open("path",n.attr(t,u,r.foreground,"bgfore")).close()}e.close(),o&&e.close()};return r.nested?t.items&&t.items.length&&u(t.items[0]):Ll(t,u),e.close()},href:function(e){var t,n=this,r=e.href;if(r){if(t=this._hrefs&&this._hrefs[r])return t;this.sanitizeURL(r).then((function(e){e["xlink:href"]=e.href,e.href=null,(n._hrefs||(n._hrefs={}))[r]=e}))}return null},attr:function(e,t,n,r){var i=this,a={},u=function(e,t,n,r){a[r||e]=t};return Array.isArray(n)?n.forEach((function(e){return e(u,t,i)})):n(u,t,this),r&&function(e,t,n,r,i){var a;if(null==t)return e;"bgrect"===r&&!1===n.interactive&&(e["pointer-events"]="none");if("bgfore"===r&&(!1===n.interactive&&(e["pointer-events"]="none"),e.display="none",null!==t.fill))return e;"image"===r&&!1===t.smooth&&(a=["image-rendering: optimizeSpeed;","image-rendering: pixelated;"]);"text"===r&&(e["font-family"]=zc(t),e["font-size"]=Mc(t)+"px",e["font-style"]=t.fontStyle,e["font-variant"]=t.fontVariant,e["font-weight"]=t.fontWeight);for(var u in Qf){var o=t[u],s=Qf[u];("transparent"!==o||"fill"!==s&&"stroke"!==s)&&null!=o&&(Vo(o)&&(o=Yo(o,i.gradient,"")),e[s]=o)}for(var l in Kf){var c=t[l];null!=c&&(a=a||[]).push("".concat(Kf[l],": ").concat(c,";"))}a&&(e.style=a.join(" "))}(a,t,e,r,this._defs),a},defs:function(e){var t=this._defs.gradient,n=this._defs.clipping;if(0!==Object.keys(t).length+Object.keys(n).length){for(var r in e.open("defs"),t){var i=t[r],a=i.stops;"radial"===i.gradient?(e.open("pattern",{id:Ho+r,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),e.open("rect",{width:"1",height:"1",fill:"url(#"+r+")"}).close(),e.close(),e.open("radialGradient",{id:r,fx:i.x1,fy:i.y1,fr:i.r1,cx:i.x2,cy:i.y2,r:i.r2})):e.open("linearGradient",{id:r,x1:i.x1,x2:i.x2,y1:i.y1,y2:i.y2});for(var u=0;u<a.length;++u)e.open("stop",{offset:a[u].offset,"stop-color":a[u].color}).close();e.close()}for(var o in n){var s=n[o];e.open("clipPath",{id:o}),s.path?e.open("path",{d:s.path}).close():e.open("rect",{x:0,y:0,width:s.width,height:s.height}).close(),e.close()}e.close()}}});var gd="canvas",yd="none",bd={Canvas:gd,PNG:"png",SVG:"svg",None:yd},xd={};function _d(e,t){return e=String(e||"").toLowerCase(),arguments.length>1?(xd[e]=t,this):xd[e]}function kd(e,t,n){var r=[],i=(new Hs).union(t),a=e.marktype;return a?Ad(e,i,n,r):"group"===a?wd(e,i,n,r):E("Intersect scene must be mark node or group item.")}function Ad(e,t,n,r){if(function(e,t,n){return e.bounds&&t.intersects(e.bounds)&&("group"===e.marktype||!1!==e.interactive&&(!n||n(e)))}(e,t,n)){var i=e.items,a=e.marktype,u=i.length,o=0;if("group"===a)for(;o<u;++o)wd(i[o],t,n,r);else for(var s=$c[a].isect;o<u;++o){var l=i[o];Dd(l,t,s)&&r.push(l)}}return r}function wd(e,t,n,r){n&&n(e.mark)&&Dd(e,t,$c.group.isect)&&r.push(e);var i=e.items,a=i&&i.length;if(a){var u=e.x||0,o=e.y||0;t.translate(-u,-o);for(var s=0;s<a;++s)Ad(i[s],t,n,r);t.translate(u,o)}return r}function Dd(e,t,n){var r=e.bounds;return t.encloses(r)||t.intersects(r)&&n(e,t)}xd.canvas=xd.png={renderer:Mf,headless:Mf,handler:wf},xd.svg={renderer:nd,headless:vd,handler:Bf},xd.none={};var Ed=new Hs;function Cd(e){var t=e.clip;if(ce(t))t(vl(Ed.clear()));else{if(!t)return;Ed.set(0,0,e.group.width,e.group.height)}e.bounds.intersect(Ed)}function Fd(e,t,n){return e===t||("path"===n?Md(e,t):e instanceof Date&&t instanceof Date?+e==+t:Be(e)&&Be(t)?Math.abs(e-t)<=1e-9:e&&t&&(N(e)||N(t))?function(e,t){var n,r,i=Object.keys(e),a=Object.keys(t);if(i.length!==a.length)return!1;for(i.sort(),a.sort(),r=i.length-1;r>=0;r--)if(i[r]!=a[r])return!1;for(r=i.length-1;r>=0;r--)if(!Fd(e[n=i[r]],t[n],n))return!1;return it(e)===it(t)}(e,t):e==t)}function Md(e,t){return Fd(is(e),is(t))}var Sd="top",Bd="left",Od="right",Rd="bottom",zd="start",qd="middle",Td="end",Ld="group",Nd="axis",Pd="title",jd="frame",Ud="scope",Id="legend",$d="row-header",Wd="row-footer",Gd="row-title",Hd="column-header",Vd="column-footer",Yd="column-title",Xd="padding",Jd="fit",Qd="fit-x",Kd="fit-y",Zd="none",eh="all",th="each",nh="flush",rh="column",ih="row";function ah(e){ii.call(this,null,e)}function uh(e,t,n){return t(e.bounds.clear(),e,n)}Ee(ah,ii,{transform:function(e,t){var n,r=t.dataflow,i=e.mark,a=i.marktype,u=$c[a],o=u.bound,s=i.bounds;if(u.nested)i.items.length&&r.dirty(i.items[0]),s=uh(i,o),i.items.forEach((function(e){e.bounds.clear().union(s)}));else if(a===Ld||e.modified())switch(t.visit(t.MOD,(function(e){return r.dirty(e)})),s.clear(),i.items.forEach((function(e){return s.union(uh(e,o))})),i.role){case Nd:case Id:case Pd:t.reflow()}else n=t.changed(t.REM),t.visit(t.ADD,(function(e){s.union(uh(e,o))})),t.visit(t.MOD,(function(e){n=n||s.alignsWith(e.bounds),r.dirty(e),s.union(uh(e,o))})),n&&(s.clear(),i.items.forEach((function(e){return s.union(e.bounds)})));return Cd(i),t.modifies("bounds")}});var oh=":vega_identifier:";function sh(e){ii.call(this,0,e)}function lh(e){ii.call(this,null,e)}function ch(e){ii.call(this,null,e)}sh.Definition={type:"Identifier",metadata:{modifies:!0},params:[{name:"as",type:"string",required:!0}]},Ee(sh,ii,{transform:function(e,t){var n,r=(n=t.dataflow)._signals[oh]||(n._signals[oh]=n.add(0)),i=e.as,a=r.value;return t.visit(t.ADD,(function(e){return e[i]=e[i]||++a})),r.set(this.value=a),t}}),Ee(lh,ii,{transform:function(e,t){var n=this.value;n||((n=t.dataflow.scenegraph().mark(e.markdef,function(e){var t=e.groups,n=e.parent;return t&&1===t.size?t.get(Object.keys(t.object)[0]):t&&n?t.lookup(n):null}(e),e.index)).group.context=e.context,e.context.group||(e.context.group=n.group),n.source=this.source,n.clip=e.clip,n.interactive=e.interactive,this.value=n);var r=n.marktype===Ld?Ys:Vs;return t.visit(t.ADD,(function(e){return r.call(e,n)})),(e.modified("clip")||e.modified("interactive"))&&(n.clip=e.clip,n.interactive=!!e.interactive,n.zdirty=!0,t.reflow()),n.items=t.source,t}});var fh={parity:function(e){return e.filter((function(e,t){return t%2?e.opacity=0:1}))},greedy:function(e,t){var n;return e.filter((function(e,r){return r&&dh(n.bounds,e.bounds,t)?e.opacity=0:(n=e,1)}))}},dh=function(e,t,n){return n>Math.max(t.x1-e.x2,e.x1-t.x2,t.y1-e.y2,e.y1-t.y2)},hh=function(e,t){for(var n,r=1,i=e.length,a=e[0].bounds;r<i;a=n,++r)if(dh(a,n=e[r].bounds,t))return!0},ph=function(e){var t=e.bounds;return t.width()>1&&t.height()>1},mh=function(e){return e.forEach((function(e){return e.opacity=1})),e},vh=function(e,t){return e.reflow(t.modified()).modifies("opacity")};function gh(e){ii.call(this,null,e)}Ee(ch,ii,{transform:function(e,t){var n,r,i=fh[e.method]||fh.parity,a=e.separation||0,u=t.materialize(t.SOURCE).source;if(u&&u.length){if(!e.method)return e.modified("method")&&(mh(u),t=vh(t,e)),t;if((u=u.filter(ph)).length){if(e.sort&&(u=u.slice().sort(e.sort)),n=mh(u),t=vh(t,e),n.length>=3&&hh(n,a)){do{n=i(n,a)}while(n.length>=3&&hh(n,a));n.length<3&&!$(u).opacity&&(n.length>1&&($(n).opacity=0),$(u).opacity=1)}e.boundScale&&e.boundTolerance>=0&&(r=function(e,t,n){var r=e.range(),i=new Hs;return t===Sd||t===Rd?i.set(r[0],-1/0,r[1],1/0):i.set(-1/0,r[0],1/0,r[1]),i.expand(n||1),function(e){return i.encloses(e.bounds)}}(e.boundScale,e.boundOrient,+e.boundTolerance),u.forEach((function(e){r(e)||(e.opacity=0)})));var o=n[0].mark.bounds.clear();return u.forEach((function(e){e.opacity&&o.union(e.bounds)})),t}}}}),Ee(gh,ii,{transform:function(e,t){var n=t.dataflow;if(t.visit(t.ALL,(function(e){return n.dirty(e)})),t.fields&&t.fields.zindex){var r=t.source&&t.source[0];r&&(r.mark.zdirty=!0)}}});var yh=new Hs;function bh(e,t,n){return e[t]===n?0:(e[t]=n,1)}function xh(e){var t=e.items[0].orient;return t===Bd||t===Od}function _h(e,t,n,r){var i,a,u=t.items[0],o=u.datum,s=null!=u.translate?u.translate:.5,l=u.orient,c=function(e){var t=+e.grid;return[e.ticks?t++:-1,e.labels?t++:-1,t+ +e.domain]}(o),f=u.range,d=u.offset,h=u.position,p=u.minExtent,m=u.maxExtent,v=o.title&&u.items[c[2]].items[0],g=u.titlePadding,y=u.bounds,b=v&&Oc(v),x=0,_=0;switch(yh.clear().union(y),y.clear(),(i=c[0])>-1&&y.union(u.items[i].bounds),(i=c[1])>-1&&y.union(u.items[i].bounds),l){case Sd:x=h||0,_=-d,a=Math.max(p,Math.min(m,-y.y1)),y.add(0,-a).add(f,0),v&&kh(e,v,a,g,b,0,-1,y);break;case Bd:x=-d,_=h||0,a=Math.max(p,Math.min(m,-y.x1)),y.add(-a,0).add(0,f),v&&kh(e,v,a,g,b,1,-1,y);break;case Od:x=n+d,_=h||0,a=Math.max(p,Math.min(m,y.x2)),y.add(0,0).add(a,f),v&&kh(e,v,a,g,b,1,1,y);break;case Rd:x=h||0,_=r+d,a=Math.max(p,Math.min(m,y.y2)),y.add(0,0).add(f,a),v&&kh(e,v,a,g,0,0,1,y);break;default:x=u.x,_=u.y}return Ks(y.translate(x,_),u),bh(u,"x",x+s)|bh(u,"y",_+s)&&(u.bounds=yh,e.dirty(u),u.bounds=y,e.dirty(u)),u.mark.bounds.clear().union(y)}function kh(e,t,n,r,i,a,u,o){var s=t.bounds;if(t.auto){var l=u*(n+i+r),c=0,f=0;e.dirty(t),a?c=(t.x||0)-(t.x=l):f=(t.y||0)-(t.y=l),t.mark.bounds.clear().union(s.translate(-c,-f)),e.dirty(t)}o.union(s)}var Ah=function(e,t){return Math.floor(Math.min(e,t))},wh=function(e,t){return Math.ceil(Math.max(e,t))};function Dh(e){return(new Hs).set(0,0,e.width||0,e.height||0)}function Eh(e){var t=e.bounds.clone();return t.empty()?t.set(0,0,0,0):t.translate(-(e.x||0),-(e.y||0))}function Ch(e,t,n){var r=N(e)?e[t]:e;return null!=r?r:void 0!==n?n:0}function Fh(e){return e<0?Math.ceil(-e):0}function Mh(e,t,n){var r,i,a,u,o,s,l,c,f,d,h,p=!n.nodirty,m=n.bounds===nh?Dh:Eh,v=yh.set(0,0,0,0),g=Ch(n.align,rh),y=Ch(n.align,ih),b=Ch(n.padding,rh),x=Ch(n.padding,ih),_=n.columns||t.length,k=_<=0?1:Math.ceil(t.length/_),A=t.length,w=Array(A),D=Array(_),E=0,C=Array(A),F=Array(k),M=0,S=Array(A),B=Array(A),O=Array(A);for(i=0;i<_;++i)D[i]=0;for(i=0;i<k;++i)F[i]=0;for(i=0;i<A;++i)s=t[i],o=O[i]=m(s),s.x=s.x||0,S[i]=0,s.y=s.y||0,B[i]=0,a=i%_,u=~~(i/_),E=Math.max(E,l=Math.ceil(o.x2)),M=Math.max(M,c=Math.ceil(o.y2)),D[a]=Math.max(D[a],l),F[u]=Math.max(F[u],c),w[i]=b+Fh(o.x1),C[i]=x+Fh(o.y1),p&&e.dirty(t[i]);for(i=0;i<A;++i)i%_==0&&(w[i]=0),i<_&&(C[i]=0);if(g===th)for(a=1;a<_;++a){for(h=0,i=a;i<A;i+=_)h<w[i]&&(h=w[i]);for(i=a;i<A;i+=_)w[i]=h+D[a-1]}else if(g===eh){for(h=0,i=0;i<A;++i)i%_&&h<w[i]&&(h=w[i]);for(i=0;i<A;++i)i%_&&(w[i]=h+E)}else for(g=!1,a=1;a<_;++a)for(i=a;i<A;i+=_)w[i]+=D[a-1];if(y===th)for(u=1;u<k;++u){for(h=0,r=(i=u*_)+_;i<r;++i)h<C[i]&&(h=C[i]);for(i=u*_;i<r;++i)C[i]=h+F[u-1]}else if(y===eh){for(h=0,i=_;i<A;++i)h<C[i]&&(h=C[i]);for(i=_;i<A;++i)C[i]=h+M}else for(y=!1,u=1;u<k;++u)for(r=(i=u*_)+_;i<r;++i)C[i]+=F[u-1];for(f=0,i=0;i<A;++i)f=w[i]+(i%_?f:0),S[i]+=f-t[i].x;for(a=0;a<_;++a)for(d=0,i=a;i<A;i+=_)d+=C[i],B[i]+=d-t[i].y;if(g&&Ch(n.center,rh)&&k>1)for(i=0;i<A;++i)(f=(o=g===eh?E:D[i%_])-O[i].x2-t[i].x-S[i])>0&&(S[i]+=f/2);if(y&&Ch(n.center,ih)&&1!==_)for(i=0;i<A;++i)(d=(o=y===eh?M:F[~~(i/_)])-O[i].y2-t[i].y-B[i])>0&&(B[i]+=d/2);for(i=0;i<A;++i)v.union(O[i].translate(S[i],B[i]));switch(f=Ch(n.anchor,"x"),d=Ch(n.anchor,"y"),Ch(n.anchor,rh)){case Td:f-=v.width();break;case qd:f-=v.width()/2}switch(Ch(n.anchor,ih)){case Td:d-=v.height();break;case qd:d-=v.height()/2}for(f=Math.round(f),d=Math.round(d),v.clear(),i=0;i<A;++i)t[i].mark.bounds.clear();for(i=0;i<A;++i)(s=t[i]).x+=S[i]+=f,s.y+=B[i]+=d,v.union(s.mark.bounds.union(s.bounds.translate(S[i],B[i]))),p&&e.dirty(s);return v}function Sh(e,t,n){var r,i,a,u,o,s,l,c=function(e){for(var t,n,r,i,a,u,o,s=e.items,l=s.length,c=0,f={marks:[],rowheaders:[],rowfooters:[],colheaders:[],colfooters:[],rowtitle:null,coltitle:null};c<l;++c)if(o=(u=s[c]).items,u.marktype===Ld)switch(u.role){case Nd:case Id:case Pd:break;case $d:(t=f.rowheaders).push.apply(t,lt(o));break;case Wd:(n=f.rowfooters).push.apply(n,lt(o));break;case Hd:(r=f.colheaders).push.apply(r,lt(o));break;case Vd:(i=f.colfooters).push.apply(i,lt(o));break;case Gd:f.rowtitle=o[0];break;case Yd:f.coltitle=o[0];break;default:(a=f.marks).push.apply(a,lt(o))}return f}(t),f=c.marks,d=n.bounds===nh?Bh:Oh,h=n.offset,p=n.columns||f.length,m=p<=0?1:Math.ceil(f.length/p),v=m*p,g=Mh(e,f,n);g.empty()&&g.set(0,0,0,0),c.rowheaders&&(s=Ch(n.headerBand,ih,null),r=Rh(e,c.rowheaders,f,p,m,-Ch(h,"rowHeader"),Ah,0,d,"x1",0,p,1,s)),c.colheaders&&(s=Ch(n.headerBand,rh,null),i=Rh(e,c.colheaders,f,p,p,-Ch(h,"columnHeader"),Ah,1,d,"y1",0,1,p,s)),c.rowfooters&&(s=Ch(n.footerBand,ih,null),a=Rh(e,c.rowfooters,f,p,m,Ch(h,"rowFooter"),wh,0,d,"x2",p-1,p,1,s)),c.colfooters&&(s=Ch(n.footerBand,rh,null),u=Rh(e,c.colfooters,f,p,p,Ch(h,"columnFooter"),wh,1,d,"y2",v-p,1,p,s)),c.rowtitle&&(o=Ch(n.titleAnchor,ih),l=Ch(h,"rowTitle"),l=o===Td?a+l:r-l,s=Ch(n.titleBand,ih,.5),zh(e,c.rowtitle,l,0,g,s)),c.coltitle&&(o=Ch(n.titleAnchor,rh),l=Ch(h,"columnTitle"),l=o===Td?u+l:i-l,s=Ch(n.titleBand,rh,.5),zh(e,c.coltitle,l,1,g,s))}function Bh(e,t){return"x1"===t?e.x||0:"y1"===t?e.y||0:"x2"===t?(e.x||0)+(e.width||0):"y2"===t?(e.y||0)+(e.height||0):void 0}function Oh(e,t){return e.bounds[t]}function Rh(e,t,n,r,i,a,u,o,s,l,c,f,d,h){var p,m,v,g,y,b,x,_,k,A=n.length,w=0,D=0;if(!A)return w;for(p=c;p<A;p+=f)n[p]&&(w=u(w,s(n[p],l)));if(!t.length)return w;for(t.length>i&&(e.warn("Grid headers exceed limit: "+i),t=t.slice(0,i)),w+=a,m=0,g=t.length;m<g;++m)e.dirty(t[m]),t[m].mark.bounds.clear();for(p=c,m=0,g=t.length;m<g;++m,p+=f){for(y=(b=t[m]).mark.bounds,v=p;v>=0&&null==(x=n[v]);v-=d);o?(_=null==h?x.x:Math.round(x.bounds.x1+h*x.bounds.width()),k=w):(_=w,k=null==h?x.y:Math.round(x.bounds.y1+h*x.bounds.height())),y.union(b.bounds.translate(_-(b.x||0),k-(b.y||0))),b.x=_,b.y=k,e.dirty(b),D=u(D,y[l])}return D}function zh(e,t,n,r,i,a){if(t){e.dirty(t);var u=n,o=n;r?u=Math.round(i.x1+a*i.width()):o=Math.round(i.y1+a*i.height()),t.bounds.translate(u-(t.x||0),o-(t.y||0)),t.mark.bounds.clear().union(t.bounds),t.x=u,t.y=o,e.dirty(t)}}function qh(e,t,n,r,i,a,u){var o=function(e,t){var n=e[t]||{};return function(t,r){return null!=n[t]?n[t]:null!=e[t]?e[t]:r}}(n,t),s=function(e,t){var n=-1/0;return e.forEach((function(e){null!=e.offset&&(n=Math.max(n,e.offset))})),n>-1/0?n:t}(e,o("offset",0)),l=o("anchor",zd),c=l===Td?1:l===qd?.5:0,f={align:th,bounds:o("bounds",nh),columns:"vertical"===o("direction")?1:e.length,padding:o("margin",8),center:o("center"),nodirty:!0};switch(t){case Bd:f.anchor={x:Math.floor(r.x1)-s,column:Td,y:c*(u||r.height()+2*r.y1),row:l};break;case Od:f.anchor={x:Math.ceil(r.x2)+s,y:c*(u||r.height()+2*r.y1),row:l};break;case Sd:f.anchor={y:Math.floor(i.y1)-s,row:Td,x:c*(a||i.width()+2*i.x1),column:l};break;case Rd:f.anchor={y:Math.ceil(i.y2)+s,x:c*(a||i.width()+2*i.x1),column:l};break;case"top-left":f.anchor={x:s,y:s};break;case"top-right":f.anchor={x:a-s,y:s,column:Td};break;case"bottom-left":f.anchor={x:s,y:u-s,row:Td};break;case"bottom-right":f.anchor={x:a-s,y:u-s,column:Td,row:Td}}return f}function Th(e,t){var n,r,i,a,u=t.items[0],o=u.datum,s=u.orient,l=u.bounds,c=u.x,f=u.y;return u._bounds?u._bounds.clear().union(l):u._bounds=l.clone(),l.clear(),function(e,t,n){var r=t.padding,i=r-n.x,a=r-n.y;if(t.datum.title){var u=t.items[1].items[0],o=u.anchor,s=t.titlePadding||0,l=r-u.x,c=r-u.y;switch(u.orient){case Bd:i+=Math.ceil(u.bounds.width())+s;break;case Od:case Rd:break;default:a+=u.bounds.height()+s}switch((i||a)&&Nh(e,n,i,a),u.orient){case Bd:c+=Lh(t,n,u,o,1,1);break;case Od:l+=Lh(t,n,u,Td,0,0)+s,c+=Lh(t,n,u,o,1,1);break;case Rd:l+=Lh(t,n,u,o,0,0),c+=Lh(t,n,u,Td,-1,0,1)+s;break;default:l+=Lh(t,n,u,o,0,0)}(l||c)&&Nh(e,u,l,c),(l=Math.round(u.bounds.x1-r))<0&&(Nh(e,n,-l,0),Nh(e,u,-l,0))}else(i||a)&&Nh(e,n,i,a)}(e,u,u.items[0].items[0]),l=function(e,t){return e.items.forEach((function(e){return t.union(e.bounds)})),t.x1=e.padding,t.y1=e.padding,t}(u,l),n=2*u.padding,r=2*u.padding,l.empty()||(n=Math.ceil(l.width()+n),r=Math.ceil(l.height()+r)),"symbol"===o.type&&(i=u.items[0].items[0].items[0].items,a=i.reduce((function(e,t){return e[t.column]=Math.max(t.bounds.x2-t.x,e[t.column]||0),e}),{}),i.forEach((function(e){e.width=a[e.column],e.height=e.bounds.y2-e.y}))),s!==Zd&&(u.x=c=0,u.y=f=0),u.width=n,u.height=r,Ks(l.set(c,f,c+n,f+r),u),u.mark.bounds.clear().union(l),u}function Lh(e,t,n,r,i,a,u){var o="symbol"!==e.datum.type,s=n.datum.vgrad,l=(!o||!a&&s||u?t:t.items[0]).bounds[i?"y2":"x2"]-e.padding,c=s&&a?l:0,f=s&&a?0:l,d=i<=0?0:Oc(n);return Math.round(r===zd?c:r===Td?f-d:.5*(l-d))}function Nh(e,t,n,r){t.x+=n,t.y+=r,t.bounds.translate(n,r),t.mark.bounds.translate(n,r),e.dirty(t)}function Ph(e){ii.call(this,null,e)}Ee(Ph,ii,{transform:function(e,t){var n=t.dataflow;return e.mark.items.forEach((function(t){e.layout&&Sh(n,t,e.layout),function(e,t,n){var r,i,a,u,o,s=t.items,l=Math.max(0,t.width||0),c=Math.max(0,t.height||0),f=(new Hs).set(0,0,l,c),d=f.clone(),h=f.clone(),p=[];for(u=0,o=s.length;u<o;++u)switch((i=s[u]).role){case Nd:(xh(i)?d:h).union(_h(e,i,l,c));break;case Pd:r=i;break;case Id:p.push(Th(e,i));break;case jd:case Ud:case $d:case Wd:case Gd:case Hd:case Vd:case Yd:d.union(i.bounds),h.union(i.bounds);break;default:f.union(i.bounds)}if(p.length){var m={};for(var v in p.forEach((function(e){(a=e.orient||Od)!==Zd&&(m[a]||(m[a]=[])).push(e)})),m){var g=m[v];Mh(e,g,qh(g,v,n.legends,d,h,l,c))}p.forEach((function(t){var r=t.bounds;if(r.equals(t._bounds)||(t.bounds=t._bounds,e.dirty(t),t.bounds=r,e.dirty(t)),n.autosize&&n.autosize.type===Jd)switch(t.orient){case Bd:case Od:f.add(r.x1,0).add(r.x2,0);break;case Sd:case Rd:f.add(0,r.y1).add(0,r.y2)}else f.union(r)}))}f.union(d).union(h),r&&f.union(function(e,t,n,r,i){var a,u=t.items[0],o=u.frame,s=u.orient,l=u.anchor,c=u.offset,f=u.padding,d=u.items[0].items[0],h=u.items[1]&&u.items[1].items[0],p=s===Bd||s===Od?r:n,m=0,v=0,g=0,y=0,b=0;if(o!==Ld?s===Bd?(m=i.y2,p=i.y1):s===Od?(m=i.y1,p=i.y2):(m=i.x1,p=i.x2):s===Bd&&(m=r,p=0),a=l===zd?m:l===Td?p:(m+p)/2,h&&h.text){switch(s){case Sd:case Rd:b=d.bounds.height()+f;break;case Bd:y=d.bounds.width()+f;break;case Od:y=-d.bounds.width()-f}yh.clear().union(h.bounds),yh.translate(y-(h.x||0),b-(h.y||0)),bh(h,"x",y)|bh(h,"y",b)&&(e.dirty(h),h.bounds.clear().union(yh),h.mark.bounds.clear().union(yh),e.dirty(h)),yh.clear().union(h.bounds)}else yh.clear();switch(yh.union(d.bounds),s){case Sd:v=a,g=i.y1-yh.height()-c;break;case Bd:v=i.x1-yh.width()-c,g=a;break;case Od:v=i.x2+yh.width()+c,g=a;break;case Rd:v=a,g=i.y2+c;break;default:v=u.x,g=u.y}return bh(u,"x",v)|bh(u,"y",g)&&(yh.translate(v,g),e.dirty(u),u.bounds.clear().union(yh),t.bounds.clear().union(yh),e.dirty(u)),u.bounds}(e,r,l,c,f));t.clip&&f.set(0,0,t.width||0,t.height||0);!function(e,t,n,r){var i=r.autosize||{},a=i.type;if(e._autosize<1||!a)return;var u=e._width,o=e._height,s=Math.max(0,t.width||0),l=Math.max(0,Math.ceil(-n.x1)),c=Math.max(0,t.height||0),f=Math.max(0,Math.ceil(-n.y1)),d=Math.max(0,Math.ceil(n.x2-s)),h=Math.max(0,Math.ceil(n.y2-c));if(i.contains===Xd){var p=e.padding();u-=p.left+p.right,o-=p.top+p.bottom}a===Zd?(l=0,f=0,s=u,c=o):a===Jd?(s=Math.max(0,u-l-d),c=Math.max(0,o-f-h)):a===Qd?(s=Math.max(0,u-l-d),o=c+f+h):a===Kd?(u=s+l+d,c=Math.max(0,o-f-h)):"pad"===a&&(u=s+l+d,o=c+f+h);e._resizeView(u,o,s,c,[l,f],i.resize)}(e,t,f,n)}(n,t,e)})),function(e){return e&&"legend-entry"!==e.mark.role}(e.mark.group)?t.reflow():t}});var jh=Object.freeze({__proto__:null,bound:ah,identifier:sh,mark:lh,overlap:ch,render:gh,viewlayout:Ph});function Uh(e){ii.call(this,null,e)}function Ih(e){ii.call(this,null,e)}function $h(){return kr({})}function Wh(e){ii.call(this,null,e)}function Gh(e){ii.call(this,[],e)}Ee(Uh,ii,{transform:function(e,t){if(this.value&&!e.modified())return t.StopPropagation;var n=t.dataflow.locale(),r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=this.value,a=e.scale,u=Mo(a,null==e.count?e.values?e.values.length:10:e.count,e.minstep),o=e.format||Oo(n,a,u,e.formatSpecifier,e.formatType,!!e.values),s=e.values?So(a,e.values,u):Bo(a,u);return i&&(r.rem=i),i=s.map((function(e,t){return kr({index:t/(s.length-1||1),value:e,label:o(e)})})),e.extra&&i.length&&i.push(kr({index:-1,extra:{value:i[0].value},label:""})),r.source=i,r.add=i,this.value=i,r}}),Ee(Ih,ii,{transform:function(e,t){var n=t.dataflow,r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=e.item||$h,a=e.key||xr,u=this.value;return L(r.encode)&&(r.encode=null),u&&(e.modified("key")||t.modified(a))&&E("DataJoin does not support modified key function or fields."),u||(t=t.addAll(),this.value=u=function(e){var t=we().test((function(e){return e.exit}));return t.lookup=function(n){return t.get(e(n))},t}(a)),t.visit(t.ADD,(function(e){var t=a(e),n=u.get(t);n?n.exit?(u.empty--,r.add.push(n)):r.mod.push(n):(n=i(e),u.set(t,n),r.add.push(n)),n.datum=e,n.exit=!1})),t.visit(t.MOD,(function(e){var t=a(e),n=u.get(t);n&&(n.datum=e,r.mod.push(n))})),t.visit(t.REM,(function(e){var t=a(e),n=u.get(t);e!==n.datum||n.exit||(r.rem.push(n),n.exit=!0,++u.empty)})),t.changed(t.ADD_MOD)&&r.modifies("datum"),(t.clean()||e.clean&&u.empty>n.cleanThreshold)&&n.runAfter(u.clean),r}}),Ee(Wh,ii,{transform:function(e,t){var n=t.fork(t.ADD_REM),r=e.mod||!1,i=e.encoders,a=t.encode;if(L(a)){if(!n.changed()&&!a.every((function(e){return i[e]})))return t.StopPropagation;a=a[0],n.encode=null}var u="enter"===a,o=i.update||z,s=i.enter||z,l=i.exit||z,c=(a&&!u?i[a]:o)||z;if(t.changed(t.ADD)&&(t.visit(t.ADD,(function(t){s(t,e),o(t,e)})),n.modifies(s.output),n.modifies(o.output),c!==z&&c!==o&&(t.visit(t.ADD,(function(t){c(t,e)})),n.modifies(c.output))),t.changed(t.REM)&&l!==z&&(t.visit(t.REM,(function(t){l(t,e)})),n.modifies(l.output)),u||c!==z){var f=t.MOD|(e.modified()?t.REFLOW:0);u?(t.visit(f,(function(t){var i=s(t,e)||r;(c(t,e)||i)&&n.mod.push(t)})),n.mod.length&&n.modifies(s.output)):t.visit(f,(function(t){(c(t,e)||r)&&n.mod.push(t)})),n.mod.length&&n.modifies(c.output)}return n.changed()?n:t.StopPropagation}}),Ee(Gh,ii,{transform:function(e,t){if(null!=this.value&&!e.modified())return t.StopPropagation;var n,r,i,a,u,o=t.dataflow.locale(),s=t.fork(t.NO_SOURCE|t.NO_FIELDS),l=this.value,c=e.type||Do,f=e.scale,d=+e.limit,h=Mo(f,null==e.count?5:e.count,e.minstep),p=!!e.values||c===Do,m=e.format||Lo(o,f,h,c,e.formatSpecifier,e.formatType,p),v=e.values||To(f,h);return l&&(s.rem=l),c===Do?(d&&v.length>d?(t.dataflow.warn("Symbol legend count exceeds limit, filtering items."),l=v.slice(0,d-1),u=!0):l=v,ce(i=e.size)?(e.values||0!==f(l[0])||(l=l.slice(1)),a=l.reduce((function(t,n){return Math.max(t,i(n,e))}),0)):i=ve(a=i||8),l=l.map((function(t,n){return kr({index:n,label:m(t,n,l),value:t,offset:a,size:i(t,e)})})),u&&(u=v[l.length],l.push(kr({index:l.length,label:"…".concat(v.length-l.length," entries"),value:u,offset:a,size:i(u,e)})))):"gradient"===c?(n=f.domain(),r=bo(f,n[0],$(n)),v.length<3&&!e.values&&n[0]!==$(n)&&(v=[n[0],$(n)]),l=v.map((function(e,t){return kr({index:t,label:m(e,t,v),value:e,perc:r(e)})}))):(i=v.length-1,r=function(e){var t=e.domain(),n=t.length-1,r=+t[0],i=+$(t),a=i-r;if(e.type===Iu){var u=n?a/n:.1;a=(i+=u)-(r-=u)}return function(e){return(e-r)/a}}(f),l=v.map((function(e,t){return kr({index:t,label:m(e,t,v),value:e,perc:t?r(e):0,perc2:t===i?1:r(v[t+1])})}))),s.source=l,s.add=l,this.value=l,s}});var Hh=function(e){return e.source.x},Vh=function(e){return e.source.y},Yh=function(e){return e.target.x},Xh=function(e){return e.target.y};function Jh(e){ii.call(this,{},e)}Jh.Definition={type:"LinkPath",metadata:{modifies:!0},params:[{name:"sourceX",type:"field",default:"source.x"},{name:"sourceY",type:"field",default:"source.y"},{name:"targetX",type:"field",default:"target.x"},{name:"targetY",type:"field",default:"target.y"},{name:"orient",type:"enum",default:"vertical",values:["horizontal","vertical","radial"]},{name:"shape",type:"enum",default:"line",values:["line","arc","curve","diagonal","orthogonal"]},{name:"require",type:"signal"},{name:"as",type:"string",default:"path"}]},Ee(Jh,ii,{transform:function(e,t){var n=e.sourceX||Hh,r=e.sourceY||Vh,i=e.targetX||Yh,a=e.targetY||Xh,u=e.as||"path",o=e.orient||"vertical",s=e.shape||"line",l=ep.get(s+"-"+o)||ep.get(s);return l||E("LinkPath unsupported type: "+e.shape+(e.orient?"-"+e.orient:"")),t.visit(t.SOURCE,(function(e){e[u]=l(n(e),r(e),i(e),a(e))})),t.reflow(e.modified()).modifies(u)}});var Qh=function(e,t,n,r){return"M"+e+","+t+"L"+n+","+r},Kh=function(e,t,n,r){var i=n-e,a=r-t,u=Math.sqrt(i*i+a*a)/2;return"M"+e+","+t+"A"+u+","+u+" "+180*Math.atan2(a,i)/Math.PI+" 0 1 "+n+","+r},Zh=function(e,t,n,r){var i=n-e,a=r-t,u=.2*(i+a),o=.2*(a-i);return"M"+e+","+t+"C"+(e+u)+","+(t+o)+" "+(n+o)+","+(r-u)+" "+n+","+r},ep=we({line:Qh,"line-radial":function(e,t,n,r){return Qh(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n))},arc:Kh,"arc-radial":function(e,t,n,r){return Kh(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n))},curve:Zh,"curve-radial":function(e,t,n,r){return Zh(t*Math.cos(e),t*Math.sin(e),r*Math.cos(n),r*Math.sin(n))},"orthogonal-horizontal":function(e,t,n,r){return"M"+e+","+t+"V"+r+"H"+n},"orthogonal-vertical":function(e,t,n,r){return"M"+e+","+t+"H"+n+"V"+r},"orthogonal-radial":function(e,t,n,r){var i=Math.cos(e),a=Math.sin(e),u=Math.cos(n),o=Math.sin(n);return"M"+t*i+","+t*a+"A"+t+","+t+" 0 0,"+((Math.abs(n-e)>Math.PI?n<=e:n>e)?1:0)+" "+t*u+","+t*o+"L"+r*u+","+r*o},"diagonal-horizontal":function(e,t,n,r){var i=(e+n)/2;return"M"+e+","+t+"C"+i+","+t+" "+i+","+r+" "+n+","+r},"diagonal-vertical":function(e,t,n,r){var i=(t+r)/2;return"M"+e+","+t+"C"+e+","+i+" "+n+","+i+" "+n+","+r},"diagonal-radial":function(e,t,n,r){var i=Math.cos(e),a=Math.sin(e),u=Math.cos(n),o=Math.sin(n),s=(t+r)/2;return"M"+t*i+","+t*a+"C"+s*i+","+s*a+" "+s*u+","+s*o+" "+r*u+","+r*o}});function tp(e){ii.call(this,null,e)}tp.Definition={type:"Pie",metadata:{modifies:!0},params:[{name:"field",type:"field"},{name:"startAngle",type:"number",default:0},{name:"endAngle",type:"number",default:6.283185307179586},{name:"sort",type:"boolean",default:!1},{name:"as",type:"string",array:!0,length:2,default:["startAngle","endAngle"]}]},Ee(tp,ii,{transform:function(e,t){var n,i,a,u=e.as||["startAngle","endAngle"],o=u[0],s=u[1],l=e.field||O,c=e.startAngle||0,f=null!=e.endAngle?e.endAngle:2*Math.PI,d=t.source,h=d.map(l),p=h.length,m=c,v=(f-c)/r.sum(h),g=r.range(p);for(e.sort&&g.sort((function(e,t){return h[e]-h[t]})),n=0;n<p;++n)a=h[g[n]],(i=d[g[n]])[o]=m,i[s]=m+=a*v;return this.value=h,t.reflow(e.modified()).modifies(u)}});function np(e){return so(e)&&e!==Nu}var rp=Ze(["set","modified","clear","type","scheme","schemeExtent","schemeCount","domain","domainMin","domainMid","domainMax","domainRaw","domainImplicit","nice","zero","bins","range","rangeStep","round","reverse","interpolate","interpolateGamma"]);function ip(e){ii.call(this,null,e),this.modified(!0)}function ap(e,t,n){fo(e)&&(Math.abs(t.reduce((function(e,t){return e+(t<0?-1:t>0?1:0)}),0))!==t.length&&n.warn("Log scale domain includes zero: "+Ue(t)));return t}function up(e,t,n){return ce(e)&&(t||n)?vo(e,op(t||[0,1],n)):e}function op(e,t){return t?e.slice().reverse():e}function sp(e){ii.call(this,null,e)}Ee(ip,ii,{transform:function(e,t){var n=t.dataflow,i=this.value,a=function(e){var t,n=e.type,r="";if(n===Nu)return"sequential-linear";(function(e){var t=e.type;return so(t)&&t!==Tu&&t!==Lu&&(e.scheme||e.range&&e.range.length&&e.range.every(Re))})(e)&&(r=2===(t=e.rawDomain?e.rawDomain.length:e.domain?e.domain.length+ +(null!=e.domainMid):0)?"sequential-":3===t?"diverging-":"");return(r+n||Bu).toLowerCase()}(e);for(a in i&&a===i.type||(this.value=i=ao(a)()),e)if(!rp[a]){if("padding"===a&&np(i.type))continue;ce(i[a])?i[a](e[a]):n.warn("Unsupported scale property: "+a)}return function(e,t,n){var r=e.type,i=t.round||!1,a=t.range;if(null!=t.rangeStep)a=function(e,t,n){e!==Gu&&e!==Wu&&E("Only band and point scales support rangeStep.");var r=(null!=t.paddingOuter?t.paddingOuter:t.padding)||0,i=e===Wu?1:(null!=t.paddingInner?t.paddingInner:t.padding)||0;return[0,t.rangeStep*Su(n,i,r)]}(r,t,n);else if(t.scheme&&(a=function(e,t,n){var r,i=t.schemeExtent;L(t.scheme)?r=go(t.scheme,t.interpolate,t.interpolateGamma):(r=wo(t.scheme.toLowerCase()))||E("Unrecognized scheme name: ".concat(t.scheme));return n=e===Iu?n+1:e===Hu?n-1:e===ju||e===Uu?+t.schemeCount||5:n,ho(e)?up(r,i,t.reverse):ce(r)?yo(up(r,i),n):e===$u?r:r.slice(0,n)}(r,t,n),ce(a))){if(e.interpolator)return e.interpolator(a);E("Scale type ".concat(r," does not support interpolating color schemes."))}if(a&&ho(r))return e.interpolator(go(op(a,t.reverse),t.interpolate,t.interpolateGamma));a&&t.interpolate&&e.interpolate?e.interpolate(xo(t.interpolate,t.interpolateGamma)):ce(e.round)?e.round(i):ce(e.rangeRound)&&e.interpolate(i?c.interpolateRound:c.interpolate);a&&e.range(op(a,t.reverse))}(i,e,function(e,t,n){var i=t.bins;if(i&&!L(i)){var a=e.domain(),u=a[0],o=$(a),s=i.step,l=null==i.start?u:i.start,c=null==i.stop?o:i.stop;s||E("Scale bins parameter missing step property."),l<u&&(l=s*Math.ceil(u/s)),c>o&&(c=s*Math.floor(o/s)),i=r.range(l,c+s/2,s)}i?e.bins=i:e.bins&&delete e.bins;e.type===Hu&&(i?t.domain||t.domainRaw||(e.domain(i),n=i.length):e.bins=e.domain());return n}(i,e,function(e,t,n){var r=function(e,t,n){return t?(e.domain(ap(e.type,t,n)),t.length):-1}(e,t.domainRaw,n);if(r>-1)return r;var i,a,u=t.domain,o=e.type,s=t.zero||void 0===t.zero&&function(e){var t=e.type;return!e.bins&&(t===Bu||t===Ru||t===zu)}(e);if(!u)return 0;np(o)&&t.padding&&u[0]!==$(u)&&(u=function(e,t,n,r,i,a){var u=Math.abs($(n)-n[0]),o=u/(u-2*r),s=e===Ou?re(t,null,o):e===zu?ie(t,null,o,.5):e===Ru?ie(t,null,o,i||1):e===qu?ae(t,null,o,a||1):ne(t,null,o);return(t=t.slice())[0]=s[0],t[t.length-1]=s[1],t}(o,u,t.range,t.padding,t.exponent,t.constant));if((s||null!=t.domainMin||null!=t.domainMax||null!=t.domainMid)&&(i=(u=u.slice()).length-1||1,s&&(u[0]>0&&(u[0]=0),u[i]<0&&(u[i]=0)),null!=t.domainMin&&(u[0]=t.domainMin),null!=t.domainMax&&(u[i]=t.domainMax),null!=t.domainMid)){var c=(a=t.domainMid)>u[i]?i+1:a<u[0]?0:i;c!==i&&n.warn("Scale domainMid exceeds domain min or max.",a),u.splice(c,0,a)}e.domain(ap(o,u,n)),o===$u&&e.unknown(t.domainImplicit?l.scaleImplicit:void 0);t.nice&&e.nice&&e.nice(!0!==t.nice&&Mo(e,t.nice)||null);return u.length}(i,e,n))),t.fork(t.NO_SOURCE|t.NO_FIELDS)}}),Ee(sp,ii,{transform:function(e,t){var n=e.modified("sort")||t.changed(t.ADD)||t.modified(e.sort.fields)||t.modified("datum");return n&&t.source.sort(Er(e.sort)),this.modified(n),t}});var lp="zero",cp="center",fp="normalize",dp=["y0","y1"];function hp(e){ii.call(this,null,e)}function pp(e,t,n,r,i){for(var a,u=(t-e.sum)/2,o=e.length,s=0;s<o;++s)(a=e[s])[r]=u,a[i]=u+=Math.abs(n(a))}function mp(e,t,n,r,i){for(var a,u=1/e.sum,o=0,s=e.length,l=0,c=0;l<s;++l)(a=e[l])[r]=o,a[i]=o=u*(c+=Math.abs(n(a)))}function vp(e,t,n,r,i){for(var a,u,o=0,s=0,l=e.length,c=0;c<l;++c)(a=+n(u=e[c]))<0?(u[r]=s,u[i]=s+=a):(u[r]=o,u[i]=o+=a)}hp.Definition={type:"Stack",metadata:{modifies:!0},params:[{name:"field",type:"field"},{name:"groupby",type:"field",array:!0},{name:"sort",type:"compare"},{name:"offset",type:"enum",default:lp,values:[lp,cp,fp]},{name:"as",type:"string",array:!0,length:2,default:dp}]},Ee(hp,ii,{transform:function(e,t){var n,r,i,a,u=e.as||dp,o=u[0],s=u[1],l=Er(e.sort),c=e.field||O,f=e.offset===cp?pp:e.offset===fp?mp:vp;for(n=function(e,t,n,r){var i,a,u,o,s,l,c,f,d,h=[],p=function(e){return e(s)};if(null==t)h.push(e.slice());else for(i={},a=0,u=e.length;a<u;++a)s=e[a],(c=i[l=t.map(p)])||(i[l]=c=[],h.push(c)),c.push(s);for(l=0,d=0,o=h.length;l<o;++l){for(a=0,f=0,u=(c=h[l]).length;a<u;++a)f+=Math.abs(r(c[a]));c.sum=f,f>d&&(d=f),n&&c.sort(n)}return h.max=d,h}(t.source,e.groupby,l,c),r=0,i=n.length,a=n.max;r<i;++r)f(n[r],a,c,o,s);return t.reflow(e.modified()).modifies(u)}});var gp=Object.freeze({__proto__:null,axisticks:Uh,datajoin:Ih,encode:Wh,legendentries:Gh,linkpath:Jh,pie:tp,scale:ip,sortitems:sp,stack:hp}),yp=Math.abs,bp=Math.cos,xp=Math.sin,_p=Math.PI,kp=_p/2,Ap=function(e){return e>0?Math.sqrt(e):0}(2);function wp(e){return e>1?kp:e<-1?-kp:Math.asin(e)}function Dp(e,t){var n,r=e*xp(t),i=30;do{t-=n=(t+xp(t)-r)/(1+bp(t))}while(yp(n)>1e-6&&--i>0);return t/2}var Ep=function(e,t,n){function r(r,i){return[e*r*bp(i=Dp(n,i)),t*xp(i)]}return r.invert=function(r,i){return i=wp(i/t),[r/(e*bp(i)),wp((2*i+xp(2*i))/n)]},r}(Ap/kp,Ap,_p);var Cp=f.geoPath(),Fp=["clipAngle","clipExtent","scale","translate","center","rotate","parallels","precision","reflectX","reflectY","coefficient","distance","fraction","lobes","parallel","radius","ratio","spacing","tilt"];function Mp(e,t){return function n(){var r=t();return r.type=e,r.path=f.geoPath().projection(r),r.copy=r.copy||function(){var e=n();return Fp.forEach((function(t){r[t]&&e[t](r[t]())})),e.path.pointRadius(r.path.pointRadius()),e},r}}function Sp(e,t){if(!e||"string"!=typeof e)throw new Error("Projection type must be a name string.");return e=e.toLowerCase(),arguments.length>1?(Op[e]=Mp(e,t),this):Op[e]||null}function Bp(e){return e&&e.path||Cp}var Op={albers:f.geoAlbers,albersusa:f.geoAlbersUsa,azimuthalequalarea:f.geoAzimuthalEqualArea,azimuthalequidistant:f.geoAzimuthalEquidistant,conicconformal:f.geoConicConformal,conicequalarea:f.geoConicEqualArea,conicequidistant:f.geoConicEquidistant,equalEarth:f.geoEqualEarth,equirectangular:f.geoEquirectangular,gnomonic:f.geoGnomonic,identity:f.geoIdentity,mercator:f.geoMercator,mollweide:function(){return f.geoProjection(Ep).scale(169.529)},naturalEarth1:f.geoNaturalEarth1,orthographic:f.geoOrthographic,stereographic:f.geoStereographic,transversemercator:f.geoTransverseMercator};for(var Rp in Op)Sp(Rp,Op[Rp]);function zp(){}var qp=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Tp(){var e=1,t=1,n=u;function r(e,t){return t.map((function(t){return i(e,t)}))}function i(r,i){var u=[],o=[];return function(n,r,i){var u,o,s,l,c,f,d=new Array,h=new Array;u=o=-1,l=n[0]>=r,qp[l<<1].forEach(p);for(;++u<e-1;)s=l,l=n[u+1]>=r,qp[s|l<<1].forEach(p);qp[l<<0].forEach(p);for(;++o<t-1;){for(u=-1,l=n[o*e+e]>=r,c=n[o*e]>=r,qp[l<<1|c<<2].forEach(p);++u<e-1;)s=l,l=n[o*e+e+u+1]>=r,f=c,c=n[o*e+u+1]>=r,qp[s|l<<1|c<<2|f<<3].forEach(p);qp[l|c<<3].forEach(p)}u=-1,c=n[o*e]>=r,qp[c<<2].forEach(p);for(;++u<e-1;)f=c,c=n[o*e+u+1]>=r,qp[c<<2|f<<3].forEach(p);function p(e){var t,n,r=[e[0][0]+u,e[0][1]+o],s=[e[1][0]+u,e[1][1]+o],l=a(r),c=a(s);(t=h[l])?(n=d[c])?(delete h[t.end],delete d[n.start],t===n?(t.ring.push(s),i(t.ring)):d[t.start]=h[n.end]={start:t.start,end:n.end,ring:t.ring.concat(n.ring)}):(delete h[t.end],t.ring.push(s),h[t.end=c]=t):(t=d[c])?(n=h[l])?(delete d[t.start],delete h[n.end],t===n?(t.ring.push(s),i(t.ring)):d[n.start]=h[t.end]={start:n.start,end:t.end,ring:n.ring.concat(t.ring)}):(delete d[t.start],t.ring.unshift(r),d[t.start=l]=t):d[l]=h[c]={start:l,end:c,ring:[r,s]}}qp[c<<3].forEach(p)}(r,i,(function(e){n(e,r,i),function(e){var t=0,n=e.length,r=e[n-1][1]*e[0][0]-e[n-1][0]*e[0][1];for(;++t<n;)r+=e[t-1][1]*e[t][0]-e[t-1][0]*e[t][1];return r}(e)>0?u.push([e]):o.push(e)})),o.forEach((function(e){for(var t,n=0,r=u.length;n<r;++n)if(-1!==Lp((t=u[n])[0],e))return void t.push(e)})),{type:"MultiPolygon",value:i,coordinates:u}}function a(t){return 2*t[0]+t[1]*(e+1)*4}function u(n,r,i){n.forEach((function(n){var a,u=n[0],o=n[1],s=0|u,l=0|o,c=r[l*e+s];u>0&&u<e&&s===u&&(a=r[l*e+s-1],n[0]=u+(i-a)/(c-a)-.5),o>0&&o<t&&l===o&&(a=r[(l-1)*e+s],n[1]=o+(i-a)/(c-a)-.5)}))}return r.contour=i,r.size=function(n){if(!arguments.length)return[e,t];var i=Math.floor(n[0]),a=Math.floor(n[1]);return i>=0&&a>=0||E("invalid size"),e=i,t=a,r},r.smooth=function(e){return arguments.length?(n=e?u:zp,r):n===u},r}function Lp(e,t){for(var n,r=-1,i=t.length;++r<i;)if(n=Np(e,t[r]))return n;return 0}function Np(e,t){for(var n=t[0],r=t[1],i=-1,a=0,u=e.length,o=u-1;a<u;o=a++){var s=e[a],l=s[0],c=s[1],f=e[o],d=f[0],h=f[1];if(Pp(s,f,t))return 0;c>r!=h>r&&n<(d-l)*(r-c)/(h-c)+l&&(i=-i)}return i}function Pp(e,t,n){var r,i,a,u;return function(e,t,n){return(t[0]-e[0])*(n[1]-e[1])==(n[0]-e[0])*(t[1]-e[1])}(e,t,n)&&(i=e[r=+(e[0]===t[0])],a=n[r],u=t[r],i<=a&&a<=u||u<=a&&a<=i)}function jp(e,t,n){return function(i){var a=be(i),u=n?Math.min(a[0],0):a[0],o=a[1],s=o-u,l=t?r.tickStep(u,o,e):s/(e+1);return r.range(u+l,o,l)}}function Up(e){ii.call(this,null,e)}function Ip(e,t,n,r,i){var a=e.x1||0,u=e.y1||0,o=t*n<0;function s(e){e.forEach(l)}function l(e){o&&e.reverse(),e.forEach(c)}function c(e){e[0]=(e[0]-a)*t+r,e[1]=(e[1]-u)*n+i}return function(e){return e.coordinates.forEach(s),e}}function $p(e,t,n){var r=e>=0?e:di(t,n);return Math.round((Math.sqrt(4*r*r+1)-1)/2)}function Wp(e){return ce(e)?e:ve(+e)}function Gp(){var e=function(e){return e[0]},t=function(e){return e[1]},n=O,i=[-1,-1],a=960,u=500,o=2;function s(s,l){var c=$p(i[0],s,e)>>o,f=$p(i[1],s,t)>>o,d=c?c+2:0,h=f?f+2:0,p=2*d+(a>>o),m=2*h+(u>>o),v=new Float32Array(p*m),g=new Float32Array(p*m),y=v;s.forEach((function(r){var i=d+(+e(r)>>o),a=h+(+t(r)>>o);i>=0&&i<p&&a>=0&&a<m&&(v[i+a*p]+=+n(r))})),c>0&&f>0?(Hp(p,m,v,g,c),Vp(p,m,g,v,f),Hp(p,m,v,g,c),Vp(p,m,g,v,f),Hp(p,m,v,g,c),Vp(p,m,g,v,f)):c>0?(Hp(p,m,v,g,c),Hp(p,m,g,v,c),Hp(p,m,v,g,c),y=g):f>0&&(Vp(p,m,v,g,f),Vp(p,m,g,v,f),Vp(p,m,v,g,f),y=g);for(var b=l?Math.pow(2,-2*o):1/r.sum(y),x=0,_=p*m;x<_;++x)y[x]*=b;return{values:y,scale:1<<o,width:p,height:m,x1:d,y1:h,x2:d+(a>>o),y2:h+(u>>o)}}return s.x=function(t){return arguments.length?(e=Wp(t),s):e},s.y=function(e){return arguments.length?(t=Wp(e),s):t},s.weight=function(e){return arguments.length?(n=Wp(e),s):n},s.size=function(e){if(!arguments.length)return[a,u];var t=+e[0],n=+e[1];return t>=0&&n>=0||E("invalid size"),a=t,u=n,s},s.cellSize=function(e){return arguments.length?((e=+e)>=1||E("invalid cell size"),o=Math.floor(Math.log(e)/Math.LN2),s):1<<o},s.bandwidth=function(e){return arguments.length?(1===(e=se(e)).length&&(e=[+e[0],+e[0]]),2!==e.length&&E("invalid bandwidth"),i=e,s):i},s}function Hp(e,t,n,r,i){for(var a=1+(i<<1),u=0;u<t;++u)for(var o=0,s=0;o<e+i;++o)o<e&&(s+=n[o+u*e]),o>=i&&(o>=a&&(s-=n[o-a+u*e]),r[o-i+u*e]=s/Math.min(o+1,e-1+a-o,a))}function Vp(e,t,n,r,i){for(var a=1+(i<<1),u=0;u<e;++u)for(var o=0,s=0;o<t+i;++o)o<t&&(s+=n[u+o*e]),o>=i&&(o>=a&&(s-=n[u+(o-a)*e]),r[u+(o-i)*e]=s/Math.min(o+1,t-1+a-o,a))}function Yp(e){ii.call(this,null,e)}Up.Definition={type:"Isocontour",metadata:{generates:!0},params:[{name:"field",type:"field"},{name:"thresholds",type:"number",array:!0},{name:"levels",type:"number"},{name:"nice",type:"boolean",default:!1},{name:"resolve",type:"enum",values:["shared","independent"],default:"independent"},{name:"zero",type:"boolean",default:!0},{name:"smooth",type:"boolean",default:!0},{name:"scale",type:"number",expr:!0},{name:"translate",type:"number",array:!0,expr:!0},{name:"as",type:"string",null:!0,default:"contour"}]},Ee(Up,ii,{transform:function(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=t.materialize(t.SOURCE).source,a=e.field||S,u=Tp().smooth(!1!==e.smooth),o=e.thresholds||function(e,t,n){var i=jp(n.levels||10,n.nice,!1!==n.zero);return"shared"!==n.resolve?i:i(e.map((function(e){return r.max(t(e).values)})))}(i,a,e),s=null===e.as?null:e.as||"contour",l=[];return i.forEach((function(t){var n=a(t),r=u.size([n.width,n.height])(n.values,L(o)?o:o(n.values));!function(e,t,n,r){var i=r.scale||t.scale,a=r.translate||t.translate;ce(i)&&(i=i(n,r));ce(a)&&(a=a(n,r));if((1===i||null==i)&&!a)return;var u=(Be(i)?i:i[0])||1,o=(Be(i)?i:i[1])||1,s=a&&a[0]||0,l=a&&a[1]||0;e.forEach(Ip(t,u,o,s,l))}(r,n,t,e),r.forEach((function(e){l.push(wr(t,kr(null!=s?ot({},s,e):e)))}))})),this.value&&(n.rem=this.value),this.value=n.source=n.add=l,n}}),Yp.Definition={type:"KDE2D",metadata:{generates:!0},params:[{name:"size",type:"number",array:!0,length:2,required:!0},{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"weight",type:"field"},{name:"groupby",type:"field",array:!0},{name:"cellSize",type:"number"},{name:"bandwidth",type:"number",array:!0,length:2},{name:"counts",type:"boolean",default:!1},{name:"as",type:"string",default:"grid"}]};var Xp=["x","y","weight","size","cellSize","bandwidth"];function Jp(e,t){return Xp.forEach((function(n){return null!=t[n]?e[n](t[n]):0})),e}function Qp(e){ii.call(this,null,e)}Ee(Yp,ii,{transform:function(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n,r=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=function(e,t){var n,r,i,a,u,o,s=[],l=function(e){return e(a)};if(null==t)s.push(e);else for(n={},r=0,i=e.length;r<i;++r)a=e[r],(o=n[u=t.map(l)])||(n[u]=o=[],o.dims=u,s.push(o)),o.push(a);return s}(t.materialize(t.SOURCE).source,e.groupby),a=(e.groupby||[]).map(_),u=Jp(Gp(),e),o=e.as||"grid";return n=i.map((function(t){return kr(function(e,t){for(var n=0;n<a.length;++n)e[a[n]]=t[n];return e}(ot({},o,u(t,e.counts)),t.dims))})),this.value&&(r.rem=this.value),this.value=r.source=r.add=n,r}}),Qp.Definition={type:"Contour",metadata:{generates:!0},params:[{name:"size",type:"number",array:!0,length:2,required:!0},{name:"values",type:"number",array:!0},{name:"x",type:"field"},{name:"y",type:"field"},{name:"weight",type:"field"},{name:"cellSize",type:"number"},{name:"bandwidth",type:"number"},{name:"count",type:"number"},{name:"nice",type:"boolean",default:!1},{name:"thresholds",type:"number",array:!0},{name:"smooth",type:"boolean",default:!0}]},Ee(Qp,ii,{transform:function(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n,r,i=t.fork(t.NO_SOURCE|t.NO_FIELDS),a=Tp().smooth(!1!==e.smooth),u=e.values,o=e.thresholds||jp(e.count||10,e.nice,!!u),s=e.size;return u||(u=t.materialize(t.SOURCE).source,r=Ip(n=Jp(Gp(),e)(u,!0),n.scale||1,n.scale||1,0,0),s=[n.width,n.height],u=n.values),o=L(o)?o:o(u),u=a.size(s)(u,o),r&&u.forEach(r),this.value&&(i.rem=this.value),this.value=i.source=i.add=(u||[]).map(kr),i}});var Kp="Feature",Zp="FeatureCollection";function em(e){ii.call(this,null,e)}function tm(e){ii.call(this,null,e)}function nm(e){ii.call(this,null,e)}function rm(e){ii.call(this,null,e)}function im(e){ii.call(this,[],e),this.generator=f.geoGraticule()}function am(e){ii.call(this,null,e)}function um(e){if(!ce(e))return!1;var t=Ze(k(e));return t.$x||t.$y||t.$value||t.$max}function om(e){ii.call(this,null,e),this.modified(!0)}function sm(e,t,n){ce(e[t])&&e[t](n)}em.Definition={type:"GeoJSON",metadata:{},params:[{name:"fields",type:"field",array:!0,length:2},{name:"geojson",type:"field"}]},Ee(em,ii,{transform:function(e,t){var n,r=this._features,i=this._points,a=e.fields,u=a&&a[0],o=a&&a[1],s=e.geojson||!a&&S,l=t.ADD;n=e.modified()||t.changed(t.REM)||t.modified(k(s))||u&&t.modified(k(u))||o&&t.modified(k(o)),this.value&&!n||(l=t.SOURCE,this._features=r=[],this._points=i=[]),s&&t.visit(l,(function(e){return r.push(s(e))})),u&&o&&(t.visit(l,(function(e){var t=u(e),n=o(e);null!=t&&null!=n&&(t=+t)===t&&(n=+n)===n&&i.push([t,n])})),r=r.concat({type:Kp,geometry:{type:"MultiPoint",coordinates:i}})),this.value={type:Zp,features:r}}}),tm.Definition={type:"GeoPath",metadata:{modifies:!0},params:[{name:"projection",type:"projection"},{name:"field",type:"field"},{name:"pointRadius",type:"number",expr:!0},{name:"as",type:"string",default:"path"}]},Ee(tm,ii,{transform:function(e,t){var n=t.fork(t.ALL),r=this.value,i=e.field||S,a=e.as||"path",u=n.SOURCE;!r||e.modified()?(this.value=r=Bp(e.projection),n.materialize().reflow()):u=i===S||t.modified(i.fields)?n.ADD_MOD:n.ADD;var o=function(e,t){var n=e.pointRadius();e.context(null),null!=t&&e.pointRadius(t);return n}(r,e.pointRadius);return n.visit(u,(function(e){return e[a]=r(i(e))})),r.pointRadius(o),n.modifies(a)}}),nm.Definition={type:"GeoPoint",metadata:{modifies:!0},params:[{name:"projection",type:"projection",required:!0},{name:"fields",type:"field",array:!0,required:!0,length:2},{name:"as",type:"string",array:!0,length:2,default:["x","y"]}]},Ee(nm,ii,{transform:function(e,t){var n,r=e.projection,i=e.fields[0],a=e.fields[1],u=e.as||["x","y"],o=u[0],s=u[1];function l(e){var t=r([i(e),a(e)]);t?(e[o]=t[0],e[s]=t[1]):(e[o]=void 0,e[s]=void 0)}return e.modified()?t=t.materialize().reflow(!0).visit(t.SOURCE,l):(n=t.modified(i.fields)||t.modified(a.fields),t.visit(n?t.ADD_MOD:t.ADD,l)),t.modifies(u)}}),rm.Definition={type:"GeoShape",metadata:{modifies:!0,nomod:!0},params:[{name:"projection",type:"projection"},{name:"field",type:"field",default:"datum"},{name:"pointRadius",type:"number",expr:!0},{name:"as",type:"string",default:"shape"}]},Ee(rm,ii,{transform:function(e,t){var n=t.fork(t.ALL),r=this.value,i=e.as||"shape",a=n.ADD;return r&&!e.modified()||(this.value=r=function(e,t,n){var r=null==n?function(n){return e(t(n))}:function(r){var i=e.pointRadius(),a=e.pointRadius(n)(t(r));return e.pointRadius(i),a};return r.context=function(t){return e.context(t),r},r}(Bp(e.projection),e.field||F("datum"),e.pointRadius),n.materialize().reflow(),a=n.SOURCE),n.visit(a,(function(e){return e[i]=r})),n.modifies(i)}}),im.Definition={type:"Graticule",metadata:{changes:!0,generates:!0},params:[{name:"extent",type:"array",array:!0,length:2,content:{type:"number",array:!0,length:2}},{name:"extentMajor",type:"array",array:!0,length:2,content:{type:"number",array:!0,length:2}},{name:"extentMinor",type:"array",array:!0,length:2,content:{type:"number",array:!0,length:2}},{name:"step",type:"number",array:!0,length:2},{name:"stepMajor",type:"number",array:!0,length:2,default:[90,360]},{name:"stepMinor",type:"number",array:!0,length:2,default:[10,10]},{name:"precision",type:"number",default:2.5}]},Ee(im,ii,{transform:function(e,t){var n,r=this.value,i=this.generator;if(!r.length||e.modified())for(var a in e)ce(i[a])&&i[a](e[a]);return n=i(),r.length?t.mod.push(Dr(r[0],n)):t.add.push(kr(n)),r[0]=n,t}}),am.Definition={type:"heatmap",metadata:{modifies:!0},params:[{name:"field",type:"field"},{name:"color",type:"string",expr:!0},{name:"opacity",type:"number",expr:!0},{name:"resolve",type:"enum",values:["shared","independent"],default:"independent"},{name:"as",type:"string",default:"image"}]},Ee(am,ii,{transform:function(e,t){if(!t.changed()&&!e.modified())return t.StopPropagation;var n=t.materialize(t.SOURCE).source,i="shared"===e.resolve,a=e.field||S,u=function(e,t){var n;ce(e)?(n=function(n){return e(n,t)},n.dep=um(e)):e?n=ve(e):(n=function(e){return e.$value/e.$max||0},n.dep=!0);return n}(e.opacity,e),o=function(e,t){var n;ce(e)?(n=function(n){return d.rgb(e(n,t))},n.dep=um(e)):n=ve(d.rgb(e||"#888"));return n}(e.color,e),s=e.as||"image",l={$x:0,$y:0,$value:0,$max:i?r.max(n.map((function(e){return r.max(a(e).values)}))):0};return n.forEach((function(e){var t=a(e),n=ye({},e,l);i||(n.$max=r.max(t.values||[])),e[s]=function(e,t,n,r){for(var i=e.width,a=e.height,u=e.x1||0,o=e.y1||0,s=e.x2||i,l=e.y2||a,c=e.values,f=c?function(e){return c[e]}:B,d=Eu(s-u,l-o),h=d.getContext("2d"),p=h.getImageData(0,0,s-u,l-o),m=p.data,v=o,g=0;v<l;++v){t.$y=v-o;for(var y=u,b=v*i;y<s;++y,g+=4){t.$x=y-u,t.$value=f(y+b);var x=n(t);m[g+0]=x.r,m[g+1]=x.g,m[g+2]=x.b,m[g+3]=~~(255*r(t))}}return h.putImageData(p,0,0),d}(t,n,o.dep?o:ve(o(n)),u.dep?u:ve(u(n)))})),t.reflow(!0).modifies(s)}}),Ee(om,ii,{transform:function(e,t){var n=this.value;return!n||e.modified("type")?(this.value=n=function(e){var t=Sp((e||"mercator").toLowerCase());t||E("Unrecognized projection type: "+e);return t()}(e.type),Fp.forEach((function(t){null!=e[t]&&sm(n,t,e[t])}))):Fp.forEach((function(t){e.modified(t)&&sm(n,t,e[t])})),null!=e.pointRadius&&n.path.pointRadius(e.pointRadius),e.fit&&function(e,t){var n=function(e){return 1===(e=se(e)).length?e[0]:{type:Zp,features:e.reduce((function(e,t){return e.concat(function(e){return e.type===Zp?e.features:se(e).filter((function(e){return null!=e})).map((function(e){return e.type===Kp?e:{type:Kp,geometry:e}}))}(t))}),[])}}(t.fit);t.extent?e.fitExtent(t.extent,n):t.size&&e.fitSize(t.size,n)}(n,e),t.fork(t.NO_SOURCE|t.NO_FIELDS)}});var lm=Object.freeze({__proto__:null,contour:Qp,geojson:em,geopath:tm,geopoint:nm,geoshape:rm,graticule:im,heatmap:am,isocontour:Up,kde2d:Yp,projection:om}),cm={center:h.forceCenter,collide:h.forceCollide,nbody:h.forceManyBody,link:h.forceLink,x:h.forceX,y:h.forceY},fm="forces",dm=["alpha","alphaMin","alphaTarget","velocityDecay","forces"],hm=["static","iterations"],pm=["x","y","vx","vy"];function mm(e){ii.call(this,null,e)}function vm(e,t,n,r){var i,a,u,o,s=se(t.forces);for(i=0,a=dm.length;i<a;++i)(u=dm[i])!==fm&&t.modified(u)&&e[u](t[u]);for(i=0,a=s.length;i<a;++i)o=fm+i,(u=n||t.modified(fm,i)?ym(s[i]):r&&gm(s[i],r)?e.force(o):null)&&e.force(o,u);for(a=e.numForces||0;i<a;++i)e.force(fm+i,null);return e.numForces=s.length,e}function gm(e,t){var n,r;for(n in e)if(ce(r=e[n])&&t.modified(k(r)))return 1;return 0}function ym(e){var t,n;for(n in ke(cm,e.force)||E("Unrecognized force: "+e.force),t=cm[e.force](),e)ce(t[n])&&bm(t[n],e[n],e);return t}function bm(e,t,n){e(ce(t)?function(e){return t(e,n)}:t)}mm.Definition={type:"Force",metadata:{modifies:!0},params:[{name:"static",type:"boolean",default:!1},{name:"restart",type:"boolean",default:!1},{name:"iterations",type:"number",default:300},{name:"alpha",type:"number",default:1},{name:"alphaMin",type:"number",default:.001},{name:"alphaTarget",type:"number",default:0},{name:"velocityDecay",type:"number",default:.4},{name:"forces",type:"param",array:!0,params:[{key:{force:"center"},params:[{name:"x",type:"number",default:0},{name:"y",type:"number",default:0}]},{key:{force:"collide"},params:[{name:"radius",type:"number",expr:!0},{name:"strength",type:"number",default:.7},{name:"iterations",type:"number",default:1}]},{key:{force:"nbody"},params:[{name:"strength",type:"number",default:-30},{name:"theta",type:"number",default:.9},{name:"distanceMin",type:"number",default:1},{name:"distanceMax",type:"number"}]},{key:{force:"link"},params:[{name:"links",type:"data"},{name:"id",type:"field"},{name:"distance",type:"number",default:30,expr:!0},{name:"strength",type:"number",expr:!0},{name:"iterations",type:"number",default:1}]},{key:{force:"x"},params:[{name:"strength",type:"number",default:.1},{name:"x",type:"field"}]},{key:{force:"y"},params:[{name:"strength",type:"number",default:.1},{name:"y",type:"field"}]}]},{name:"as",type:"string",array:!0,modify:!1,default:pm}]},Ee(mm,ii,{transform:function(e,t){var n,r,i=this.value,a=t.changed(t.ADD_REM),u=e.modified(dm),o=e.iterations||300;if(i?(a&&(t.modifies("index"),i.nodes(t.source)),(u||t.changed(t.MOD))&&vm(i,e,0,t)):(this.value=i=function(e,t){var n=h.forceSimulation(e),r=n.stop,i=n.restart,a=!1;return n.stopped=function(){return a},n.restart=function(){return a=!1,i()},n.stop=function(){return a=!0,r()},vm(n,t,!0).on("end",(function(){return a=!0}))}(t.source,e),i.on("tick",(n=t.dataflow,r=this,function(){return n.touch(r).run()})),e.static||(a=!0,i.tick()),t.modifies("index")),u||a||e.modified(hm)||t.changed()&&e.restart)if(i.alpha(Math.max(i.alpha(),e.alpha||1)).alphaDecay(1-Math.pow(i.alphaMin(),1/o)),e.static)for(i.stop();--o>=0;)i.tick();else if(i.stopped()&&i.restart(),!a)return t.StopPropagation;return this.finish(e,t)},finish:function(e,t){for(var n,r=t.dataflow,i=this._argops,a=0,u=i.length;a<u;++a)if((n=i[a]).name===fm&&"link"===n.op._argval.force)for(var o,s=n.op._argops,l=0,c=s.length;l<c;++l)if("links"===s[l].name&&(o=s[l].op.source)){r.pulse(o,r.changeset().reflow());break}return t.reflow(e.modified()).modifies(pm)}});var xm=Object.freeze({__proto__:null,force:mm});function _m(e,t,n){var r={};return e.each((function(e){var i=e.data;n(i)&&(r[t(i)]=e)})),e.lookup=r,e}function km(e){ii.call(this,null,e)}km.Definition={type:"Nest",metadata:{treesource:!0,changes:!0},params:[{name:"keys",type:"field",array:!0},{name:"generate",type:"boolean"}]};var Am=function(e){return e.values};function wm(){var e=[],t={entries:function(e){return r(n(e,0),0)},key:function(n){return e.push(n),t}};function n(t,r){if(r>=e.length)return t;for(var i,a,u,o=t.length,s=e[r++],l={},c={},f=-1;++f<o;)(u=l[i=s(a=t[f])+""])?u.push(a):l[i]=[a];for(i in l)c[i]=n(l[i],r);return c}function r(t,n){if(++n>e.length)return t;var i=[];for(var a in t)i.push({key:a,values:r(t[a],n)});return i}return t}function Dm(e){ii.call(this,null,e)}Ee(km,ii,{transform:function(e,t){t.source||E("Nest transform requires an upstream data source.");var n=e.generate,r=e.modified(),i=t.clone(),a=this.value;return(!a||r||t.changed())&&(a&&a.each((function(e){e.children&&br(e.data)&&i.rem.push(e.data)})),this.value=a=p.hierarchy({values:se(e.keys).reduce((function(e,t){return e.key(t),e}),wm()).entries(i.source)},Am),n&&a.each((function(e){e.children&&(e=kr(e.data),i.add.push(e),i.source.push(e))})),_m(a,xr,xr)),i.source.root=a,i}});var Em=function(e,t){return e.parent===t.parent?1:2};Ee(Dm,ii,{transform:function(e,t){t.source&&t.source.root||E(this.constructor.name+" transform requires a backing tree data source.");var n=this.layout(e.method),r=this.fields,i=t.source.root,a=e.as||r;e.field?i.sum(e.field):i.count(),e.sort&&i.sort(Er(e.sort,(function(e){return e.data}))),function(e,t,n){for(var r,i=0,a=t.length;i<a;++i)(r=t[i])in n&&e[r](n[r])}(n,this.params,e),n.separation&&n.separation(!1!==e.separation?Em:O);try{this.value=n(i)}catch(e){E(e)}return i.each((function(e){return function(e,t,n){for(var r=e.data,i=t.length-1,a=0;a<i;++a)r[n[a]]=e[t[a]];r[n[i]]=e.children?e.children.length:0}(e,r,a)})),t.reflow(e.modified()).modifies(a).modifies("leaf")}});var Cm=["x","y","r","depth","children"];function Fm(e){Dm.call(this,e)}Fm.Definition={type:"Pack",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"padding",type:"number",default:0},{name:"radius",type:"field",default:null},{name:"size",type:"number",array:!0,length:2},{name:"as",type:"string",array:!0,length:Cm.length,default:Cm}]},Ee(Fm,Dm,{layout:p.pack,params:["radius","size","padding"],fields:Cm});var Mm=["x0","y0","x1","y1","depth","children"];function Sm(e){Dm.call(this,e)}function Bm(e){ii.call(this,null,e)}Sm.Definition={type:"Partition",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"padding",type:"number",default:0},{name:"round",type:"boolean",default:!1},{name:"size",type:"number",array:!0,length:2},{name:"as",type:"string",array:!0,length:Mm.length,default:Mm}]},Ee(Sm,Dm,{layout:p.partition,params:["size","round","padding"],fields:Mm}),Bm.Definition={type:"Stratify",metadata:{treesource:!0},params:[{name:"key",type:"field",required:!0},{name:"parentKey",type:"field",required:!0}]},Ee(Bm,ii,{transform:function(e,t){t.source||E("Stratify transform requires an upstream data source.");var n=this.value,r=e.modified(),i=t.fork(t.ALL).materialize(t.SOURCE),a=!n||r||t.changed(t.ADD_REM)||t.modified(e.key.fields)||t.modified(e.parentKey.fields);return i.source=i.source.slice(),a&&(n=i.source.length?_m(p.stratify().id(e.key).parentId(e.parentKey)(i.source),e.key,R):_m(p.stratify()([{}]),e.key,e.key)),i.source.root=this.value=n,i}});var Om={tidy:p.tree,cluster:p.cluster},Rm=["x","y","depth","children"];function zm(e){Dm.call(this,e)}function qm(e){ii.call(this,[],e)}zm.Definition={type:"Tree",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"method",type:"enum",default:"tidy",values:["tidy","cluster"]},{name:"size",type:"number",array:!0,length:2},{name:"nodeSize",type:"number",array:!0,length:2},{name:"separation",type:"boolean",default:!0},{name:"as",type:"string",array:!0,length:Rm.length,default:Rm}]},Ee(zm,Dm,{layout:function(e){var t=e||"tidy";if(ke(Om,t))return Om[t]();E("Unrecognized Tree layout method: "+t)},params:["size","nodeSize"],fields:Rm}),qm.Definition={type:"TreeLinks",metadata:{tree:!0,generates:!0,changes:!0},params:[]},Ee(qm,ii,{transform:function(e,t){var n=this.value,r=t.source&&t.source.root,i=t.fork(t.NO_SOURCE),a={};return r||E("TreeLinks transform requires a tree data source."),t.changed(t.ADD_REM)?(i.rem=n,t.visit(t.SOURCE,(function(e){return a[xr(e)]=1})),r.each((function(e){var t=e.data,n=e.parent&&e.parent.data;n&&a[xr(t)]&&a[xr(n)]&&i.add.push(kr({source:n,target:t}))})),this.value=i.add):t.changed(t.MOD)&&(t.visit(t.MOD,(function(e){return a[xr(e)]=1})),n.forEach((function(e){(a[xr(e.source)]||a[xr(e.target)])&&i.mod.push(e)}))),i}});var Tm={binary:p.treemapBinary,dice:p.treemapDice,slice:p.treemapSlice,slicedice:p.treemapSliceDice,squarify:p.treemapSquarify,resquarify:p.treemapResquarify},Lm=["x0","y0","x1","y1","depth","children"];function Nm(e){Dm.call(this,e)}Nm.Definition={type:"Treemap",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"method",type:"enum",default:"squarify",values:["squarify","resquarify","binary","dice","slice","slicedice"]},{name:"padding",type:"number",default:0},{name:"paddingInner",type:"number",default:0},{name:"paddingOuter",type:"number",default:0},{name:"paddingTop",type:"number",default:0},{name:"paddingRight",type:"number",default:0},{name:"paddingBottom",type:"number",default:0},{name:"paddingLeft",type:"number",default:0},{name:"ratio",type:"number",default:1.618033988749895},{name:"round",type:"boolean",default:!1},{name:"size",type:"number",array:!0,length:2},{name:"as",type:"string",array:!0,length:Lm.length,default:Lm}]},Ee(Nm,Dm,{layout:function(){var e=p.treemap();return e.ratio=function(t){var n=e.tile();n.ratio&&e.tile(n.ratio(t))},e.method=function(t){ke(Tm,t)?e.tile(Tm[t]):E("Unrecognized Treemap layout method: "+t)},e},params:["method","ratio","size","round","padding","paddingInner","paddingOuter","paddingTop","paddingRight","paddingBottom","paddingLeft"],fields:Lm});var Pm=Object.freeze({__proto__:null,nest:km,pack:Fm,partition:Sm,stratify:Bm,tree:zm,treelinks:qm,treemap:Nm}),jm=4278190080;function Um(e,t,n){return new Uint32Array(e.getImageData(0,0,t,n).data.buffer)}function Im(e,t,n){if(t.length){var r=t[0].mark.marktype;"group"===r?t.forEach((function(t){t.items.forEach((function(t){return Im(e,t.items,n)}))})):$c[r].draw(e,{items:n?t.map($m):t})}}function $m(e){var t=wr(e,{});return t.stroke&&0!==t.strokeOpacity||t.fill&&0!==t.fillOpacity?rt(rt({},t),{},{strokeOpacity:1,stroke:"#000",fillOpacity:0}):t}var Wm=31,Gm=new Uint32Array(33),Hm=new Uint32Array(33);Hm[0]=0,Gm[0]=~Hm[0];for(var Vm=1;Vm<=32;++Vm)Hm[Vm]=Hm[Vm-1]<<1|1,Gm[Vm]=~Hm[Vm];function Ym(e,t,n){var r=Math.max(1,Math.sqrt(e*t/1e6)),i=~~((e+2*n+r)/r),a=~~((t+2*n+r)/r),u=function(e){return~~((e+n)/r)};return u.invert=function(e){return e*r-n},u.bitmap=function(){return function(e,t){var n=new Uint32Array(~~((e*t+32)/32));function r(e,t){n[e]|=t}function i(e,t){n[e]&=t}return{array:n,get:function(t,r){var i=r*e+t;return n[i>>>5]&1<<(i&Wm)},set:function(t,n){var i=n*e+t;r(i>>>5,1<<(i&Wm))},clear:function(t,n){var r=n*e+t;i(r>>>5,~(1<<(r&Wm)))},getRange:function(t,r,i,a){for(var u,o,s,l,c=a;c>=r;--c)if((s=(u=c*e+t)>>>5)==(l=(o=c*e+i)>>>5)){if(n[s]&Gm[u&Wm]&Hm[1+(o&Wm)])return!0}else{if(n[s]&Gm[u&Wm])return!0;if(n[l]&Hm[1+(o&Wm)])return!0;for(var f=s+1;f<l;++f)if(n[f])return!0}return!1},setRange:function(t,n,i,a){for(var u,o,s,l,c;n<=a;++n)if((s=(u=n*e+t)>>>5)==(l=(o=n*e+i)>>>5))r(s,Gm[u&Wm]&Hm[1+(o&Wm)]);else for(r(s,Gm[u&Wm]),r(l,Hm[1+(o&Wm)]),c=s+1;c<l;++c)r(c,4294967295)},clearRange:function(t,n,r,a){for(var u,o,s,l,c;n<=a;++n)if((s=(u=n*e+t)>>>5)==(l=(o=n*e+r)>>>5))i(s,Hm[u&Wm]|Gm[1+(o&Wm)]);else for(i(s,Hm[u&Wm]),i(l,Gm[1+(o&Wm)]),c=s+1;c<l;++c)i(c,0)},outOfBounds:function(n,r,i,a){return n<0||r<0||a>=t||i>=e}}}(i,a)},u.ratio=r,u.padding=n,u.width=e,u.height=t,u}function Xm(e,t,n,r,i,a){var u=n/2;return e-u<0||e+u>i||t-(u=r/2)<0||t+u>a}function Jm(e,t,n,r,i,a,u,o){var s=i*a/(2*r),l=e(t-s),c=e(t+s),f=e(n-(a/=2)),d=e(n+a);return u.outOfBounds(l,f,c,d)||u.getRange(l,f,c,d)||o&&o.getRange(l,f,c,d)}var Qm=[-1,-1,1,1],Km=[-1,1,-1,1];var Zm=["right","center","left"],ev=["bottom","middle","top"];function tv(e,t,n,r,i,a,u,o,s,l,c,f){return!(i.outOfBounds(e,n,t,r)||(f&&a||i).getRange(e,n,t,r))}var nv={"top-left":0,top:1,"top-right":2,left:4,middle:5,right:6,"bottom-left":8,bottom:9,"bottom-right":10},rv={naive:function(e,t,n,r){var i=e.width,a=e.height;return function(e){for(var t,n,u,o,s,l,c,f=e.datum.datum.items[r].items,d=f.length,h=e.datum.fontSize,p=Ac.width(e.datum,e.datum.text),m=0,v=0;v<d;++v)t=f[v].x,u=f[v].y,s=(t+(n=void 0===f[v].x2?t:f[v].x2))/2,l=(u+(o=void 0===f[v].y2?u:f[v].y2))/2,(c=Math.abs(n-t+o-u))>=m&&(m=c,e.x=s,e.y=l);return s=p/2,l=h/2,t=e.x-s,n=e.x+s,u=e.y-l,o=e.y+l,e.align="center",t<0&&n<=i?e.align="left":0<=t&&i<n&&(e.align="right"),e.baseline="middle",u<0&&o<=a?e.baseline="top":0<=u&&a<o&&(e.baseline="bottom"),!0}},"reduced-search":function(e,t,n,r){var i=e.width,a=e.height,u=t[0],o=t[1];function s(t,n,r,s,l){var c,f=e.invert(t),d=e.invert(n),h=r,p=a;if(!Xm(f,d,s,l,i,a)&&!Jm(e,f,d,l,s,h,u,o)&&!Jm(e,f,d,l,s,l,u,null)){for(;p-h>=1;)Jm(e,f,d,l,s,c=(h+p)/2,u,o)?p=c:h=c;if(h>r)return[f,d,h,!0]}}return function(t){for(var o,l,c,f,d,h,p,m,v,g,y,b,x,_,k,A,w,D=t.datum.datum.items[r].items,E=D.length,C=t.datum.fontSize,F=Ac.width(t.datum,t.datum.text),M=n?C:0,S=!1,B=!1,O=0,R=0;R<E;++R){for(o=D[R].x,c=D[R].y,o>(l=void 0===D[R].x2?o:D[R].x2)&&(w=o,o=l,l=w),c>(f=void 0===D[R].y2?c:D[R].y2)&&(w=c,c=f,f=w),g=~~(((v=e(o))+(y=e(l)))/2),x=~~(((b=e(c))+(_=e(f)))/2),p=g;p>=v;--p)for(m=x;m>=b;--m)if(A=s(p,m,M,F,C)){var z=st(A,4);t.x=z[0],t.y=z[1],M=z[2],S=z[3]}for(p=g;p<=y;++p)for(m=x;m<=_;++m)if(A=s(p,m,M,F,C)){var q=st(A,4);t.x=q[0],t.y=q[1],M=q[2],S=q[3]}S||n||(d=(o+l)/2,h=(c+f)/2,(k=Math.abs(l-o+f-c))>=O&&!Xm(d,h,F,C,i,a)&&!Jm(e,d,h,C,F,C,u,null)&&(O=k,t.x=d,t.y=h,B=!0))}return!(!S&&!B)&&(d=F/2,h=C/2,u.setRange(e(t.x-d),e(t.y-h),e(t.x+d),e(t.y+h)),t.align="center",t.baseline="middle",!0)}},floodfill:function(e,t,n,r){var i=e.width,a=e.height,u=t[0],o=t[1],s=e.bitmap();return function(t){for(var l,c,f,d,h,p,m,v,g,y,b,x,_=t.datum.datum.items[r].items,k=_.length,A=t.datum.fontSize,w=Ac.width(t.datum,t.datum.text),D=[],E=n?A:0,C=!1,F=!1,M=0,S=0;S<k;++S){for(l=_[S].x,f=_[S].y,c=void 0===_[S].x2?l:_[S].x2,d=void 0===_[S].y2?f:_[S].y2,D.push([e((l+c)/2),e((f+d)/2)]);D.length;){var B=st(D.pop(),2);if(m=B[0],v=B[1],!(u.get(m,v)||o.get(m,v)||s.get(m,v))){s.set(m,v);for(var O=0;O<4;++O)h=m+Qm[O],p=v+Km[O],s.outOfBounds(h,p,h,p)||D.push([h,p]);if(h=e.invert(m),p=e.invert(v),g=E,y=a,!Xm(h,p,w,A,i,a)&&!Jm(e,h,p,A,w,g,u,o)&&!Jm(e,h,p,A,w,A,u,null)){for(;y-g>=1;)Jm(e,h,p,A,w,b=(g+y)/2,u,o)?y=b:g=b;g>E&&(t.x=h,t.y=p,E=g,C=!0)}}}C||n||(h=(l+c)/2,p=(f+d)/2,(x=Math.abs(c-l+d-f))>=M&&!Xm(h,p,w,A,i,a)&&!Jm(e,h,p,A,w,A,u,null)&&(M=x,t.x=h,t.y=p,F=!0))}return!(!C&&!F)&&(h=w/2,p=A/2,u.setRange(e(t.x-h),e(t.y-p),e(t.x+h),e(t.y+p)),t.align="center",t.baseline="middle",!0)}}};function iv(e,t,n,r,i,a,u,o,s,l,c){if(!e.length)return e;var f,d=Math.max(r.length,i.length),h=function(e,t){for(var n=new Float64Array(t),r=e.length,i=0;i<r;++i)n[i]=e[i]||0;for(var a=r;a<t;++a)n[a]=n[r-1];return n}(r,d),p=function(e,t){for(var n=new Int8Array(t),r=e.length,i=0;i<r;++i)n[i]|=nv[e[i]];for(var a=r;a<t;++a)n[a]=n[r-1];return n}(i,d),m=(f=e[0].datum)&&f.mark&&f.mark.marktype,v="group"===m&&e[0].datum.items[s].marktype,g="area"===v,y=function(e,t,n,r){var i=function(e){return[e.x,e.x,e.x,e.y,e.y,e.y]};return e?"line"===e||"area"===e?function(e){return i(e.datum)}:"line"===t?function(e){var t=e.datum.items[r].items;return i(t.length?t["start"===n?0:t.length-1]:{x:NaN,y:NaN})}:function(e){var t=e.datum.bounds;return[t.x1,(t.x1+t.x2)/2,t.x2,t.y1,(t.y1+t.y2)/2,t.y2]}:i}(m,v,o,s),b=null===l||l===1/0,x=g&&"naive"===c,_=-1,k=-1,A=e.map((function(e){var t=b?Ac.width(e,e.text):void 0;return _=Math.max(_,t),k=Math.max(k,e.fontSize),{datum:e,opacity:0,x:void 0,y:void 0,align:void 0,baseline:void 0,boundary:y(e),textWidth:t}}));l=null===l||l===1/0?Math.max(_,k)+Math.max.apply(Math,lt(r)):l;var w,D=Ym(t[0],t[1],l);if(!x){n&&A.sort((function(e,t){return n(e.datum,t.datum)}));for(var E=!1,C=0;C<p.length&&!E;++C)E=5===p[C]||h[C]<0;var F=(m&&u||g)&&e.map((function(e){return e.datum}));w=a.length||F?function(e,t,n,r,i){var a=e.width,u=e.height,o=r||i,s=Eu(a,u).getContext("2d"),l=Eu(a,u).getContext("2d"),c=o&&Eu(a,u).getContext("2d");n.forEach((function(e){return Im(s,e,!1)})),Im(l,t,!1),o&&Im(c,t,!0);var f,d,h,p,m,v,g,y,b=Um(s,a,u),x=Um(l,a,u),_=o&&Um(c,a,u),k=e.bitmap(),A=o&&e.bitmap();for(d=0;d<u;++d)for(f=0;f<a;++f)v=b[m=d*a+f]&jm,y=x[m]&jm,g=o&&_[m]&jm,(v||g||y)&&(h=e(f),p=e(d),i||!v&&!y||k.set(h,p),o&&(v||g)&&A.set(h,p));return[k,A]}(D,F||[],a,E,g):function(e,t){var n=e.bitmap();return(t||[]).forEach((function(t){return n.set(e(t.boundary[0]),e(t.boundary[3]))})),[n,void 0]}(D,u&&A)}var M=g?rv[c](D,w,u,s):function(e,t,n,r){var i=e.width,a=e.height,u=t[0],o=t[1],s=r.length;return function(t){var l,c=t.boundary,f=t.datum.fontSize;if(c[2]<0||c[5]<0||c[0]>i||c[3]>a)return!1;for(var d,h,p,m,v,g,y,b,x,_,k,A,w,D,E,C=null!==(l=t.textWidth)&&void 0!==l?l:0,F=0;F<s;++F){if(d=(3&n[F])-1,h=(n[F]>>>2&3)-1,p=0===d&&0===h||r[F]<0,m=d&&h?Math.SQRT1_2:1,v=r[F]<0?-1:1,g=c[1+d]+r[F]*d*m,b=(k=c[4+h]+v*f*h/2+r[F]*h*m)-f/2,x=k+f/2,A=e(g),D=e(b),E=e(x),!C){if(!tv(A,A,D,E,u,o,0,0,0,0,0,p))continue;C=Ac.width(t.datum,t.datum.text)}if(y=(_=g+v*C*d/2)+C/2,tv(A=e(g=_-C/2),w=e(y),D,E,u,o,0,0,0,0,0,p))return t.x=d?d*v<0?y:g:_,t.y=h?h*v<0?x:b:k,t.align=Zm[d*v+1],t.baseline=ev[h*v+1],u.setRange(A,D,w,E),!0}return!1}}(D,w,p,h);return A.forEach((function(e){return e.opacity=+M(e)})),A}var av=["x","y","opacity","align","baseline"],uv=["top-left","left","bottom-left","top","bottom","top-right","right","bottom-right"];function ov(e){ii.call(this,null,e)}ov.Definition={type:"Label",metadata:{modifies:!0},params:[{name:"size",type:"number",array:!0,length:2,required:!0},{name:"sort",type:"compare"},{name:"anchor",type:"string",array:!0,default:uv},{name:"offset",type:"number",array:!0,default:[1]},{name:"padding",type:"number",default:0,null:!0},{name:"lineAnchor",type:"string",values:["start","end"],default:"end"},{name:"markIndex",type:"number",default:0},{name:"avoidBaseMark",type:"boolean",default:!0},{name:"avoidMarks",type:"data",array:!0},{name:"method",type:"string",default:"naive"},{name:"as",type:"string",array:!0,length:av.length,default:av}]},Ee(ov,ii,{transform:function(e,t){var n=e.modified();if(n||t.changed(t.ADD_REM)||function(n){var r=e[n];return ce(r)&&t.modified(r.fields)}("sort")){e.size&&2===e.size.length||E("Size parameter should be specified as a [width, height] array.");var r=e.as||av;return iv(t.materialize(t.SOURCE).source||[],e.size,e.sort,se(null==e.offset?1:e.offset),se(e.anchor||uv),e.avoidMarks||[],!1!==e.avoidBaseMark,e.lineAnchor||"end",e.markIndex||0,void 0===e.padding?0:e.padding,e.method||"naive").forEach((function(e){var t=e.datum;t[r[0]]=e.x,t[r[1]]=e.y,t[r[2]]=e.opacity,t[r[3]]=e.align,t[r[4]]=e.baseline})),t.reflow(n).modifies(r)}}});var sv=Object.freeze({__proto__:null,label:ov});function lv(e,t){var n,r,i,a,u,o,s=[],l=function(e){return e(a)};if(null==t)s.push(e);else for(n={},r=0,i=e.length;r<i;++r)a=e[r],(o=n[u=t.map(l)])||(n[u]=o=[],o.dims=u,s.push(o)),o.push(a);return s}function cv(e){ii.call(this,null,e)}cv.Definition={type:"Loess",metadata:{generates:!0},params:[{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"groupby",type:"field",array:!0},{name:"bandwidth",type:"number",default:.3},{name:"as",type:"string",array:!0}]},Ee(cv,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){var r=lv(t.materialize(t.SOURCE).source,e.groupby),i=(e.groupby||[]).map(_),a=i.length,u=e.as||[_(e.x),_(e.y)],o=[];r.forEach((function(t){Vi(t,e.x,e.y,e.bandwidth||.3).forEach((function(e){for(var n={},r=0;r<a;++r)n[i[r]]=t.dims[r];n[u[0]]=e[0],n[u[1]]=e[1],o.push(kr(n))}))})),this.value&&(n.rem=this.value),this.value=n.add=n.source=o}return n}});var fv={linear:ji,log:Ui,exp:Ii,pow:$i,quad:Wi,poly:Gi};function dv(e){ii.call(this,null,e)}dv.Definition={type:"Regression",metadata:{generates:!0},params:[{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"groupby",type:"field",array:!0},{name:"method",type:"string",default:"linear",values:Object.keys(fv)},{name:"order",type:"number",default:3},{name:"extent",type:"number",array:!0,length:2},{name:"params",type:"boolean",default:!1},{name:"as",type:"string",array:!0}]},Ee(dv,ii,{transform:function(e,t){var n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){var r=lv(t.materialize(t.SOURCE).source,e.groupby),i=(e.groupby||[]).map(_),a=e.method||"linear",u=e.order||3,o=function(e,t){return"poly"===e?t:"quad"===e?2:1}(a,u),s=e.as||[_(e.x),_(e.y)],l=fv[a],c=[],f=e.extent;ke(fv,a)||E("Invalid regression method: "+a),null!=f&&"log"===a&&f[0]<=0&&(t.dataflow.warn("Ignoring extent with values <= 0 for log regression."),f=null),r.forEach((function(n){if(n.length<=o)t.dataflow.warn("Skipping regression with more parameters than data points.");else{var r=l(n,e.x,e.y,u);if(e.params)c.push(kr({keys:n.dims,coef:r.coef,rSquared:r.rSquared}));else{var d=f||be(n,e.x),h=function(e){for(var t={},r=0;r<i.length;++r)t[i[r]]=n.dims[r];t[s[0]]=e[0],t[s[1]]=e[1],c.push(kr(t))};"linear"===a?d.forEach((function(e){return h([e,r.predict(e)])})):Qi(r.predict,d,25,200).forEach(h)}}})),this.value&&(n.rem=this.value),this.value=n.add=n.source=c}return n}});var hv=Object.freeze({__proto__:null,loess:cv,regression:dv});function pv(e){ii.call(this,null,e)}pv.Definition={type:"Voronoi",metadata:{modifies:!0},params:[{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"size",type:"number",array:!0,length:2},{name:"extent",type:"array",array:!0,length:2,default:[[-1e5,-1e5],[1e5,1e5]],content:{type:"number",array:!0,length:2}},{name:"as",type:"string",default:"path"}]};var mv=[-1e5,-1e5,1e5,1e5];function vv(e){for(var t=e[0][0],n=e[0][1],r=e.length-1;e[r][0]===t&&e[r][1]===n;--r);return"M"+e.slice(0,r+1).join("L")+"Z"}Ee(pv,ii,{transform:function(e,t){var n=e.as||"path",r=t.source;if(!r||!r.length)return t;var i=e.size;i=i?[0,0,i[0],i[1]]:(i=e.extent)?[i[0][0],i[0][1],i[1][0],i[1][1]]:mv;for(var a=this.value=m.Delaunay.from(r,e.x,e.y).voronoi(i),u=0,o=r.length;u<o;++u){var s=a.cellPolygon(u);r[u][n]=s?vv(s):null}return t.reflow(e.modified()).modifies(n)}});var gv=Object.freeze({__proto__:null,voronoi:pv}),yv=Math.PI/180,bv=2048;function xv(){var e,t,n,r,i,a,u,o=[256,256],s=Dv,l=[],c=Math.random,f={};function d(e,t,n){for(var r,i,a,u=t.x,l=t.y,f=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=s(o),h=c()<.5?1:-1,p=-h;(r=d(p+=h))&&(i=~~r[0],a=~~r[1],!(Math.min(Math.abs(i),Math.abs(a))>=f));)if(t.x=u+i,t.y=l+a,!(t.x+t.x0<0||t.y+t.y0<0||t.x+t.x1>o[0]||t.y+t.y1>o[1])&&(!n||!kv(t,e,o[0]))&&(!n||wv(t,n))){for(var m,v=t.sprite,g=t.width>>5,y=o[0]>>5,b=t.x-(g<<4),x=127&b,_=32-x,k=t.y1-t.y0,A=(t.y+t.y0)*y+(b>>5),w=0;w<k;w++){m=0;for(var D=0;D<=g;D++)e[A+D]|=m<<_|(D<g?(m=v[w*g+D])>>>x:0);A+=y}return t.sprite=null,!0}return!1}return f.layout=function(){for(var s=function(e){e.width=e.height=1;var t=Math.sqrt(e.getContext("2d").getImageData(0,0,1,1).data.length>>2);e.width=2048/t,e.height=bv/t;var n=e.getContext("2d");return n.fillStyle=n.strokeStyle="red",n.textAlign="center",{context:n,ratio:t}}(Eu()),f=function(e){var t=[],n=-1;for(;++n<e;)t[n]=0;return t}((o[0]>>5)*o[1]),h=null,p=l.length,m=-1,v=[],g=l.map((function(o){return{text:e(o),font:t(o),style:r(o),weight:i(o),rotate:a(o),size:~~(n(o)+1e-14),padding:u(o),xoff:0,yoff:0,x1:0,y1:0,x0:0,y0:0,hasText:!1,sprite:null,datum:o}})).sort((function(e,t){return t.size-e.size}));++m<p;){var y=g[m];y.x=o[0]*(c()+.5)>>1,y.y=o[1]*(c()+.5)>>1,_v(s,y,g,m),y.hasText&&d(f,y,h)&&(v.push(y),h?Av(h,y):h=[{x:y.x+y.x0,y:y.y+y.y0},{x:y.x+y.x1,y:y.y+y.y1}],y.x-=o[0]>>1,y.y-=o[1]>>1)}return v},f.words=function(e){return arguments.length?(l=e,f):l},f.size=function(e){return arguments.length?(o=[+e[0],+e[1]],f):o},f.font=function(e){return arguments.length?(t=Ev(e),f):t},f.fontStyle=function(e){return arguments.length?(r=Ev(e),f):r},f.fontWeight=function(e){return arguments.length?(i=Ev(e),f):i},f.rotate=function(e){return arguments.length?(a=Ev(e),f):a},f.text=function(t){return arguments.length?(e=Ev(t),f):e},f.spiral=function(e){return arguments.length?(s=Cv[e]||e,f):s},f.fontSize=function(e){return arguments.length?(n=Ev(e),f):n},f.padding=function(e){return arguments.length?(u=Ev(e),f):u},f.random=function(e){return arguments.length?(c=e,f):c},f}function _v(e,t,n,r){if(!t.sprite){var i=e.context,a=e.ratio;i.clearRect(0,0,2048/a,bv/a);var u,o,s,l,c,f=0,d=0,h=0,p=n.length;for(--r;++r<p;){if(t=n[r],i.save(),i.font=t.style+" "+t.weight+" "+~~((t.size+1)/a)+"px "+t.font,u=i.measureText(t.text+"m").width*a,s=t.size<<1,t.rotate){var m=Math.sin(t.rotate*yv),v=Math.cos(t.rotate*yv),g=u*v,y=u*m,b=s*v,x=s*m;u=Math.max(Math.abs(g+x),Math.abs(g-x))+31>>5<<5,s=~~Math.max(Math.abs(y+b),Math.abs(y-b))}else u=u+31>>5<<5;if(s>h&&(h=s),f+u>=2048&&(f=0,d+=h,h=0),d+s>=bv)break;i.translate((f+(u>>1))/a,(d+(s>>1))/a),t.rotate&&i.rotate(t.rotate*yv),i.fillText(t.text,0,0),t.padding&&(i.lineWidth=2*t.padding,i.strokeText(t.text,0,0)),i.restore(),t.width=u,t.height=s,t.xoff=f,t.yoff=d,t.x1=u>>1,t.y1=s>>1,t.x0=-t.x1,t.y0=-t.y1,t.hasText=!0,f+=u}for(var _=i.getImageData(0,0,2048/a,bv/a).data,k=[];--r>=0;)if((t=n[r]).hasText){for(o=(u=t.width)>>5,s=t.y1-t.y0,l=0;l<s*o;l++)k[l]=0;if(null==(f=t.xoff))return;d=t.yoff;var A=0,w=-1;for(c=0;c<s;c++){for(l=0;l<u;l++){var D=o*c+(l>>5),E=_[2048*(d+c)+(f+l)<<2]?1<<31-l%32:0;k[D]|=E,A|=E}A?w=c:(t.y0++,s--,c--,d++)}t.y1=t.y0+w,t.sprite=k.slice(0,(t.y1-t.y0)*o)}}}function kv(e,t,n){n>>=5;for(var r,i=e.sprite,a=e.width>>5,u=e.x-(a<<4),o=127&u,s=32-o,l=e.y1-e.y0,c=(e.y+e.y0)*n+(u>>5),f=0;f<l;f++){r=0;for(var d=0;d<=a;d++)if((r<<s|(d<a?(r=i[f*a+d])>>>o:0))&t[c+d])return!0;c+=n}return!1}function Av(e,t){var n=e[0],r=e[1];t.x+t.x0<n.x&&(n.x=t.x+t.x0),t.y+t.y0<n.y&&(n.y=t.y+t.y0),t.x+t.x1>r.x&&(r.x=t.x+t.x1),t.y+t.y1>r.y&&(r.y=t.y+t.y1)}function wv(e,t){return e.x+e.x1>t[0].x&&e.x+e.x0<t[1].x&&e.y+e.y1>t[0].y&&e.y+e.y0<t[1].y}function Dv(e){var t=e[0]/e[1];return function(e){return[t*(e*=.1)*Math.cos(e),e*Math.sin(e)]}}function Ev(e){return"function"==typeof e?e:function(){return e}}var Cv={archimedean:Dv,rectangular:function(e){var t=4*e[0]/e[1],n=0,r=0;return function(e){var i=e<0?-1:1;switch(Math.sqrt(1+4*i*e)-i&3){case 0:n+=t;break;case 1:r+=4;break;case 2:n-=t;break;default:r-=4}return[n,r]}}},Fv=["x","y","font","fontSize","fontStyle","fontWeight","angle"],Mv=["text","font","rotate","fontSize","fontStyle","fontWeight"];function Sv(e){ii.call(this,xv(),e)}Sv.Definition={type:"Wordcloud",metadata:{modifies:!0},params:[{name:"size",type:"number",array:!0,length:2},{name:"font",type:"string",expr:!0,default:"sans-serif"},{name:"fontStyle",type:"string",expr:!0,default:"normal"},{name:"fontWeight",type:"string",expr:!0,default:"normal"},{name:"fontSize",type:"number",expr:!0,default:14},{name:"fontSizeRange",type:"number",array:"nullable",default:[10,50]},{name:"rotate",type:"number",expr:!0,default:0},{name:"text",type:"field"},{name:"spiral",type:"string",values:["archimedean","rectangular"]},{name:"padding",type:"number",expr:!0},{name:"as",type:"string",array:!0,length:7,default:Fv}]},Ee(Sv,ii,{transform:function(t,n){!t.size||t.size[0]&&t.size[1]||E("Wordcloud size dimensions must be non-zero.");var r=t.modified();if(r||n.changed(n.ADD_REM)||Mv.some((function(e){var r=t[e];return ce(r)&&n.modified(r.fields)}))){var i,a=n.materialize(n.SOURCE).source,u=this.value,o=t.as||Fv,s=t.fontSize||14;if(ce(s)?i=t.fontSizeRange:s=ve(s),i){var l=s,c=ao("sqrt")().domain(be(a,l)).range(i);s=function(e){return c(l(e))}}a.forEach((function(e){e[o[0]]=NaN,e[o[1]]=NaN,e[o[3]]=0}));for(var f,d,h=u.words(a).text(t.text).size(t.size||[500,500]).padding(t.padding||1).spiral(t.spiral||"archimedean").rotate(t.rotate||0).font(t.font||"sans-serif").fontStyle(t.fontStyle||"normal").fontWeight(t.fontWeight||"normal").fontSize(s).random(e.random).layout(),p=u.size(),m=p[0]>>1,v=p[1]>>1,g=h.length,y=0;y<g;++y)(d=(f=h[y]).datum)[o[0]]=f.x+m,d[o[1]]=f.y+v,d[o[2]]=f.font,d[o[3]]=f.size,d[o[4]]=f.style,d[o[5]]=f.weight,d[o[6]]=f.rotate;return n.reflow(r).modifies(o)}}});var Bv=Object.freeze({__proto__:null,wordcloud:Sv}),Ov=function(e){return new Uint8Array(e)},Rv=function(e){return new Uint16Array(e)},zv=function(e){return new Uint32Array(e)};function qv(e,t,n){var r=(t<257?Ov:t<65537?Rv:zv)(e);return n&&r.set(n),r}function Tv(e,t,n){var r=1<<t;return{one:r,zero:~r,range:n.slice(),bisect:e.bisect,index:e.index,size:e.size,onAdd:function(e,t){var n,i=this,a=i.bisect(i.range,e.value),u=e.index,o=a[0],s=a[1],l=u.length;for(n=0;n<o;++n)t[u[n]]|=r;for(n=s;n<l;++n)t[u[n]]|=r;return i}}}function Lv(){var e=zv(0),t=[],n=0;return{insert:function(i,a,u){if(!a.length)return[];var o,s,l,c=n,f=a.length,d=zv(f),h=Array(f);for(l=0;l<f;++l)h[l]=i(a[l]),d[l]=l;if(h=function(e,t){return e.sort.call(t,(function(t,n){var r=e[t],i=e[n];return r<i?-1:r>i?1:0})),r.permute(e,t)}(h,d),c)o=t,s=e,t=Array(c+f),e=zv(c+f),function(e,t,n,r,i,a,u,o,s){var l,c=0,f=0;for(l=0;c<r&&f<u;++l)t[c]<i[f]?(o[l]=t[c],s[l]=n[c++]):(o[l]=i[f],s[l]=a[f++]+e);for(;c<r;++c,++l)o[l]=t[c],s[l]=n[c];for(;f<u;++f,++l)o[l]=i[f],s[l]=a[f]+e}(u,o,s,c,h,d,f,t,e);else{if(u>0)for(l=0;l<f;++l)d[l]+=u;t=h,e=d}return n=c+f,{index:d,value:h}},remove:function(r,i){var a,u,o,s=n;for(u=0;!i[e[u]]&&u<s;++u);for(o=u;u<s;++u)i[a=e[u]]||(e[o]=a,t[o]=t[u],++o);n=s-r},bisect:function(e,i){var a;return i?a=i.length:(i=t,a=n),[r.bisectLeft(i,e[0],0,a),r.bisectRight(i,e[1],0,a)]},reindex:function(t){for(var r=0,i=n;r<i;++r)e[r]=t[e[r]]},index:function(){return e},size:function(){return n}}}function Nv(e){ii.call(this,function(){var e=8,t=[],n=zv(0),r=qv(0,e),i=qv(0,e);return{data:function(){return t},seen:function(){return n=function(e,t,n){return e.length>=t?e:((n=n||new e.constructor(t)).set(e),n)}(n,t.length)},add:function(e){for(var n,r=0,i=t.length,a=e.length;r<a;++r)(n=e[r])._index=i++,t.push(n)},remove:function(e,n){var a,u,o,s=t.length,l=Array(s-e),c=t;for(u=0;!n[u]&&u<s;++u)l[u]=t[u],c[u]=u;for(o=u;u<s;++u)a=t[u],n[u]?c[u]=-1:(c[u]=o,r[o]=r[u],i[o]=i[u],l[o]=a,a._index=o++),r[u]=0;return t=l,c},size:function(){return t.length},curr:function(){return r},prev:function(){return i},reset:function(e){return i[e]=r[e]},all:function(){return e<257?255:e<65537?65535:4294967295},set:function(e,t){r[e]|=t},clear:function(e,t){r[e]&=~t},resize:function(t,n){(t>r.length||n>e)&&(e=Math.max(n,e),r=qv(t,e,r),i=qv(t,e))}}}(),e),this._indices=null,this._dims=null}function Pv(e){ii.call(this,null,e)}Nv.Definition={type:"CrossFilter",metadata:{},params:[{name:"fields",type:"field",array:!0,required:!0},{name:"query",type:"array",array:!0,required:!0,content:{type:"number",array:!0,length:2}}]},Ee(Nv,ii,{transform:function(e,t){return this._dims?e.modified("fields")||e.fields.some((function(e){return t.modified(e.fields)}))?this.reinit(e,t):this.eval(e,t):this.init(e,t)},init:function(e,t){for(var n,r,i=e.fields,a=e.query,u=this._indices={},o=this._dims=[],s=a.length,l=0;l<s;++l)r=u[n=i[l].fname]||(u[n]=Lv()),o.push(Tv(r,l,a[l]));return this.eval(e,t)},reinit:function(e,t){var n,r,i,a,u,o,s,l,c,f=t.materialize().fork(),d=e.fields,h=e.query,p=this._indices,m=this._dims,v=this.value,g=v.curr(),y=v.prev(),b=v.all(),x=f.rem=f.add,_=f.mod,k=h.length,A={};if(y.set(g),t.rem.length&&(u=this.remove(e,t,f)),t.add.length&&v.add(t.add),t.mod.length)for(o={},s=0,l=(a=t.mod).length;s<l;++s)o[a[s]._index]=1;for(s=0;s<k;++s)c=d[s],(!m[s]||e.modified("fields",s)||t.modified(c.fields))&&((n=A[i=c.fname])||(p[i]=r=Lv(),A[i]=n=r.insert(c,t.source,0)),m[s]=Tv(r,s,h[s]).onAdd(n,g));for(s=0,l=v.data().length;s<l;++s)u[s]||(y[s]!==g[s]?x.push(s):o[s]&&g[s]!==b&&_.push(s));return v.mask=(1<<k)-1,f},eval:function(e,t){var n=t.materialize().fork(),r=this._dims.length,i=0;return t.rem.length&&(this.remove(e,t,n),i|=(1<<r)-1),e.modified("query")&&!e.modified("fields")&&(i|=this.update(e,t,n)),t.add.length&&(this.insert(e,t,n),i|=(1<<r)-1),t.mod.length&&(this.modify(t,n),i|=(1<<r)-1),this.value.mask=i,n},insert:function(e,t,n){var r,i,a,u=t.add,o=this.value,s=this._dims,l=this._indices,c=e.fields,f={},d=n.add,h=o.size()+u.length,p=s.length,m=o.size();o.resize(h,p),o.add(u);var v=o.curr(),g=o.prev(),y=o.all();for(r=0;r<p;++r)a=f[i=c[r].fname]||(f[i]=l[i].insert(c[r],u,m)),s[r].onAdd(a,v);for(;m<h;++m)g[m]=y,v[m]!==y&&d.push(m)},modify:function(e,t){var n,r,i,a=t.mod,u=this.value,o=u.curr(),s=u.all(),l=e.mod;for(n=0,r=l.length;n<r;++n)o[i=l[n]._index]!==s&&a.push(i)},remove:function(e,t,n){var r,i,a,u,o=this._indices,s=this.value,l=s.curr(),c=s.prev(),f=s.all(),d={},h=n.rem,p=t.rem;for(r=0,i=p.length;r<i;++r)d[a=p[r]._index]=1,c[a]=u=l[a],l[a]=f,u!==f&&h.push(a);for(a in o)o[a].remove(i,d);return this.reindex(t,i,d),d},reindex:function(e,t,n){var r=this._indices,i=this.value;e.runAfter((function(){var e=i.remove(t,n);for(var a in r)r[a].reindex(e)}))},update:function(e,t,n){var r,i,a=this._dims,u=e.query,o=t.stamp,s=a.length,l=0;for(n.filters=0,i=0;i<s;++i)e.modified("query",i)&&(r=i,++l);if(1===l)l=a[r].one,this.incrementOne(a[r],u[r],n.add,n.rem);else for(i=0,l=0;i<s;++i)e.modified("query",i)&&(l|=a[i].one,this.incrementAll(a[i],u[i],o,n.add),n.rem=n.add);return l},incrementAll:function(e,t,n,r){var i,a,u,o=this.value,s=o.seen(),l=o.curr(),c=o.prev(),f=e.index(),d=e.bisect(e.range),h=e.bisect(t),p=h[0],m=h[1],v=d[0],g=d[1],y=e.one;if(p<v)for(i=p,a=Math.min(v,m);i<a;++i)s[u=f[i]]!==n&&(c[u]=l[u],s[u]=n,r.push(u)),l[u]^=y;else if(p>v)for(i=v,a=Math.min(p,g);i<a;++i)s[u=f[i]]!==n&&(c[u]=l[u],s[u]=n,r.push(u)),l[u]^=y;if(m>g)for(i=Math.max(p,g),a=m;i<a;++i)s[u=f[i]]!==n&&(c[u]=l[u],s[u]=n,r.push(u)),l[u]^=y;else if(m<g)for(i=Math.max(v,m),a=g;i<a;++i)s[u=f[i]]!==n&&(c[u]=l[u],s[u]=n,r.push(u)),l[u]^=y;e.range=t.slice()},incrementOne:function(e,t,n,r){var i,a,u,o=this.value.curr(),s=e.index(),l=e.bisect(e.range),c=e.bisect(t),f=c[0],d=c[1],h=l[0],p=l[1],m=e.one;if(f<h)for(i=f,a=Math.min(h,d);i<a;++i)o[u=s[i]]^=m,n.push(u);else if(f>h)for(i=h,a=Math.min(f,p);i<a;++i)o[u=s[i]]^=m,r.push(u);if(d>p)for(i=Math.max(f,p),a=d;i<a;++i)o[u=s[i]]^=m,n.push(u);else if(d<p)for(i=Math.max(h,d),a=p;i<a;++i)o[u=s[i]]^=m,r.push(u);e.range=t.slice()}}),Pv.Definition={type:"ResolveFilter",metadata:{},params:[{name:"ignore",type:"number",required:!0,description:"A bit mask indicating which filters to ignore."},{name:"filter",type:"object",required:!0,description:"Per-tuple filter bitmaps from a CrossFilter transform."}]},Ee(Pv,ii,{transform:function(e,t){var n=~(e.ignore||0),r=e.filter,i=r.mask;if(0==(i&n))return t.StopPropagation;var a=t.fork(t.ALL),u=r.data(),o=r.curr(),s=r.prev(),l=function(e){return o[e]&n?null:u[e]};return a.filter(a.MOD,l),i&i-1?(a.filter(a.ADD,(function(e){var t=o[e]&n;return!t&&t^s[e]&n?u[e]:null})),a.filter(a.REM,(function(e){var t=o[e]&n;return t&&!(t^t^s[e]&n)?u[e]:null}))):(a.filter(a.ADD,l),a.filter(a.REM,(function(e){return(o[e]&n)===i?u[e]:null}))),a.filter(a.SOURCE,(function(e){return l(e._index)}))}});var jv,Uv,Iv,$v,Wv,Gv=Object.freeze({__proto__:null,crossfilter:Nv,resolvefilter:Pv}),Hv="Literal",Vv="Property",Yv="ArrayExpression",Xv="BinaryExpression",Jv="CallExpression",Qv="ConditionalExpression",Kv="LogicalExpression",Zv="MemberExpression",eg="ObjectExpression",tg="UnaryExpression";function ng(e){this.type=e}ng.prototype.visit=function(e){var t,n,r;if(e(this))return 1;for(n=0,r=(t=function(e){switch(e.type){case Yv:return e.elements;case Xv:case Kv:return[e.left,e.right];case Jv:return[e.callee].concat(e.arguments);case Qv:return[e.test,e.consequent,e.alternate];case Zv:return[e.object,e.property];case eg:return e.properties;case Vv:return[e.key,e.value];case tg:return[e.argument];default:return[]}}(this)).length;n<r;++n)if(t[n].visit(e))return 1};(jv={})[1]="Boolean",jv[2]="<end>",jv[3]="Identifier",jv[4]="Keyword",jv[5]="Null",jv[6]="Numeric",jv[7]="Punctuator",jv[8]="String",jv[9]="RegularExpression";var rg="Identifier",ig="Unexpected token %0",ag="Invalid regular expression",ug="Invalid regular expression: missing /",og="Octal literals are not allowed in strict mode.",sg="ILLEGAL",lg="Disabled.",cg=new RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"),fg=new RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0-\\u08B2\\u08E4-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2D\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]");function dg(e,t){if(!e)throw new Error("ASSERT: "+t)}function hg(e){return e>=48&&e<=57}function pg(e){return"0123456789abcdefABCDEF".indexOf(e)>=0}function mg(e){return"01234567".indexOf(e)>=0}function vg(e){return 32===e||9===e||11===e||12===e||160===e||e>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(e)>=0}function gg(e){return 10===e||13===e||8232===e||8233===e}function yg(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||92===e||e>=128&&cg.test(String.fromCharCode(e))}function bg(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||92===e||e>=128&&fg.test(String.fromCharCode(e))}var xg={if:1,in:1,do:1,var:1,for:1,new:1,try:1,let:1,this:1,else:1,case:1,void:1,with:1,enum:1,while:1,break:1,catch:1,throw:1,const:1,yield:1,class:1,super:1,return:1,typeof:1,delete:1,switch:1,export:1,import:1,public:1,static:1,default:1,finally:1,extends:1,package:1,private:1,function:1,continue:1,debugger:1,interface:1,protected:1,instanceof:1,implements:1};function _g(){for(;Iv<$v;){var e=Uv.charCodeAt(Iv);if(!vg(e)&&!gg(e))break;++Iv}}function kg(e){var t,n,r,i=0;for(n="u"===e?4:2,t=0;t<n;++t)Iv<$v&&pg(Uv[Iv])?(r=Uv[Iv++],i=16*i+"0123456789abcdef".indexOf(r.toLowerCase())):Ng({},ig,sg);return String.fromCharCode(i)}function Ag(){var e,t,n,r;for(t=0,"}"===(e=Uv[Iv])&&Ng({},ig,sg);Iv<$v&&pg(e=Uv[Iv++]);)t=16*t+"0123456789abcdef".indexOf(e.toLowerCase());return(t>1114111||"}"!==e)&&Ng({},ig,sg),t<=65535?String.fromCharCode(t):(n=55296+(t-65536>>10),r=56320+(t-65536&1023),String.fromCharCode(n,r))}function wg(){var e,t;for(e=Uv.charCodeAt(Iv++),t=String.fromCharCode(e),92===e&&(117!==Uv.charCodeAt(Iv)&&Ng({},ig,sg),++Iv,(e=kg("u"))&&"\\"!==e&&yg(e.charCodeAt(0))||Ng({},ig,sg),t=e);Iv<$v&&bg(e=Uv.charCodeAt(Iv));)++Iv,t+=String.fromCharCode(e),92===e&&(t=t.substr(0,t.length-1),117!==Uv.charCodeAt(Iv)&&Ng({},ig,sg),++Iv,(e=kg("u"))&&"\\"!==e&&bg(e.charCodeAt(0))||Ng({},ig,sg),t+=e);return t}function Dg(){var e,t;return e=Iv,t=92===Uv.charCodeAt(Iv)?wg():function(){var e,t;for(e=Iv++;Iv<$v;){if(92===(t=Uv.charCodeAt(Iv)))return Iv=e,wg();if(!bg(t))break;++Iv}return Uv.slice(e,Iv)}(),{type:1===t.length?3:xg.hasOwnProperty(t)?4:"null"===t?5:"true"===t||"false"===t?1:3,value:t,start:e,end:Iv}}function Eg(){var e,t,n,r,i=Iv,a=Uv.charCodeAt(Iv),u=Uv[Iv];switch(a){case 46:case 40:case 41:case 59:case 44:case 123:case 125:case 91:case 93:case 58:case 63:case 126:return++Iv,{type:7,value:String.fromCharCode(a),start:i,end:Iv};default:if(61===(e=Uv.charCodeAt(Iv+1)))switch(a){case 43:case 45:case 47:case 60:case 62:case 94:case 124:case 37:case 38:case 42:return Iv+=2,{type:7,value:String.fromCharCode(a)+String.fromCharCode(e),start:i,end:Iv};case 33:case 61:return Iv+=2,61===Uv.charCodeAt(Iv)&&++Iv,{type:7,value:Uv.slice(i,Iv),start:i,end:Iv}}}return">>>="===(r=Uv.substr(Iv,4))?{type:7,value:r,start:i,end:Iv+=4}:">>>"===(n=r.substr(0,3))||"<<="===n||">>="===n?{type:7,value:n,start:i,end:Iv+=3}:u===(t=n.substr(0,2))[1]&&"+-<>&|".indexOf(u)>=0||"=>"===t?{type:7,value:t,start:i,end:Iv+=2}:("//"===t&&Ng({},ig,sg),"<>=!+-*%&|^/".indexOf(u)>=0?{type:7,value:u,start:i,end:++Iv}:void Ng({},ig,sg))}function Cg(){var e,t,n;if(dg(hg((n=Uv[Iv]).charCodeAt(0))||"."===n,"Numeric literal must start with a decimal digit or a decimal point"),t=Iv,e="","."!==n){if(e=Uv[Iv++],n=Uv[Iv],"0"===e){if("x"===n||"X"===n)return++Iv,function(e){for(var t="";Iv<$v&&pg(Uv[Iv]);)t+=Uv[Iv++];return 0===t.length&&Ng({},ig,sg),yg(Uv.charCodeAt(Iv))&&Ng({},ig,sg),{type:6,value:parseInt("0x"+t,16),start:e,end:Iv}}(t);if(mg(n))return function(e){for(var t="0"+Uv[Iv++];Iv<$v&&mg(Uv[Iv]);)t+=Uv[Iv++];return(yg(Uv.charCodeAt(Iv))||hg(Uv.charCodeAt(Iv)))&&Ng({},ig,sg),{type:6,value:parseInt(t,8),octal:!0,start:e,end:Iv}}(t);n&&hg(n.charCodeAt(0))&&Ng({},ig,sg)}for(;hg(Uv.charCodeAt(Iv));)e+=Uv[Iv++];n=Uv[Iv]}if("."===n){for(e+=Uv[Iv++];hg(Uv.charCodeAt(Iv));)e+=Uv[Iv++];n=Uv[Iv]}if("e"===n||"E"===n)if(e+=Uv[Iv++],"+"!==(n=Uv[Iv])&&"-"!==n||(e+=Uv[Iv++]),hg(Uv.charCodeAt(Iv)))for(;hg(Uv.charCodeAt(Iv));)e+=Uv[Iv++];else Ng({},ig,sg);return yg(Uv.charCodeAt(Iv))&&Ng({},ig,sg),{type:6,value:parseFloat(e),start:t,end:Iv}}function Fg(){var e,t,n,r;return Wv=null,_g(),e=Iv,t=function(){var e,t,n,r;for(dg("/"===(e=Uv[Iv]),"Regular expression literal must start with a slash"),t=Uv[Iv++],n=!1,r=!1;Iv<$v;)if(t+=e=Uv[Iv++],"\\"===e)gg((e=Uv[Iv++]).charCodeAt(0))&&Ng({},ug),t+=e;else if(gg(e.charCodeAt(0)))Ng({},ug);else if(n)"]"===e&&(n=!1);else{if("/"===e){r=!0;break}"["===e&&(n=!0)}return r||Ng({},ug),{value:t.substr(1,t.length-2),literal:t}}(),n=function(){var e,t,n;for(t="",n="";Iv<$v&&bg((e=Uv[Iv]).charCodeAt(0));)++Iv,"\\"===e&&Iv<$v?Ng({},ig,sg):(n+=e,t+=e);return n.search(/[^gimuy]/g)>=0&&Ng({},ag,n),{value:n,literal:t}}(),r=function(e,t){var n=e;t.indexOf("u")>=0&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,(function(e,t){if(parseInt(t,16)<=1114111)return"x";Ng({},ag)})).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"));try{new RegExp(n)}catch(e){Ng({},ag)}try{return new RegExp(e,t)}catch(e){return null}}(t.value,n.value),{literal:t.literal+n.literal,value:r,regex:{pattern:t.value,flags:n.value},start:e,end:Iv}}function Mg(){if(_g(),Iv>=$v)return{type:2,start:Iv,end:Iv};var e=Uv.charCodeAt(Iv);return yg(e)?Dg():40===e||41===e||59===e?Eg():39===e||34===e?function(){var e,t,n,r,i="",a=!1;for(dg("'"===(e=Uv[Iv])||'"'===e,"String literal must starts with a quote"),t=Iv,++Iv;Iv<$v;){if((n=Uv[Iv++])===e){e="";break}if("\\"===n)if((n=Uv[Iv++])&&gg(n.charCodeAt(0)))"\r"===n&&"\n"===Uv[Iv]&&++Iv;else switch(n){case"u":case"x":"{"===Uv[Iv]?(++Iv,i+=Ag()):i+=kg(n);break;case"n":i+="\n";break;case"r":i+="\r";break;case"t":i+="\t";break;case"b":i+="\b";break;case"f":i+="\f";break;case"v":i+="\v";break;default:mg(n)?(0!==(r="01234567".indexOf(n))&&(a=!0),Iv<$v&&mg(Uv[Iv])&&(a=!0,r=8*r+"01234567".indexOf(Uv[Iv++]),"0123".indexOf(n)>=0&&Iv<$v&&mg(Uv[Iv])&&(r=8*r+"01234567".indexOf(Uv[Iv++]))),i+=String.fromCharCode(r)):i+=n}else{if(gg(n.charCodeAt(0)))break;i+=n}}return""!==e&&Ng({},ig,sg),{type:8,value:i,octal:a,start:t,end:Iv}}():46===e?hg(Uv.charCodeAt(Iv+1))?Cg():Eg():hg(e)?Cg():Eg()}function Sg(){var e=Wv;return Iv=e.end,Wv=Mg(),Iv=e.end,e}function Bg(){var e=Iv;Wv=Mg(),Iv=e}function Og(e,t,n){var r=new ng("||"===e||"&&"===e?"LogicalExpression":"BinaryExpression");return r.operator=e,r.left=t,r.right=n,r}function Rg(e,t){var n=new ng("CallExpression");return n.callee=e,n.arguments=t,n}function zg(e){var t=new ng(rg);return t.name=e,t}function qg(e){var t=new ng("Literal");return t.value=e.value,t.raw=Uv.slice(e.start,e.end),e.regex&&("//"===t.raw&&(t.raw="/(?:)/"),t.regex=e.regex),t}function Tg(e,t,n){var r=new ng("MemberExpression");return r.computed="["===e,r.object=t,r.property=n,r.computed||(n.member=!0),r}function Lg(e,t,n){var r=new ng("Property");return r.key=t,r.value=n,r.kind=e,r}function Ng(e,t){var n,r=Array.prototype.slice.call(arguments,2),i=t.replace(/%(\d)/g,(function(e,t){return dg(t<r.length,"Message reference must be in range"),r[t]}));throw(n=new Error(i)).index=Iv,n.description=i,n}function Pg(e){2===e.type&&Ng(e,"Unexpected end of input"),6===e.type&&Ng(e,"Unexpected number"),8===e.type&&Ng(e,"Unexpected string"),3===e.type&&Ng(e,"Unexpected identifier"),4===e.type&&Ng(e,"Unexpected reserved word"),Ng(e,ig,e.value)}function jg(e){var t=Sg();7===t.type&&t.value===e||Pg(t)}function Ug(e){return 7===Wv.type&&Wv.value===e}function Ig(e){return 4===Wv.type&&Wv.value===e}function $g(){var e=[];for(Iv=Wv.start,jg("[");!Ug("]");)Ug(",")?(Sg(),e.push(null)):(e.push(ty()),Ug("]")||jg(","));return Sg(),function(e){var t=new ng("ArrayExpression");return t.elements=e,t}(e)}function Wg(){Iv=Wv.start;var e=Sg();return 8===e.type||6===e.type?(e.octal&&Ng(e,og),qg(e)):zg(e.value)}function Gg(){var e,t,n;return Iv=Wv.start,3===(e=Wv).type?(n=Wg(),jg(":"),Lg("init",n,ty())):2!==e.type&&7!==e.type?(t=Wg(),jg(":"),Lg("init",t,ty())):void Pg(e)}function Hg(){var e,t,n=[],r={},i=String;for(Iv=Wv.start,jg("{");!Ug("}");)t="$"+((e=Gg()).key.type===rg?e.key.name:i(e.key.value)),Object.prototype.hasOwnProperty.call(r,t)?Ng({},"Duplicate data property in object literal not allowed in strict mode"):r[t]=!0,n.push(e),Ug("}")||jg(",");return jg("}"),function(e){var t=new ng("ObjectExpression");return t.properties=e,t}(n)}var Vg={if:1};function Yg(){var e,t,n;if(Ug("("))return function(){jg("(");var e=ny();return jg(")"),e}();if(Ug("["))return $g();if(Ug("{"))return Hg();if(e=Wv.type,Iv=Wv.start,3===e||Vg[Wv.value])n=zg(Sg().value);else if(8===e||6===e)Wv.octal&&Ng(Wv,og),n=qg(Sg());else{if(4===e)throw new Error(lg);1===e?((t=Sg()).value="true"===t.value,n=qg(t)):5===e?((t=Sg()).value=null,n=qg(t)):Ug("/")||Ug("/=")?(n=qg(Fg()),Bg()):Pg(Sg())}return n}function Xg(){var e=[];if(jg("("),!Ug(")"))for(;Iv<$v&&(e.push(ty()),!Ug(")"));)jg(",");return jg(")"),e}function Jg(){return jg("."),function(){Iv=Wv.start;var e=Sg();return function(e){return 3===e.type||4===e.type||1===e.type||5===e.type}(e)||Pg(e),zg(e.value)}()}function Qg(){jg("[");var e=ny();return jg("]"),e}function Kg(){var e=function(){var e;for(e=Yg();;)if(Ug("."))e=Tg(".",e,Jg());else if(Ug("("))e=Rg(e,Xg());else{if(!Ug("["))break;e=Tg("[",e,Qg())}return e}();if(7===Wv.type&&(Ug("++")||Ug("--")))throw new Error(lg);return e}function Zg(){var e,t;if(7!==Wv.type&&4!==Wv.type)t=Kg();else{if(Ug("++")||Ug("--"))throw new Error(lg);if(Ug("+")||Ug("-")||Ug("~")||Ug("!"))e=Sg(),t=Zg(),t=function(e,t){var n=new ng("UnaryExpression");return n.operator=e,n.argument=t,n.prefix=!0,n}(e.value,t);else{if(Ig("delete")||Ig("void")||Ig("typeof"))throw new Error(lg);t=Kg()}}return t}function ey(e){var t=0;if(7!==e.type&&4!==e.type)return 0;switch(e.value){case"||":t=1;break;case"&&":t=2;break;case"|":t=3;break;case"^":t=4;break;case"&":t=5;break;case"==":case"!=":case"===":case"!==":t=6;break;case"<":case">":case"<=":case">=":case"instanceof":case"in":t=7;break;case"<<":case">>":case">>>":t=8;break;case"+":case"-":t=9;break;case"*":case"/":case"%":t=11}return t}function ty(){var e,t;return e=function(){var e,t,n,r,i,a,u,o,s,l;if(e=Wv,s=Zg(),0===(i=ey(r=Wv)))return s;for(r.prec=i,Sg(),t=[e,Wv],a=[s,r,u=Zg()];(i=ey(Wv))>0;){for(;a.length>2&&i<=a[a.length-2].prec;)u=a.pop(),o=a.pop().value,s=a.pop(),t.pop(),n=Og(o,s,u),a.push(n);(r=Sg()).prec=i,a.push(r),t.push(Wv),n=Zg(),a.push(n)}for(n=a[l=a.length-1],t.pop();l>1;)t.pop(),n=Og(a[l-1].value,a[l-2],n),l-=2;return n}(),Ug("?")&&(Sg(),t=ty(),jg(":"),e=function(e,t,n){var r=new ng("ConditionalExpression");return r.test=e,r.consequent=t,r.alternate=n,r}(e,t,ty())),e}function ny(){var e=ty();if(Ug(","))throw new Error(lg);return e}function ry(e){Iv=0,$v=(Uv=e).length,Wv=null,Bg();var t=ny();if(2!==Wv.type)throw new Error("Unexpect token after expression.");return t}var iy,ay={NaN:"NaN",E:"Math.E",LN2:"Math.LN2",LN10:"Math.LN10",LOG2E:"Math.LOG2E",LOG10E:"Math.LOG10E",PI:"Math.PI",SQRT1_2:"Math.SQRT1_2",SQRT2:"Math.SQRT2",MIN_VALUE:"Number.MIN_VALUE",MAX_VALUE:"Number.MAX_VALUE"};function uy(e){function t(t,n,r){return function(i){return function(t,n,r,i){var a=e(n[0]);return r&&(a=r+"("+a+")",0===r.lastIndexOf("new ",0)&&(a="("+a+")")),a+"."+t+(i<0?"":0===i?"()":"("+n.slice(1).map(e).join(",")+")")}(t,i,n,r)}}var n="new Date",r="String",i="RegExp";return{isNaN:"Number.isNaN",isFinite:"Number.isFinite",abs:"Math.abs",acos:"Math.acos",asin:"Math.asin",atan:"Math.atan",atan2:"Math.atan2",ceil:"Math.ceil",cos:"Math.cos",exp:"Math.exp",floor:"Math.floor",log:"Math.log",max:"Math.max",min:"Math.min",pow:"Math.pow",random:"Math.random",round:"Math.round",sin:"Math.sin",sqrt:"Math.sqrt",tan:"Math.tan",clamp:function(t){t.length<3&&E("Missing arguments to clamp function."),t.length>3&&E("Too many arguments to clamp function.");var n=t.map(e);return"Math.max("+n[1]+", Math.min("+n[2]+","+n[0]+"))"},now:"Date.now",utc:"Date.UTC",datetime:n,date:t("getDate",n,0),day:t("getDay",n,0),year:t("getFullYear",n,0),month:t("getMonth",n,0),hours:t("getHours",n,0),minutes:t("getMinutes",n,0),seconds:t("getSeconds",n,0),milliseconds:t("getMilliseconds",n,0),time:t("getTime",n,0),timezoneoffset:t("getTimezoneOffset",n,0),utcdate:t("getUTCDate",n,0),utcday:t("getUTCDay",n,0),utcyear:t("getUTCFullYear",n,0),utcmonth:t("getUTCMonth",n,0),utchours:t("getUTCHours",n,0),utcminutes:t("getUTCMinutes",n,0),utcseconds:t("getUTCSeconds",n,0),utcmilliseconds:t("getUTCMilliseconds",n,0),length:t("length",null,-1),parseFloat:"parseFloat",parseInt:"parseInt",upper:t("toUpperCase",r,0),lower:t("toLowerCase",r,0),substring:t("substring",r),split:t("split",r),trim:t("trim",r,0),regexp:i,test:t("test",i),if:function(t){t.length<3&&E("Missing arguments to if function."),t.length>3&&E("Too many arguments to if function.");var n=t.map(e);return"("+n[0]+"?"+n[1]+":"+n[2]+")"}}}function oy(e){var t=(e=e||{}).allowed?Ze(e.allowed):{},n=e.forbidden?Ze(e.forbidden):{},r=e.constants||ay,i=(e.functions||uy)(f),a=e.globalvar,u=e.fieldvar,o=ce(a)?a:function(e){return"".concat(a,'["').concat(e,'"]')},s={},l={},c=0;function f(e){if(Re(e))return e;var t=d[e.type];return null==t&&E("Unsupported type: "+e.type),t(e)}var d={Literal:function(e){return e.raw},Identifier:function(e){var i=e.name;return c>0?i:ke(n,i)?E("Illegal identifier: "+i):ke(r,i)?r[i]:ke(t,i)?i:(s[i]=1,o(i))},MemberExpression:function(e){var t=!e.computed,n=f(e.object);t&&(c+=1);var r=f(e.property);return n===u&&(l[function(e){var t=e&&e.length-1;return t&&('"'===e[0]&&'"'===e[t]||"'"===e[0]&&"'"===e[t])?e.slice(1,-1):e}(r)]=1),t&&(c-=1),n+(t?"."+r:"["+r+"]")},CallExpression:function(e){"Identifier"!==e.callee.type&&E("Illegal callee type: "+e.callee.type);var t=e.callee.name,n=e.arguments,r=ke(i,t)&&i[t];return r||E("Unrecognized function: "+t),ce(r)?r(n):r+"("+n.map(f).join(",")+")"},ArrayExpression:function(e){return"["+e.elements.map(f).join(",")+"]"},BinaryExpression:function(e){return"("+f(e.left)+" "+e.operator+" "+f(e.right)+")"},UnaryExpression:function(e){return"("+e.operator+f(e.argument)+")"},ConditionalExpression:function(e){return"("+f(e.test)+"?"+f(e.consequent)+":"+f(e.alternate)+")"},LogicalExpression:function(e){return"("+f(e.left)+e.operator+f(e.right)+")"},ObjectExpression:function(e){return"{"+e.properties.map(f).join(",")+"}"},Property:function(e){c+=1;var t=f(e.key);return c-=1,t+":"+f(e.value)}};function h(e){var t={code:f(e),globals:Object.keys(s),fields:Object.keys(l)};return s={},l={},t}return h.functions=i,h.constants=r,h}var sy="intersect",ly="union",cy="_vgsid_",fy=F(cy),dy="index:unit";function hy(e,t){for(var n,r,i=t.fields,a=t.values,u=i.length,o=0;o<u;++o)if((r=i[o]).getter=F.getter||F(r.field),Me(n=r.getter(e))&&(n=W(n)),Me(a[o])&&(a[o]=W(a[o])),Me(a[o][0])&&(a[o]=a[o].map(W)),"E"===r.type){if(L(a[o])?a[o].indexOf(n)<0:n!==a[o])return!1}else if("R"===r.type){if(!Ce(n,a[o]))return!1}else if("R-RE"===r.type){if(!Ce(n,a[o],!0,!1))return!1}else if("R-E"===r.type){if(!Ce(n,a[o],!1,!1))return!1}else if("R-LE"===r.type&&!Ce(n,a[o],!1,!0))return!1;return!0}var py=r.bisector(fy),my=py.left,vy=py.right;var gy=(ot(iy={},"".concat(cy,"_union"),r.union),ot(iy,"".concat(cy,"_intersect"),r.intersection),ot(iy,"E_union",(function(e,t){if(!e.length)return t;for(var n=0,r=t.length;n<r;++n)e.indexOf(t[n])<0&&e.push(t[n]);return e})),ot(iy,"E_intersect",(function(e,t){return e.length?e.filter((function(e){return t.indexOf(e)>=0})):t})),ot(iy,"R_union",(function(e,t){var n=W(t[0]),r=W(t[1]);return n>r&&(n=t[1],r=t[0]),e.length?(e[0]>n&&(e[0]=n),e[1]<r&&(e[1]=r),e):[n,r]})),ot(iy,"R_intersect",(function(e,t){var n=W(t[0]),r=W(t[1]);return n>r&&(n=t[1],r=t[0]),e.length?r<e[0]||e[1]<n?[]:(e[0]<n&&(e[0]=n),e[1]>r&&(e[1]=r),e):[n,r]})),iy);function yy(e,t,n,r){t[0].type!==Hv&&E("First argument to selection functions must be a string literal.");var i=t[0].value,a="unit",u="@unit",o=":"+i;(t.length>=2&&$(t).value)!==sy||ke(r,u)||(r["@unit"]=n.getData(i).indataRef(n,a)),ke(r,o)||(r[o]=n.getData(i).tuplesRef())}function by(e){var t=this.context.data[e];return t?t.values.value:[]}var xy=function(e){return function(t,n){return this.context.dataflow.locale()[e](n)(t)}},_y=xy("format"),ky=xy("timeFormat"),Ay=xy("utcFormat"),wy=xy("timeParse"),Dy=xy("utcParse"),Ey=new Date(2e3,0,1);function Cy(e,t,n){return Number.isInteger(e)&&Number.isInteger(t)?(Ey.setYear(2e3),Ey.setMonth(e),Ey.setDate(t),ky.call(this,Ey,n)):""}function Fy(e,t,n,r){t[0].type!==Hv&&E("First argument to data functions must be a string literal.");var i=t[0].value,a=":"+i;if(!ke(a,r))try{r[a]=n.getData(i).tuplesRef()}catch(e){}}function My(e,t,n,r){if(t[0].type===Hv)Sy(n,r,t[0].value);else for(e in n.scales)Sy(n,r,e)}function Sy(e,t,n){var r="%"+n;if(!ke(t,r))try{t[r]=e.scaleRef(n)}catch(e){}}function By(e,t){var n;return ce(e)?e:Re(e)?(n=t.scales[e])&&n.value:void 0}function Oy(e,t,n){t.__bandwidth=function(e){return e&&e.bandwidth?e.bandwidth():0},n._bandwidth=My,n._range=My,n._scale=My;var r=function(t){return"_["+(t.type===Hv?Ue("%"+t.value):Ue("%")+"+"+e(t))+"]"};return{_bandwidth:function(e){return"this.__bandwidth(".concat(r(e[0]),")")},_range:function(e){return"".concat(r(e[0]),".range()")},_scale:function(t){return"".concat(r(t[0]),"(").concat(e(t[1]),")")}}}function Ry(e,t){return function(n,r,i){if(n){var a=By(n,(i||this).context);return a&&a.path[e](r)}return t(r)}}var zy=Ry("area",f.geoArea),qy=Ry("bounds",f.geoBounds),Ty=Ry("centroid",f.geoCentroid);function Ly(e,t,n){try{e[t].apply(e,["EXPRESSION"].concat([].slice.call(n)))}catch(t){e.warn(t)}return n[n.length-1]}function Ny(e){var t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Py(e){var t=d.rgb(e);return.2126*Ny(t.r)+.7152*Ny(t.g)+.0722*Ny(t.b)}function jy(e,t){return e===t||e!=e&&t!=t||(L(e)?!(!L(t)||e.length!==t.length)&&function(e,t){for(var n=0,r=e.length;n<r;++n)if(!jy(e[n],t[n]))return!1;return!0}(e,t):!(!N(e)||!N(t))&&Uy(e,t))}function Uy(e,t){for(var n in e)if(!jy(e[n],t[n]))return!1;return!0}function Iy(e){return function(t){return Uy(e,t)}}var $y={};function Wy(e){return L(e)||ArrayBuffer.isView(e)?e:null}function Gy(e){return Wy(e)||(Re(e)?e:null)}var Hy=function(e){return e.data};function Vy(e,t){var n=by.call(t,e);return n.root&&n.root.lookup||{}}var Yy=function(){return"undefined"!=typeof window&&window||null};function Xy(e,t,n){if(!e)return[];var r=st(e,2),i=r[0],a=r[1],u=(new Hs).set(i[0],i[1],a[0],a[1]);return kd(n||this.context.dataflow.scenegraph().root,u,function(e){var t=null;if(e){var n=se(e.marktype),r=se(e.markname);t=function(e){return(!n.length||n.some((function(t){return e.marktype===t})))&&(!r.length||r.some((function(t){return e.name===t})))}}return t}(t))}var Jy={random:function(){return e.random()},cumulativeNormal:_i,cumulativeLogNormal:Ci,cumulativeUniform:Ri,densityNormal:xi,densityLogNormal:Ei,densityUniform:Oi,quantileNormal:ki,quantileLogNormal:Fi,quantileUniform:zi,sampleNormal:bi,sampleLogNormal:Di,sampleUniform:Bi,isArray:L,isBoolean:Fe,isDate:Me,isDefined:function(e){return void 0!==e},isNumber:Be,isObject:N,isRegExp:Oe,isString:Re,isTuple:br,isValid:function(e){return null!=e&&e==e},toBoolean:Ie,toDate:function(e){return Qe(e)},toNumber:W,toString:Ke,indexof:function(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return(t=Gy(e)).indexOf.apply(t,r)},join:function(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return(t=Wy(e)).join.apply(t,r)},lastindexof:function(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return(t=Gy(e)).lastIndexOf.apply(t,r)},replace:function(e,t,n){return ce(n)&&E("Function argument passed to replace."),String(e).replace(t,n)},reverse:function(e){return Wy(e).slice().reverse()},slice:function(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return(t=Gy(e)).slice.apply(t,r)},flush:De,lerp:qe,merge:function(){var e=[].slice.call(arguments);return e.unshift({}),ye.apply(void 0,lt(e))},pad:Pe,peek:$,pluck:function(e,t){var n=$y[t]||($y[t]=F(t));return L(e)?e.map(n):n(e)},span:je,inrange:Ce,truncate:et,rgb:d.rgb,lab:d.lab,hcl:d.hcl,hsl:d.hsl,luminance:Py,contrast:function(e,t){var n=Py(e),r=Py(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)},sequence:r.range,format:_y,utcFormat:Ay,utcParse:Dy,utcOffset:rn,utcSequence:on,timeFormat:ky,timeParse:wy,timeOffset:nn,timeSequence:un,timeUnitSpecifier:Ft,monthFormat:function(e){return Cy.call(this,e,1,"%B")},monthAbbrevFormat:function(e){return Cy.call(this,e,1,"%b")},dayFormat:function(e){return Cy.call(this,0,2+e,"%A")},dayAbbrevFormat:function(e){return Cy.call(this,0,2+e,"%a")},quarter:ue,utcquarter:oe,week:Ot,utcweek:Nt,dayofyear:Bt,utcdayofyear:Lt,warn:function(){return Ly(this.context.dataflow,"warn",arguments)},info:function(){return Ly(this.context.dataflow,"info",arguments)},debug:function(){return Ly(this.context.dataflow,"debug",arguments)},extent:function(e){return be(e)},inScope:function(e){var t=this.context.group,n=!1;if(t)for(;e;){if(e===t){n=!0;break}e=e.mark.group}return n},intersect:Xy,clampRange:le,pinchDistance:function(e){var t=e.touches,n=t[0].clientX-t[1].clientX,r=t[0].clientY-t[1].clientY;return Math.sqrt(n*n+r*r)},pinchAngle:function(e){var t=e.touches;return Math.atan2(t[0].clientY-t[1].clientY,t[0].clientX-t[1].clientX)},screen:function(){var e=Yy();return e?e.screen:{}},containerSize:function(){var e=this.context.dataflow,t=e.container&&e.container();return t?[t.clientWidth,t.clientHeight]:[void 0,void 0]},windowSize:function(){var e=Yy();return e?[e.innerWidth,e.innerHeight]:[void 0,void 0]},bandspace:function(e,t,n){return Su(e||0,t||0,n||0)},setdata:function(e,t){var n=this.context.dataflow,r=this.context.data[e].input;return n.pulse(r,n.changeset().remove(R).insert(t)),1},pathShape:function(e){var t=null;return function(n){return n?ms(n,t=t||is(e)):e}},panLinear:Q,panLog:K,panPow:Z,panSymlog:ee,zoomLinear:ne,zoomLog:re,zoomPow:ie,zoomSymlog:ae,encode:function(e,t,n){if(e){var r=this.context.dataflow,i=e.mark.source;r.pulse(i,r.changeset().encode(e,t))}return void 0!==n?n:e},modify:function(e,t,n,r,i,a){var u,o,s=this.context.dataflow,l=this.context.data[e],c=l.input,f=s.stamp(),d=l.changes;if(!1===s._trigger||!(c.value.length||t||r))return 0;if((!d||d.stamp<f)&&(l.changes=d=s.changeset(),d.stamp=f,s.runAfter((function(){l.modified=!0,s.pulse(c,d).run()}),!0,1)),n&&(u=!0===n?R:L(n)||br(n)?n:Iy(n),d.remove(u)),t&&d.insert(t),r&&(u=Iy(r),c.value.some(u)?d.remove(u):d.insert(r)),i)for(o in a)d.modify(i,o,a[o]);return 1},lassoAppend:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:5,i=e[e.length-1];return void 0===i||Math.sqrt(Math.pow(i[0]-t,2)+Math.pow(i[1]-n,2))>r?(e.push([t,n]),lt(e)):e},lassoPath:function(e){return(null!=e?e:[]).reduce((function(t,n,r){var i=st(n,2),a=i[0],u=i[1];return t+(0==r?"M ".concat(a,",").concat(u," "):r===e.length-1?" Z":"L ".concat(a,",").concat(u," "))}),"")},intersectLasso:function(e,t,n){var r,i=n.x,a=n.y,u=n.mark,o=(new Hs).set(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER,Number.MIN_SAFE_INTEGER,Number.MIN_SAFE_INTEGER),s=dt(t);try{for(s.s();!(r=s.n()).done;){var l=st(r.value,2),c=l[0],f=l[1];c<o.x1&&(o.x1=c),c>o.x2&&(o.x2=c),f<o.y1&&(o.y1=f),f>o.y2&&(o.y2=f)}}catch(e){s.e(e)}finally{s.f()}return o.translate(i,a),Xy([[o.x1,o.y1],[o.x2,o.y2]],e,u).filter((function(e){return function(e,t,n){for(var r=0,i=0,a=n.length-1;i<n.length;a=i++){var u=st(n[a],2),o=u[0],s=u[1],l=st(n[i],2),c=l[0],f=l[1];f>t!=s>t&&e<(o-c)*(t-f)/(s-f)+c&&r++}return 1&r}(e.x,e.y,t)}))}},Qy=["view","item","group","xy","x","y"],Ky="this.",Zy={},eb={forbidden:["_"],allowed:["datum","event","item"],fieldvar:"datum",globalvar:function(e){return"_[".concat(Ue("$"+e),"]")},functions:function(e){var t=uy(e);for(var n in Qy.forEach((function(e){return t[e]="event.vega."+e})),Jy)t[n]=Ky+n;return ye(t,Oy(e,Jy,Zy)),t},constants:ay,visitors:Zy},tb=oy(eb);function nb(e,t,n){return 1===arguments.length?Jy[e]:(Jy[e]=t,n&&(Zy[e]=n),tb&&(tb.functions[e]=Ky+e),this)}function rb(e,t){var n,r={};try{n=ry(e=Re(e)?e:Ue(e)+"")}catch(t){E("Expression parse error: "+e)}n.visit((function(e){if(e.type===Jv){var n=e.callee.name,i=eb.visitors[n];i&&i(n,e.arguments,t,r)}}));var i=tb(n);return i.globals.forEach((function(e){var n="$"+e;!ke(r,n)&&t.getSignal(e)&&(r[n]=t.signalRef(e))})),{$expr:ye({code:i.code},t.options.ast?{ast:n}:null),$fields:i.fields,$params:r}}nb("bandwidth",(function(e,t){var n=By(e,(t||this).context);return n&&n.bandwidth?n.bandwidth():0}),My),nb("copy",(function(e,t){var n=By(e,(t||this).context);return n?n.copy():void 0}),My),nb("domain",(function(e,t){var n=By(e,(t||this).context);return n?n.domain():[]}),My),nb("range",(function(e,t){var n=By(e,(t||this).context);return n&&n.range?n.range():[]}),My),nb("invert",(function(e,t,n){var r=By(e,(n||this).context);return r?L(t)?(r.invertRange||r.invert)(t):(r.invert||r.invertExtent)(t):void 0}),My),nb("scale",(function(e,t,n){var r=By(e,(n||this).context);return r?r(t):void 0}),My),nb("gradient",(function(e,t,n,r,i){e=By(e,(i||this).context);var a=Jo(t,n),u=e.domain(),o=u[0],s=$(u),l=S;return s-o?l=bo(e,o,s):e=(e.interpolator?ao("sequential")().interpolator(e.interpolator()):ao("linear")().interpolate(e.interpolate()).range(e.range())).domain([o=0,s=1]),e.ticks&&(o!==(u=e.ticks(+r||15))[0]&&u.unshift(o),s!==$(u)&&u.push(s)),u.forEach((function(t){return a.stop(l(t),e(t))})),a}),My),nb("geoArea",zy,My),nb("geoBounds",qy,My),nb("geoCentroid",Ty,My),nb("geoShape",(function(e,t,n){var r=By(e,(n||this).context);return function(e){return r?r.path.context(e)(t):""}}),My),nb("indata",(function(e,t,n){var r=this.context.data[e]["index:"+t],i=r?r.value.get(n):void 0;return i?i.count:i}),(function(e,t,n,r){t[0].type!==Hv&&E("First argument to indata must be a string literal."),t[1].type!==Hv&&E("Second argument to indata must be a string literal.");var i=t[0].value,a=t[1].value,u="@"+a;ke(u,r)||(r[u]=n.getData(i).indataRef(n,a))})),nb("data",by,Fy),nb("treePath",(function(e,t,n){var r=Vy(e,this),i=r[t],a=r[n];return i&&a?i.path(a).map(Hy):void 0}),Fy),nb("treeAncestors",(function(e,t){var n=Vy(e,this)[t];return n?n.ancestors().map(Hy):void 0}),Fy),nb("vlSelectionTest",(function(e,t,n){for(var r,i,a,u,o,s=this.context.data[e],l=s?s.values.value:[],c=s?s[dy]&&s[dy].value:void 0,f=n===sy,d=l.length,h=0;h<d;++h)if(r=l[h],c&&f){if(-1===(a=(i=i||{})[u=r.unit]||0))continue;if(o=hy(t,r),i[u]=o?-1:++a,o&&1===c.size)return!0;if(!o&&a===c.get(u).count)return!1}else if(f^(o=hy(t,r)))return o;return d&&f}),yy),nb("vlSelectionIdTest",(function(e,t,n){var r=this.context.data[e],i=r?r.values.value:[],a=r?r[dy]&&r[dy].value:void 0,u=n===sy,o=fy(t),s=my(i,o);if(s===i.length)return!1;if(fy(i[s])!==o)return!1;if(a&&u){if(1===a.size)return!0;if(vy(i,o)-s<a.size)return!1}return!0}),yy),nb("vlSelectionResolve",(function(e,t,n,r){for(var i,a,u,o,s,l,c,f,d,h,p,m,v=this.context.data[e],g=v?v.values.value:[],y={},b={},x={},_=g.length,k=0;k<_;++k)if(o=(i=g[k]).unit,a=i.fields,u=i.values,a&&u){for(p=0,m=a.length;p<m;++p)s=a[p],f=(c=y[s.field]||(y[s.field]={}))[o]||(c[o]=[]),x[s.field]=d=s.type.charAt(0),h=gy["".concat(d,"_union")],c[o]=h(f,se(u[p]));n&&(f=b[o]||(b[o]=[])).push(se(u).reduce((function(e,t,n){return e[a[n].field]=t,e}),{}))}else s=cy,l=fy(i),(f=(c=y[s]||(y[s]={}))[o]||(c[o]=[])).push(l),n&&(f=b[o]||(b[o]=[])).push(ot({},cy,l));return t=t||ly,y._vgsid_?y._vgsid_=gy["".concat(cy,"_").concat(t)].apply(gy,lt(Object.values(y._vgsid_))):Object.keys(y).forEach((function(e){y[e]=Object.keys(y[e]).map((function(t){return y[e][t]})).reduce((function(n,r){return void 0===n?r:gy["".concat(x[e],"_").concat(t)](n,r)}))})),g=Object.keys(b),n&&g.length&&(y[r?"vlPoint":"vlMulti"]=t===ly?ot({},"or",g.reduce((function(e,t){return e.push.apply(e,lt(b[t])),e}),[])):ot({},"and",g.map((function(e){return ot({},"or",b[e])})))),y}),yy),nb("vlSelectionTuples",(function(e,t){return e.map((function(e){return ye(t.fields?{values:t.fields.map((function(t){return(t.getter||(t.getter=F(t.field)))(e.datum)}))}:ot({},cy,fy(e.datum)),t)}))}));var ib=Ze(["rule"]),ab=Ze(["group","image","rect"]);function ub(e){return(e+"").toLowerCase()}function ob(e,t,n){n.endsWith(";")||(n="return("+n+");");var r=Function.apply(void 0,lt(t.concat(n)));return e&&e.functions?r.bind(e.functions):r}var sb={operator:function(e,t){return ob(e,["_"],t.code)},parameter:function(e,t){return ob(e,["datum","_"],t.code)},event:function(e,t){return ob(e,["event"],t.code)},handler:function(e,t){return ob(e,["_","event"],"var datum=event.item&&event.item.datum;return ".concat(t.code,";"))},encode:function(e,t){var n=t.marktype,r=t.channels,i="var o=item,datum=o.datum,m=0,$;";for(var a in r){var u="o["+Ue(a)+"]";i+="$=".concat(r[a].code,";if(").concat(u,"!==$)").concat(u,"=$,m=1;")}return i+=function(e,t){var n="";return ib[t]||(e.x2&&(e.x?(ab[t]&&(n+="if(o.x>o.x2)$=o.x,o.x=o.x2,o.x2=$;"),n+="o.width=o.x2-o.x;"):n+="o.x=o.x2-(o.width||0);"),e.xc&&(n+="o.x=o.xc-(o.width||0)/2;"),e.y2&&(e.y?(ab[t]&&(n+="if(o.y>o.y2)$=o.y,o.y=o.y2,o.y2=$;"),n+="o.height=o.y2-o.y;"):n+="o.y=o.y2-(o.height||0);"),e.yc&&(n+="o.y=o.yc-(o.height||0)/2;")),n}(r,n),ob(e,["item","_"],i+="return m;")},codegen:{get:function(e){var t="[".concat(e.map(Ue).join("]["),"]"),n=Function("_","return _".concat(t,";"));return n.path=t,n},comparator:function(e,t){var n,r=Function("a","b","var u, v; return "+e.map((function(e,r){var i,a,u=t[r];return e.path?(i="a".concat(e.path),a="b".concat(e.path)):((n=n||{})["f"+r]=e,i="this.f".concat(r,"(a)"),a="this.f".concat(r,"(b)")),function(e,t,n,r){return"((u = ".concat(e,") < (v = ").concat(t,") || u == null) && v != null ? ").concat(n,"\n : (u > v || v == null) && u != null ? ").concat(r,"\n : ((v = v instanceof Date ? +v : v), (u = u instanceof Date ? +u : u)) !== u && v === v ? ").concat(n,"\n : v !== v && u === u ? ").concat(r," : ")}(i,a,-u,u)})).join("")+"0;");return n?r.bind(n):r}}};function lb(e,t,n){if(!e||!N(e))return e;for(var r,i=0,a=cb.length;i<a;++i)if(ke(e,(r=cb[i]).key))return r.parse(e,t,n);return e}var cb=[{key:"$ref",parse:function(e,t){return t.get(e.$ref)||E("Operator not defined: "+e.$ref)}},{key:"$key",parse:function(e,t){var n="k:"+e.$key+"_"+!!e.$flat;return t.fn[n]||(t.fn[n]=ze(e.$key,e.$flat,t.expr.codegen))}},{key:"$expr",parse:function(e,t,n){e.$params&&t.parseParameters(e.$params,n);var r="e:"+e.$expr.code;return t.fn[r]||(t.fn[r]=x(t.parameterExpression(e.$expr),e.$fields))}},{key:"$field",parse:function(e,t){if(!e.$field)return null;var n="f:"+e.$field+"_"+e.$name;return t.fn[n]||(t.fn[n]=F(e.$field,e.$name,t.expr.codegen))}},{key:"$encode",parse:function(e,t){var n=e.$encode,r={};for(var i in n){var a=n[i];r[i]=x(t.encodeExpression(a.$expr),a.$fields),r[i].output=a.$output}return r}},{key:"$compare",parse:function(e,t){var n="c:"+e.$compare+"_"+e.$order,r=se(e.$compare).map((function(e){return e&&e.$tupleid?xr:e}));return t.fn[n]||(t.fn[n]=fe(r,e.$order,t.expr.codegen))}},{key:"$context",parse:function(e,t){return t}},{key:"$subflow",parse:function(e,t){var n=e.$subflow;return function(e,r,i){var a=t.fork().parse(n),u=a.get(n.operators[0].id),o=a.signals.parent;return o&&o.set(i),u.detachSubflow=function(){return t.detach(a)},u}}},{key:"$tupleid",parse:function(){return xr}}];var fb={skip:!0};function db(e,t,n,r){return new hb(e,t,n,r)}function hb(e,t,n,r){this.dataflow=e,this.transforms=t,this.events=e.events.bind(e),this.expr=r||sb,this.signals={},this.scales={},this.nodes={},this.data={},this.fn={},n&&(this.functions=Object.create(n),this.functions.context=this)}function pb(e){this.dataflow=e.dataflow,this.transforms=e.transforms,this.events=e.events,this.expr=e.expr,this.signals=Object.create(e.signals),this.scales=Object.create(e.scales),this.nodes=Object.create(e.nodes),this.data=Object.create(e.data),this.fn=Object.create(e.fn),e.functions&&(this.functions=Object.create(e.functions),this.functions.context=this)}function mb(e,t){e&&(null==t?e.removeAttribute("aria-label"):e.setAttribute("aria-label",t))}hb.prototype=pb.prototype={fork:function(){var e=new pb(this);return(this.subcontext||(this.subcontext=[])).push(e),e},detach:function(e){this.subcontext=this.subcontext.filter((function(t){return t!==e}));for(var t=Object.keys(e.nodes),n=0,r=t;n<r.length;n++){var i=r[n];e.nodes[i]._targets=null}for(var a=0,u=t;a<u.length;a++){var o=u[a];e.nodes[o].detach()}e.nodes=null},get:function(e){return this.nodes[e]},set:function(e,t){return this.nodes[e]=t},add:function(e,t){var n=this,r=n.dataflow,i=e.value;if(n.set(e.id,t),function(e){return"collect"===ub(e)}(e.type)&&i&&(i.$ingest?r.ingest(t,i.$ingest,i.$format):i.$request?r.preload(t,i.$request,i.$format):r.pulse(t,r.changeset().insert(i))),e.root&&(n.root=t),e.parent){var a=n.get(e.parent.$ref);a?(r.connect(a,[t]),t.targets().add(a)):(n.unresolved=n.unresolved||[]).push((function(){a=n.get(e.parent.$ref),r.connect(a,[t]),t.targets().add(a)}))}if(e.signal&&(n.signals[e.signal]=t),e.scale&&(n.scales[e.scale]=t),e.data){var u=function(r){var i=n.data[r]||(n.data[r]={});e.data[r].forEach((function(e){return i[e]=t}))};for(var o in e.data)u(o)}},resolve:function(){return(this.unresolved||[]).forEach((function(e){return e()})),delete this.unresolved,this},operator:function(e,t){this.add(e,this.dataflow.add(e.value,t))},transform:function(e,t){this.add(e,this.dataflow.add(this.transforms[ub(t)]))},stream:function(e,t){this.set(e.id,t)},update:function(e,t,n,r,i){this.dataflow.on(t,n,r,i,e.options)},operatorExpression:function(e){return this.expr.operator(this,e)},parameterExpression:function(e){return this.expr.parameter(this,e)},eventExpression:function(e){return this.expr.event(this,e)},handlerExpression:function(e){return this.expr.handler(this,e)},encodeExpression:function(e){return this.expr.encode(this,e)},parse:function(e){var t=this,n=e.operators||[];return e.background&&(t.background=e.background),e.eventConfig&&(t.eventConfig=e.eventConfig),e.locale&&(t.locale=e.locale),n.forEach((function(e){return t.parseOperator(e)})),n.forEach((function(e){return t.parseOperatorParameters(e)})),(e.streams||[]).forEach((function(e){return t.parseStream(e)})),(e.updates||[]).forEach((function(e){return t.parseUpdate(e)})),t.resolve()},parseOperator:function(e){var t=this;!function(e){return"operator"===ub(e)}(e.type)&&e.type?t.transform(e,e.type):t.operator(e,e.update?t.operatorExpression(e.update):null)},parseOperatorParameters:function(e){var t=this;if(e.params){var n=t.get(e.id);n||E("Invalid operator id: "+e.id),t.dataflow.connect(n,n.parameters(t.parseParameters(e.params),e.react,e.initonly))}},parseParameters:function(e,t){t=t||{};var n=this;for(var r in e){var i=e[r];t[r]=L(i)?i.map((function(e){return lb(e,n,t)})):lb(i,n,t)}return t},parseStream:function(e){var t,n=this,r=null!=e.filter?n.eventExpression(e.filter):void 0,i=null!=e.stream?n.get(e.stream):void 0;e.source?i=n.events(e.source,e.type,r):e.merge&&(i=(t=e.merge.map((function(e){return n.get(e)})))[0].merge.apply(t[0],t.slice(1))),e.between&&(t=e.between.map((function(e){return n.get(e)})),i=i.between(t[0],t[1])),e.filter&&(i=i.filter(r)),null!=e.throttle&&(i=i.throttle(+e.throttle)),null!=e.debounce&&(i=i.debounce(+e.debounce)),null==i&&E("Invalid stream definition: "+JSON.stringify(e)),e.consume&&i.consume(!0),n.stream(e,i)},parseUpdate:function(e){var t,n=this,r=N(r=e.source)?r.$ref:r,i=n.get(r),a=e.update,u=void 0;i||E("Source not defined: "+e.source),t=e.target&&e.target.$expr?n.eventExpression(e.target.$expr):n.get(e.target),a&&a.$expr&&(a.$params&&(u=n.parseParameters(a.$params)),a=n.handlerExpression(a.$expr)),n.update(e,i,t,a,u)},getState:function(e){var t=this,n={};if(e.signals){var r=n.signals={};Object.keys(t.signals).forEach((function(n){var i=t.signals[n];e.signals(n,i)&&(r[n]=i.value)}))}if(e.data){var i=n.data={};Object.keys(t.data).forEach((function(n){var r=t.data[n];e.data(n,r)&&(i[n]=r.input.value)}))}return t.subcontext&&!1!==e.recurse&&(n.subcontext=t.subcontext.map((function(t){return t.getState(e)}))),n},setState:function(e){var t=this,n=t.dataflow,r=e.data,i=e.signals;Object.keys(i||{}).forEach((function(e){n.update(t.signals[e],i[e],fb)})),Object.keys(r||{}).forEach((function(e){n.pulse(t.data[e].input,n.changeset().remove(R).insert(r[e]))})),(e.subcontext||[]).forEach((function(e,n){var r=t.subcontext[n];r&&r.setState(e)}))}};var vb="default";function gb(e,t){var n=e.globalCursor()?"undefined"!=typeof document&&document.body:e.container();if(n)return null==t?n.style.removeProperty("cursor"):n.style.cursor=t}function yb(e,t){var n=e._runtime.data;return ke(n,t)||E("Unrecognized data set: "+t),n[t]}function bb(e,t){Cr(t)||E("Second argument to changes must be a changeset.");var n=yb(this,e);return n.modified=!0,this.pulse(n.input,t)}function xb(e){var t=e.padding();return Math.max(0,e._viewWidth+t.left+t.right)}function _b(e){var t=e.padding();return Math.max(0,e._viewHeight+t.top+t.bottom)}function kb(e){var t=e.padding(),n=e._origin;return[t.left+n[0],t.top+n[1]]}function Ab(e){var t=kb(e),n=xb(e),r=_b(e);e._renderer.background(e.background()),e._renderer.resize(n,r,t),e._handler.origin(t),e._resizeListeners.forEach((function(t){try{t(n,r)}catch(t){e.error(t)}}))}function wb(e,t,n){var r,i,a=e._renderer,u=a&&a.canvas();return u&&(i=kb(e),(r=af(t.changedTouches?t.changedTouches[0]:t,u))[0]-=i[0],r[1]-=i[1]),t.dataflow=e,t.item=n,t.vega=function(e,t,n){var r=t?"group"===t.mark.marktype?t:t.mark.group:null;function i(e){var n,i=r;if(e)for(n=t;n;n=n.mark.group)if(n.mark.name===e){i=n;break}return i&&i.mark&&i.mark.interactive?i:{}}function a(e){if(!e)return n;Re(e)&&(e=i(e));for(var t=n.slice();e;)t[0]-=e.x||0,t[1]-=e.y||0,e=e.mark&&e.mark.group;return t}return{view:ve(e),item:ve(t||{}),group:i,xy:a,x:function(e){return a(e)[0]},y:function(e){return a(e)[1]}}}(e,n,r),t}var Db="view",Eb={trap:!1};function Cb(e,t,n,r){e._eventListeners.push({type:n,sources:se(t),handler:r})}function Fb(e,t,n){var r=e._eventConfig&&e._eventConfig[t];return!(!1===r||N(r)&&!r[n])||(e.warn("Blocked ".concat(t," ").concat(n," event listener.")),!1)}function Mb(e){return e.item}function Sb(e){return e.item.mark.source}function Bb(e){return function(t,n){return n.vega.view().changeset().encode(n.item,e)}}function Ob(e,t,n){var r=document.createElement(e);for(var i in t)r.setAttribute(i,t[i]);return null!=n&&(r.textContent=n),r}function Rb(e,t,n,r){var i=n.event||"input",a=function(){return e.update(t.value)};r.signal(n.signal,t.value),t.addEventListener(i,a),Cb(r,t,i,a),e.set=function(e){t.value=e,t.dispatchEvent(function(e){return"undefined"!=typeof Event?new Event(e):{type:e}}(i))}}function zb(e,t,n,r){var i=r.signal(n.signal),a=Ob("div",{class:"vega-bind"}),u="radio"===n.input?a:a.appendChild(Ob("label"));u.appendChild(Ob("span",{class:"vega-bind-name"},n.name||n.signal)),t.appendChild(a);var o=qb;switch(n.input){case"checkbox":o=Tb;break;case"select":o=Lb;break;case"radio":o=Nb;break;case"range":o=Pb}o(e,u,n,i)}function qb(e,t,n,r){var i=Ob("input");for(var a in n)"signal"!==a&&"element"!==a&&i.setAttribute("input"===a?"type":a,n[a]);i.setAttribute("name",n.signal),i.value=r,t.appendChild(i),i.addEventListener("input",(function(){return e.update(i.value)})),e.elements=[i],e.set=function(e){return i.value=e}}function Tb(e,t,n,r){var i={type:"checkbox",name:n.signal};r&&(i.checked=!0);var a=Ob("input",i);t.appendChild(a),a.addEventListener("change",(function(){return e.update(a.checked)})),e.elements=[a],e.set=function(e){return a.checked=!!e||null}}function Lb(e,t,n,r){var i=Ob("select",{name:n.signal}),a=n.labels||[];n.options.forEach((function(e,t){var n={value:e};jb(e,r)&&(n.selected=!0),i.appendChild(Ob("option",n,(a[t]||e)+""))})),t.appendChild(i),i.addEventListener("change",(function(){e.update(n.options[i.selectedIndex])})),e.elements=[i],e.set=function(e){for(var t=0,r=n.options.length;t<r;++t)if(jb(n.options[t],e))return void(i.selectedIndex=t)}}function Nb(e,t,n,r){var i=Ob("span",{class:"vega-bind-radio"}),a=n.labels||[];t.appendChild(i),e.elements=n.options.map((function(t,u){var o={type:"radio",name:n.signal,value:t};jb(t,r)&&(o.checked=!0);var s=Ob("input",o);s.addEventListener("change",(function(){return e.update(t)}));var l=Ob("label",{},(a[u]||t)+"");return l.prepend(s),i.appendChild(l),s})),e.set=function(t){for(var n=e.elements,r=n.length,i=0;i<r;++i)jb(n[i].value,t)&&(n[i].checked=!0)}}function Pb(e,t,n,i){i=void 0!==i?i:(+n.max+ +n.min)/2;var a=null!=n.max?n.max:Math.max(100,+i)||100,u=n.min||Math.min(0,a,+i)||0,o=n.step||r.tickStep(u,a,100),s=Ob("input",{type:"range",name:n.signal,min:u,max:a,step:o});s.value=i;var l=Ob("span",{},+i);t.appendChild(s),t.appendChild(l);var c=function(){l.textContent=s.value,e.update(+s.value)};s.addEventListener("input",c),s.addEventListener("change",c),e.elements=[s],e.set=function(e){s.value=e,l.textContent=e}}function jb(e,t){return e===t||e+""==t+""}function Ub(e,t,n,r,i,a){return(t=t||new r(e.loader())).initialize(n,xb(e),_b(e),kb(e),i,a).background(e.background())}function Ib(e,t){return t?function(){try{t.apply(this,arguments)}catch(t){e.error(t)}}:null}function $b(e,t,n){if("string"==typeof t){if("undefined"==typeof document)return e.error("DOM document instance not found."),null;if(!(t=document.querySelector(t)))return e.error("Signal bind element not found: "+t),null}if(t&&n)try{t.textContent=""}catch(n){t=null,e.error(n)}return t}var Wb=function(e){return+e||0};function Gb(e){return N(e)?{top:Wb(e.top),bottom:Wb(e.bottom),left:Wb(e.left),right:Wb(e.right)}:function(e){return{top:e,bottom:e,left:e,right:e}}(Wb(e))}function Hb(e,t,n,r){return Vb.apply(this,arguments)}function Vb(){return Vb=ut(regeneratorRuntime.mark((function e(t,n,r,i){var a,u;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=_d(n),(u=a&&a.headless)||E("Unrecognized renderer type: "+n),e.next=4,t.runAsync();case 4:return e.abrupt("return",Ub(t,null,null,u,r,i).renderAsync(t._scenegraph.root));case 5:case"end":return e.stop()}}),e)}))),Vb.apply(this,arguments)}function Yb(){return Yb=ut(regeneratorRuntime.mark((function e(t,n){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t!==bd.Canvas&&t!==bd.SVG&&t!==bd.PNG&&E("Unrecognized image type: "+t),e.next=3,Hb(this,t,n);case 3:return r=e.sent,e.abrupt("return",t===bd.SVG?Xb(r.svg(),"image/svg+xml"):r.canvas().toDataURL("image/png"));case 5:case"end":return e.stop()}}),e,this)}))),Yb.apply(this,arguments)}function Xb(e,t){var n=new Blob([e],{type:t});return window.URL.createObjectURL(n)}function Jb(){return(Jb=ut(regeneratorRuntime.mark((function e(t,n){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Hb(this,bd.Canvas,t,n);case 2:return r=e.sent,e.abrupt("return",r.canvas());case 4:case"end":return e.stop()}}),e,this)})))).apply(this,arguments)}function Qb(){return(Qb=ut(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Hb(this,bd.SVG,t);case 2:return n=e.sent,e.abrupt("return",n.svg());case 4:case"end":return e.stop()}}),e,this)})))).apply(this,arguments)}var Kb="width",Zb="height",ex="padding",tx={skip:!0};function nx(e,t){var n=e.autosize(),r=e.padding();return t-(n&&n.contains===ex?r.left+r.right:0)}function rx(e,t){var n=e.autosize(),r=e.padding();return t-(n&&n.contains===ex?r.top+r.bottom:0)}function ix(e,t){return t.modified&&L(t.input.value)&&e.indexOf("_:vega:_")}function ax(e,t){return!("parent"===e||t instanceof ai.proxy)}function ux(e,t,n,r){var i=e.element();i&&i.setAttribute("title",function(e){return null==e?"":L(e)?ox(e):N(e)&&!Me(e)?(t=e,Object.keys(t).map((function(e){var n=t[e];return e+": "+(L(n)?ox(n):sx(n))})).join("\n")):e+"";var t}(r))}function ox(e){return"["+e.map(sx).join(", ")+"]"}function sx(e){return L(e)?"[…]":N(e)&&!Me(e)?"{…}":e}function lx(e,t){var n=this;if(t=t||{},ni.call(n),t.loader&&n.loader(t.loader),t.logger&&n.logger(t.logger),null!=t.logLevel&&n.logLevel(t.logLevel),t.locale||e.locale){var r=ye({},e.locale,t.locale);n.locale(Tn(r.number,r.time))}n._el=null,n._elBind=null,n._renderType=t.renderer||bd.Canvas,n._scenegraph=new Qc;var i=n._scenegraph.root;n._renderer=null,n._tooltip=t.tooltip||ux,n._redraw=!0,n._handler=(new wf).scene(i),n._globalCursor=!1,n._preventDefault=!1,n._timers=[],n._eventListeners=[],n._resizeListeners=[],n._eventConfig=function(e){var t=ye({defaults:{}},e),n=function(e,t){t.forEach((function(t){L(e[t])&&(e[t]=Ze(e[t]))}))};return n(t.defaults,["prevent","allow"]),n(t,["view","window","selector"]),t}(e.eventConfig),n.globalCursor(n._eventConfig.globalCursor);var a=function(e,t,n){return db(e,ai,Jy,n).parse(t)}(n,e,t.expr);n._runtime=a,n._signals=a.signals,n._bind=(e.bindings||[]).map((function(e){return{state:null,param:ye({},e)}})),a.root&&a.root.set(i),i.source=a.data.root.input,n.pulse(a.data.root.input,n.changeset().insert(i.items)),n._width=n.width(),n._height=n.height(),n._viewWidth=nx(n,n._width),n._viewHeight=rx(n,n._height),n._origin=[0,0],n._resize=0,n._autosize=1,function(e){var t=e._signals,n=t.width,r=t.height,i=t.padding;function a(){e._autosize=e._resize=1}e._resizeWidth=e.add(null,(function(t){e._width=t.size,e._viewWidth=nx(e,t.size),a()}),{size:n}),e._resizeHeight=e.add(null,(function(t){e._height=t.size,e._viewHeight=rx(e,t.size),a()}),{size:r});var u=e.add(null,a,{pad:i});e._resizeWidth.rank=n.rank+1,e._resizeHeight.rank=r.rank+1,u.rank=i.rank+1}(n),function(e){e.add(null,(function(t){return e._background=t.bg,e._resize=1,t.bg}),{bg:e._signals.background})}(n),function(e){var t=e._signals.cursor||(e._signals.cursor=e.add({user:vb,item:null}));e.on(e.events("view","mousemove"),t,(function(e,n){var r=t.value,i=r?Re(r)?r:r.user:vb,a=n.item&&n.item.cursor||null;return r&&i===r.user&&a==r.item?r:{user:i,item:a}})),e.add(null,(function(t){var n=t.cursor,r=this.value;return Re(n)||(r=n.item,n=n.user),gb(e,n&&n!==vb?n:r||n),r}),{cursor:t})}(n),n.description(e.description),t.hover&&n.hover(),t.container&&n.initialize(t.container,t.bind)}function cx(e,t){return ke(e._signals,t)?e._signals[t]:E("Unrecognized signal name: "+Ue(t))}function fx(e,t){var n=(e._targets||[]).filter((function(e){return e._update&&e._update.handler===t}));return n.length?n[0]:null}function dx(e,t,n,r){var i=fx(n,r);return i||((i=Ib(e,(function(){return r(t,n.value)}))).handler=r,e.on(n,null,i)),e}function hx(e,t,n){var r=fx(t,n);return r&&t._targets.remove(r),e}Ee(lx,ni,{evaluate:function(e,t,n){var r=this;return ut(regeneratorRuntime.mark((function i(){return regeneratorRuntime.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,ni.prototype.evaluate.call(r,e,t);case 2:if(!r._redraw&&!r._resize){i.next=14;break}if(i.prev=3,!r._renderer){i.next=8;break}return r._resize&&(r._resize=0,Ab(r)),i.next=8,r._renderer.renderAsync(r._scenegraph.root);case 8:r._redraw=!1,i.next=14;break;case 11:i.prev=11,i.t0=i.catch(3),r.error(i.t0);case 14:return n&&mr(r,n),i.abrupt("return",r);case 16:case"end":return i.stop()}}),i,null,[[3,11]])})))()},dirty:function(e){this._redraw=!0,this._renderer&&this._renderer.dirty(e)},description:function(e){if(arguments.length){var t=null!=e?e+"":null;return t!==this._desc&&mb(this._el,this._desc=t),this}return this._desc},container:function(){return this._el},scenegraph:function(){return this._scenegraph},origin:function(){return this._origin.slice()},signal:function(e,t,n){var r=cx(this,e);return 1===arguments.length?r.value:this.update(r,t,n)},width:function(e){return arguments.length?this.signal("width",e):this.signal("width")},height:function(e){return arguments.length?this.signal("height",e):this.signal("height")},padding:function(e){return arguments.length?this.signal("padding",Gb(e)):Gb(this.signal("padding"))},autosize:function(e){return arguments.length?this.signal("autosize",e):this.signal("autosize")},background:function(e){return arguments.length?this.signal("background",e):this.signal("background")},renderer:function(e){return arguments.length?(_d(e)||E("Unrecognized renderer type: "+e),e!==this._renderType&&(this._renderType=e,this._resetRenderer()),this):this._renderType},tooltip:function(e){return arguments.length?(e!==this._tooltip&&(this._tooltip=e,this._resetRenderer()),this):this._tooltip},loader:function(e){return arguments.length?(e!==this._loader&&(ni.prototype.loader.call(this,e),this._resetRenderer()),this):this._loader},resize:function(){return this._autosize=1,this.touch(cx(this,"autosize"))},_resetRenderer:function(){this._renderer&&(this._renderer=null,this.initialize(this._el,this._elBind))},_resizeView:function(e,t,n,r,i,a){this.runAfter((function(u){var o=0;u._autosize=0,u.width()!==n&&(o=1,u.signal(Kb,n,tx),u._resizeWidth.skip(!0)),u.height()!==r&&(o=1,u.signal(Zb,r,tx),u._resizeHeight.skip(!0)),u._viewWidth!==e&&(u._resize=1,u._viewWidth=e),u._viewHeight!==t&&(u._resize=1,u._viewHeight=t),u._origin[0]===i[0]&&u._origin[1]===i[1]||(u._resize=1,u._origin=i),o&&u.run("enter"),a&&u.runAfter((function(e){return e.resize()}))}),!1,1)},addEventListener:function(e,t,n){var r=t;return n&&!1===n.trap||((r=Ib(this,t)).raw=t),this._handler.on(e,r),this},removeEventListener:function(e,t){for(var n,r,i=this._handler.handlers(e),a=i.length;--a>=0;)if(r=i[a].type,n=i[a].handler,e===r&&(t===n||t===n.raw)){this._handler.off(r,n);break}return this},addResizeListener:function(e){var t=this._resizeListeners;return t.indexOf(e)<0&&t.push(e),this},removeResizeListener:function(e){var t=this._resizeListeners,n=t.indexOf(e);return n>=0&&t.splice(n,1),this},addSignalListener:function(e,t){return dx(this,e,cx(this,e),t)},removeSignalListener:function(e,t){return hx(this,cx(this,e),t)},addDataListener:function(e,t){return dx(this,e,yb(this,e).values,t)},removeDataListener:function(e,t){return hx(this,yb(this,e).values,t)},globalCursor:function(e){if(arguments.length){if(this._globalCursor!==!!e){var t=gb(this,null);this._globalCursor=!!e,t&&gb(this,t)}return this}return this._globalCursor},preventDefault:function(e){return arguments.length?(this._preventDefault=e,this):this._preventDefault},timer:function(e,t){this._timers.push(v.interval((function(t){e({timestamp:Date.now(),elapsed:t})}),t))},events:function(e,t,n){var r,i=this,a=new Tr(n),u=function(n,r){i.runAsync(null,(function(){e===Db&&function(e,t){var n=e._eventConfig.defaults,r=n.prevent,i=n.allow;return!1!==r&&!0!==i&&(!0===r||!1===i||(r?r[t]:i?!i[t]:e.preventDefault()))}(i,t)&&n.preventDefault(),a.receive(wb(i,n,r))}))};if("timer"===e)Fb(i,"timer",t)&&i.timer(u,t);else if(e===Db)Fb(i,"view",t)&&i.addEventListener(t,u,Eb);else if("window"===e?Fb(i,"window",t)&&"undefined"!=typeof window&&(r=[window]):"undefined"!=typeof document&&Fb(i,"selector",t)&&(r=document.querySelectorAll(e)),r){for(var o=0,s=r.length;o<s;++o)r[o].addEventListener(t,u);Cb(i,r,t,u)}else i.warn("Can not resolve event source: "+e);return a},finalize:function(){var e,t,n,r=this._tooltip,i=this._timers,a=this._eventListeners;for(e=i.length;--e>=0;)i[e].stop();for(e=a.length;--e>=0;)for(t=(n=a[e]).sources.length;--t>=0;)n.sources[t].removeEventListener(n.type,n.handler);return r&&r.call(this,this._handler,null,null,null),this},hover:function(e,t){return t=[t||"update",(e=[e||"hover"])[0]],this.on(this.events("view","mouseover",Mb),Sb,Bb(e)),this.on(this.events("view","mouseout",Mb),Sb,Bb(t)),this},data:function(e,t){return arguments.length<2?yb(this,e).values.value:bb.call(this,e,Fr().remove(R).insert(t))},change:bb,insert:function(e,t){return bb.call(this,e,Fr().insert(t))},remove:function(e,t){return bb.call(this,e,Fr().remove(t))},scale:function(e){var t=this._runtime.scales;return ke(t,e)||E("Unrecognized scale or projection: "+e),t[e].value},initialize:function(e,t){var n=this,r=n._renderType,i=n._eventConfig.bind,a=_d(r);e=n._el=e?$b(n,e,!0):null,function(e){var t=e.container();t&&(t.setAttribute("role","graphics-document"),t.setAttribute("aria-roleDescription","visualization"),mb(t,e.description()))}(n),a||n.error("Unrecognized renderer type: "+r);var u=a.handler||wf,o=e?a.renderer:a.headless;return n._renderer=o?Ub(n,n._renderer,e,o):null,n._handler=function(e,t,n,r){var i=new r(e.loader(),Ib(e,e.tooltip())).scene(e.scenegraph().root).initialize(n,kb(e),e);return t&&t.handlers().forEach((function(e){i.on(e.type,e.handler)})),i}(n,n._handler,e,u),n._redraw=!0,e&&"none"!==i&&(t=t?n._elBind=$b(n,t,!0):e.appendChild(Ob("form",{class:"vega-bindings"})),n._bind.forEach((function(e){e.param.element&&"container"!==i&&(e.element=$b(n,e.param.element,!!e.param.input))})),n._bind.forEach((function(e){!function(e,t,n){if(t){var r=n.param,i=n.state;i||(i=n.state={elements:null,active:!1,set:null,update:function(t){t!=e.signal(r.signal)&&e.runAsync(null,(function(){i.source=!0,e.signal(r.signal,t)}))}},r.debounce&&(i.update=ge(r.debounce,i.update))),(null==r.input&&r.element?Rb:zb)(i,t,r,e),i.active||(e.on(e._signals[r.signal],null,(function(){i.source?i.source=!1:i.set(e.signal(r.signal))})),i.active=!0)}}(n,e.element||t,e)}))),n},toImageURL:function(e,t){return Yb.apply(this,arguments)},toCanvas:function(e,t){return Jb.apply(this,arguments)},toSVG:function(e){return Qb.apply(this,arguments)},getState:function(e){return this._runtime.getState(e||{data:ix,signals:ax,recurse:!0})},setState:function(e){return this.runAsync(null,(function(t){t._trigger=!1,t._runtime.setState(e)}),(function(e){e._trigger=!0})),this}});var px,mx,vx="[",gx="]",yx=/[[\]{}]/,bx={"*":1,arc:1,area:1,group:1,image:1,line:1,path:1,rect:1,rule:1,shape:1,symbol:1,text:1,trail:1};function xx(e,t,n){return px=t||"view",mx=n||bx,kx(e.trim()).map(Ax)}function _x(e,t,n,r,i){for(var a,u=e.length,o=0;t<u;++t){if(a=e[t],!o&&a===n)return t;i&&i.indexOf(a)>=0?--o:r&&r.indexOf(a)>=0&&++o}return t}function kx(e){for(var t=[],n=e.length,r=0,i=0;i<n;)i=_x(e,i,",","[{","]}"),t.push(e.substring(r,i).trim()),r=++i;if(0===t.length)throw"Empty event selector: "+e;return t}function Ax(e){return"["===e[0]?function(e){var t,n=e.length,r=1;if((r=_x(e,r,gx,vx,gx))===n)throw"Empty between selector: "+e;if(2!==(t=kx(e.substring(1,r))).length)throw"Between selector must have two elements: "+e;if(">"!==(e=e.slice(r+1).trim())[0])throw"Expected '>' after between selector: "+e;t=t.map(Ax);var i=Ax(e.slice(1).trim());if(i.between)return{between:t,stream:i};i.between=t;return i}(e):function(e){var t,n,r={source:px},i=[],a=[0,0],u=0,o=0,s=e.length,l=0;if("}"===e[s-1]){if(!((l=e.lastIndexOf("{"))>=0))throw"Unmatched right brace: "+e;try{a=function(e){var t=e.split(",");if(!e.length||t.length>2)throw e;return t.map((function(t){var n=+t;if(n!=n)throw e;return n}))}(e.substring(l+1,s-1))}catch(t){throw"Invalid throttle specification: "+e}s=(e=e.slice(0,l).trim()).length,l=0}if(!s)throw e;"@"===e[0]&&(u=++l);(t=_x(e,l,":"))<s&&(i.push(e.substring(o,t).trim()),o=l=++t);if((l=_x(e,l,vx))===s)i.push(e.substring(o,s).trim());else if(i.push(e.substring(o,l).trim()),n=[],(o=++l)===s)throw"Unmatched left bracket: "+e;for(;l<s;){if((l=_x(e,l,gx))===s)throw"Unmatched left bracket: "+e;if(n.push(e.substring(o,l).trim()),l<s-1&&e[++l]!==vx)throw"Expected left bracket: "+e;o=++l}if(!(s=i.length)||yx.test(i[s-1]))throw"Invalid event selector: "+e;s>1?(r.type=i[1],u?r.markname=i[0].slice(1):!function(e){return mx[e]}(i[0])?r.source=i[0]:r.marktype=i[0]):r.type=i[0];"!"===r.type.slice(-1)&&(r.consume=!0,r.type=r.type.slice(0,-1));null!=n&&(r.filter=n);a[0]&&(r.throttle=a[0]);a[1]&&(r.debounce=a[1]);return r}(e)}function wx(e){return N(e)?e:{type:e||"pad"}}var Dx=function(e){return+e||0};function Ex(e){return N(e)?e.signal?e:{top:Dx(e.top),bottom:Dx(e.bottom),left:Dx(e.left),right:Dx(e.right)}:{top:t=Dx(e),bottom:t,left:t,right:t};var t}var Cx=function(e){return N(e)&&!L(e)?ye({},e):{value:e}};function Fx(e,t,n,r){return null!=n?(N(n)&&!L(n)||L(n)&&n.length&&N(n[0])?e.update[t]=n:e[r||"enter"][t]={value:n},1):0}function Mx(e,t,n){for(var r in t)Fx(e,r,t[r]);for(var i in n)Fx(e,i,n[i],"update")}function Sx(e,t,n){for(var r in t)n&&ke(n,r)||(e[r]=ye(e[r]||{},t[r]));return e}function Bx(e,t){return t&&(t.enter&&t.enter[e]||t.update&&t.update[e])}var Ox="mark",Rx="frame",zx="scope",qx="legend-label",Tx="title-text",Lx="title-subtitle";function Nx(e,t,n){e[t]=n&&n.signal?{signal:n.signal}:{value:n}}var Px=function(e){return Re(e)?Ue(e):e.signal?"(".concat(e.signal,")"):$x(e)};function jx(e){if(null!=e.gradient)return function(e){var t=[e.start,e.stop,e.count].map((function(e){return null==e?null:Ue(e)}));for(;t.length&&null==$(t);)t.pop();return t.unshift(Px(e.gradient)),"gradient(".concat(t.join(","),")")}(e);var t=e.signal?"(".concat(e.signal,")"):e.color?function(e){return e.c?Ux("hcl",e.h,e.c,e.l):e.h||e.s?Ux("hsl",e.h,e.s,e.l):e.l||e.a?Ux("lab",e.l,e.a,e.b):e.r||e.g||e.b?Ux("rgb",e.r,e.g,e.b):null}(e.color):null!=e.field?$x(e.field):void 0!==e.value?Ue(e.value):void 0;return null!=e.scale&&(t=function(e,t){var n=Px(e.scale);null!=e.range?t="lerp(_range(".concat(n,"), ").concat(+e.range,")"):(void 0!==t&&(t="_scale(".concat(n,", ").concat(t,")")),e.band&&(t=(t?t+"+":"")+"_bandwidth(".concat(n,")")+(1==+e.band?"":"*"+Ix(e.band)),e.extra&&(t="(datum.extra ? _scale(".concat(n,", datum.extra.value) : ").concat(t,")"))),null==t&&(t="0"));return t}(e,t)),void 0===t&&(t=null),null!=e.exponent&&(t="pow(".concat(t,",").concat(Ix(e.exponent),")")),null!=e.mult&&(t+="*".concat(Ix(e.mult))),null!=e.offset&&(t+="+".concat(Ix(e.offset))),e.round&&(t="round(".concat(t,")")),t}var Ux=function(e,t,n,r){return"(".concat(e,"(").concat([t,n,r].map(jx).join(","),")+'')")};function Ix(e){return N(e)?"("+jx(e)+")":e}function $x(e){return Wx(N(e)?e:{datum:e})}function Wx(e){var t,n,r;if(e.signal)t="datum",r=e.signal;else if(e.group||e.parent){for(n=Math.max(1,e.level||1),t="item";n-- >0;)t+=".mark.group";e.parent?(r=e.parent,t+=".datum"):r=e.group}else e.datum?(t="datum",r=e.datum):E("Invalid field reference: "+Ue(e));return e.signal||(r=Re(r)?C(r).map(Ue).join("]["):Wx(r)),t+"["+r+"]"}function Gx(e,t,n,r,i,a){var u={};for(var o in(a=a||{}).encoders={$encode:u},e=function(e,t,n,r,i){var a,u,o,s={},l={};for(u in u="lineBreak","text"!==t||null==i[u]||Bx(u,e)||Nx(s,u,i[u]),("legend"==n||String(n).startsWith("axis"))&&(n=null),o=n===Rx?i.group:n===Ox?ye({},i.mark,i[t]):null)Bx(u,e)||("fill"===u||"stroke"===u)&&(Bx("fill",e)||Bx("stroke",e))||Nx(s,u,o[u]);for(u in se(r).forEach((function(t){var n=i.style&&i.style[t];for(var r in n)Bx(r,e)||Nx(s,r,n[r])})),e=ye({},e),s)(o=s[u]).signal?(a=a||{})[u]=o:l[u]=o;return e.enter=ye(l,e.enter),a&&(e.update=ye(a,e.update)),e}(e,t,n,r,i.config),e)u[o]=Hx(e[o],t,a,i);return a}function Hx(e,t,n,r){var i,a={},u={};for(var o in e)null!=e[o]&&(a[o]=Vx((i=e[o],L(i)?function(e){var t="";return e.forEach((function(e){var n=jx(e);t+=e.test?"(".concat(e.test,")?").concat(n,":"):n})),":"===$(t)&&(t+="null"),t}(i):jx(i)),r,n,u));return{$expr:{marktype:t,channels:a},$fields:Object.keys(u),$output:Object.keys(e)}}function Vx(e,t,n,r){var i=rb(e,t);return i.$fields.forEach((function(e){return r[e]=1})),ye(n,i.$params),i.$expr}var Yx=["value","update","init","react","bind"];function Xx(e,t){E(e+' for "outer" push: '+Ue(t))}function Jx(e,t){var n=e.name;if("outer"===e.push)t.signals[n]||Xx("No prior signal definition",n),Yx.forEach((function(t){void 0!==e[t]&&Xx("Invalid property ",t)}));else{var r=t.addSignal(n,e.value);!1===e.react&&(r.react=!1),e.bind&&t.addBinding(n,e.bind)}}function Qx(e,t,n,r){this.id=-1,this.type=e,this.value=t,this.params=n,r&&(this.parent=r)}function Kx(e,t,n,r){return new Qx(e,t,n,r)}function Zx(e,t){return Kx("operator",e,t)}function e_(e){var t={$ref:e.id};return e.id<0&&(e.refs=e.refs||[]).push(t),t}function t_(e,t){return t?{$field:e,$name:t}:{$field:e}}var n_=t_("key");function r_(e,t){return{$compare:e,$order:t}}function i_(e,t){return(e&&e.signal?"$"+e.signal:e||"")+(e&&t?"_":"")+(t&&t.signal?"$"+t.signal:t||"")}var a_="scope",u_="view";function o_(e){return e&&e.signal}function s_(e){if(o_(e))return!0;if(N(e))for(var t in e)if(s_(e[t]))return!0;return!1}function l_(e,t){return null!=e?e:t}function c_(e){return e&&e.signal||e}var f_="timer";function d_(e,t){return(e.merge?h_:e.stream?p_:e.type?m_:E("Invalid stream specification: "+Ue(e)))(e,t)}function h_(e,t){var n=v_({merge:e.merge.map((function(e){return d_(e,t)}))},e,t);return t.addStream(n).id}function p_(e,t){var n=v_({stream:d_(e.stream,t)},e,t);return t.addStream(n).id}function m_(e,t){var n;e.type===f_?(n=t.event(f_,e.throttle),e={between:e.between,filter:e.filter}):n=t.event(function(e){return e===a_?u_:e||u_}(e.source),e.type);var r=v_({stream:n},e,t);return 1===Object.keys(r).length?n:t.addStream(r).id}function v_(e,t,n){var r=t.between;return r&&(2!==r.length&&E('Stream "between" parameter must have 2 entries: '+Ue(t)),e.between=[d_(r[0],n),d_(r[1],n)]),r=t.filter?[].concat(t.filter):[],(t.marktype||t.markname||t.markrole)&&r.push(function(e,t,n){var r="event.item";return r+(e&&"*"!==e?"&&"+r+".mark.marktype==='"+e+"'":"")+(n?"&&"+r+".mark.role==='"+n+"'":"")+(t?"&&"+r+".mark.name==='"+t+"'":"")}(t.marktype,t.markname,t.markrole)),t.source===a_&&r.push("inScope(event.item)"),r.length&&(e.filter=rb("("+r.join(")&&(")+")",n).$expr),null!=(r=t.throttle)&&(e.throttle=+r),null!=(r=t.debounce)&&(e.debounce=+r),t.consume&&(e.consume=!0),e}var g_={code:"_.$value",ast:{type:"Identifier",value:"value"}};function y_(e,t,n){var r=e.encode,i={target:n},a=e.events,u=e.update,o=[];a||E("Signal update missing events specification."),Re(a)&&(a=xx(a,t.isSubscope()?a_:u_)),a=se(a).filter((function(e){return e.signal||e.scale?(o.push(e),0):1})),o.length>1&&(o=[b_(o)]),a.length&&o.push(a.length>1?{merge:a}:a[0]),null!=r&&(u&&E("Signal encode and update are mutually exclusive."),u="encode(item(),"+Ue(r)+")"),i.update=Re(u)?rb(u,t):null!=u.expr?rb(u.expr,t):null!=u.value?u.value:null!=u.signal?{$expr:g_,$params:{$value:t.signalRef(u.signal)}}:E("Invalid signal update specification."),e.force&&(i.options={force:!0}),o.forEach((function(e){return t.addUpdate(ye(function(e,t){return{source:e.signal?t.signalRef(e.signal):e.scale?t.scaleRef(e.scale):d_(e,t)}}(e,t),i))}))}function b_(e){return{signal:"["+e.map((function(e){return e.scale?'scale("'+e.scale+'")':e.signal}))+"]"}}var x_=function(e){return function(t,n,r){return Kx(e,n,t||void 0,r)}},__=x_("aggregate"),k_=x_("axisticks"),A_=x_("bound"),w_=x_("collect"),D_=x_("compare"),E_=x_("datajoin"),C_=x_("encode"),F_=x_("expression"),M_=x_("facet"),S_=x_("field"),B_=x_("key"),O_=x_("legendentries"),R_=x_("load"),z_=x_("mark"),q_=x_("multiextent"),T_=x_("multivalues"),L_=x_("overlap"),N_=x_("params"),P_=x_("prefacet"),j_=x_("projection"),U_=x_("proxy"),I_=x_("relay"),$_=x_("render"),W_=x_("scale"),G_=x_("sieve"),H_=x_("sortitems"),V_=x_("viewlayout"),Y_=x_("values"),X_=0,J_={min:"min",max:"max",count:"sum"};function Q_(e,t){var n,r,i=t.getScale(e.name).params;for(n in i.domain=tk(e.domain,e,t),null!=e.range&&(i.range=lk(e,t,i)),null!=e.interpolate&&function(e,t){t.interpolate=K_(e.type||e),null!=e.gamma&&(t.interpolateGamma=K_(e.gamma))}(e.interpolate,i),null!=e.nice&&(i.nice=N(r=e.nice)?{interval:K_(r.interval),step:K_(r.step)}:K_(r)),null!=e.bins&&(i.bins=function(e,t){return e.signal||L(e)?Z_(e,t):t.objectProperty(e)}(e.bins,t)),e)ke(i,n)||"name"===n||(i[n]=K_(e[n],t))}function K_(e,t){return N(e)?e.signal?t.signalRef(e.signal):E("Unsupported object: "+Ue(e)):e}function Z_(e,t){return e.signal?t.signalRef(e.signal):e.map((function(e){return K_(e,t)}))}function ek(e){E("Can not find data set: "+Ue(e))}function tk(e,t,n){if(e)return e.signal?n.signalRef(e.signal):(L(e)?nk:e.fields?ik:rk)(e,t,n);null==t.domainMin&&null==t.domainMax||E("No scale domain defined for domainMin/domainMax to override.")}function nk(e,t,n){return e.map((function(e){return K_(e,n)}))}function rk(e,t,n){var r=n.getData(e.data);return r||ek(e.data),lo(t.type)?r.valuesRef(n,e.field,uk(e.sort,!1)):po(t.type)?r.domainRef(n,e.field):r.extentRef(n,e.field)}function ik(e,t,n){var r=e.data,i=e.fields.reduce((function(e,t){return t=Re(t)?{data:r,field:t}:L(t)||t.signal?function(e,t){var n="_:vega:_"+X_++,r=w_({});if(L(e))r.value={$ingest:e};else if(e.signal){var i="setdata("+Ue(n)+","+e.signal+")";r.params.input=t.signalRef(i)}return t.addDataPipeline(n,[r,G_({})]),{data:n,field:"data"}}(t,n):t,e.push(t),e}),[]);return(lo(t.type)?ak:po(t.type)?ok:sk)(e,n,i)}function ak(e,t,n){var r,i,a=uk(e.sort,!0),u=n.map((function(e){var n=t.getData(e.data);return n||ek(e.data),n.countsRef(t,e.field,a)})),o={groupby:n_,pulse:u};a&&(r=a.op||"count",i=a.field?i_(r,a.field):"count",o.ops=[J_[r]],o.fields=[t.fieldRef(i)],o.as=[i]),r=t.add(__(o));var s=t.add(w_({pulse:e_(r)}));return i=t.add(Y_({field:n_,sort:t.sortRef(a),pulse:e_(s)})),e_(i)}function uk(e,t){return e&&(e.field||e.op?e.field||"count"===e.op?t&&e.field&&e.op&&!J_[e.op]&&E("Multiple domain scales can not be sorted using "+e.op):E("No field provided for sort aggregate op: "+e.op):N(e)?e.field="key":e={field:"key"}),e}function ok(e,t,n){var r=n.map((function(e){var n=t.getData(e.data);return n||ek(e.data),n.domainRef(t,e.field)}));return e_(t.add(T_({values:r})))}function sk(e,t,n){var r=n.map((function(e){var n=t.getData(e.data);return n||ek(e.data),n.extentRef(t,e.field)}));return e_(t.add(q_({extents:r})))}function lk(e,t,n){var r=t.config.range,i=e.range;if(i.signal)return t.signalRef(i.signal);if(Re(i)){if(r&&ke(r,i))return lk(e=ye({},e,{range:r[i]}),t,n);"width"===i?i=[0,{signal:"width"}]:"height"===i?i=lo(e.type)?[0,{signal:"height"}]:[{signal:"height"},0]:E("Unrecognized scale range value: "+Ue(i))}else{if(i.scheme)return n.scheme=L(i.scheme)?Z_(i.scheme,t):K_(i.scheme,t),i.extent&&(n.schemeExtent=Z_(i.extent,t)),void(i.count&&(n.schemeCount=K_(i.count,t)));if(i.step)return void(n.rangeStep=K_(i.step,t));if(lo(e.type)&&!L(i))return tk(i,e,t);L(i)||E("Unsupported range type: "+Ue(i))}return i.map((function(e){return(L(e)?Z_:K_)(e,t)}))}function ck(e,t,n){return L(e)?e.map((function(e){return ck(e,t,n)})):N(e)?e.signal?n.signalRef(e.signal):"fit"===t?e:E("Unsupported parameter object: "+Ue(e)):e}var fk="top",dk="left",hk="right",pk="bottom",mk="center",vk="index",gk="label",yk="perc",bk="value",xk="guide-label",_k="guide-title",kk="group-title",Ak="group-subtitle",wk="symbol",Dk="gradient",Ek="discrete",Ck="size",Fk=[Ck,"shape","fill","stroke","strokeWidth","strokeDash","opacity"],Mk={name:1,style:1,interactive:1},Sk={value:0},Bk={value:1},Ok="group",Rk="rect",zk="rule",qk="text";function Tk(e){return e.type=Ok,e.interactive=e.interactive||!1,e}function Lk(e,t){var n=function(n,r){return l_(e[n],l_(t[n],r))};return n.isVertical=function(n){return"vertical"===l_(e.direction,t.direction||(n?t.symbolDirection:t.gradientDirection))},n.gradientLength=function(){return l_(e.gradientLength,t.gradientLength||t.gradientWidth)},n.gradientThickness=function(){return l_(e.gradientThickness,t.gradientThickness||t.gradientHeight)},n.entryColumns=function(){return l_(e.columns,l_(t.columns,+n.isVertical(!0)))},n}function Nk(e,t){var n=t&&(t.update&&t.update[e]||t.enter&&t.enter[e]);return n&&n.signal?n:n?n.value:null}function Pk(e,t,n){return"item.anchor === '".concat("start","' ? ").concat(e," : item.anchor === '").concat("end","' ? ").concat(t," : ").concat(n)}var jk=Pk(Ue(dk),Ue(hk),Ue(mk));function Uk(e,t){return t?e?N(e)?Object.assign({},e,{offset:Uk(e.offset,t)}):{value:e,offset:t}:t:e}function Ik(e,t){return t?(e.name=t.name,e.style=t.style||e.style,e.interactive=!!t.interactive,e.encode=Sx(e.encode,t,Mk)):e.interactive=!1,e}function $k(e,t,n,r){var i,a,u,o,s,l=Lk(e,n),c=l.isVertical(),f=l.gradientThickness(),d=l.gradientLength();c?(a=[0,1],u=[0,0],o=f,s=d):(a=[0,0],u=[1,0],o=d,s=f);var h={enter:i={opacity:Sk,x:Sk,y:Sk,width:Cx(o),height:Cx(s)},update:ye({},i,{opacity:Bk,fill:{gradient:t,start:a,stop:u}}),exit:{opacity:Sk}};return Mx(h,{stroke:l("gradientStrokeColor"),strokeWidth:l("gradientStrokeWidth")},{opacity:l("gradientOpacity")}),Ik({type:Rk,role:"legend-gradient",encode:h},r)}function Wk(e,t,n,r,i){var a,u,o,s,l=Lk(e,n),c=l.isVertical(),f=l.gradientThickness(),d=l.gradientLength(),h="";c?(a="y",o="y2",u="x",s="width",h="1-"):(a="x",o="x2",u="y",s="height");var p={opacity:Sk,fill:{scale:t,field:bk}};p[a]={signal:h+"datum."+yk,mult:d},p[u]=Sk,p[o]={signal:h+"datum.perc2",mult:d},p[s]=Cx(f);var m={enter:p,update:ye({},p,{opacity:Bk}),exit:{opacity:Sk}};return Mx(m,{stroke:l("gradientStrokeColor"),strokeWidth:l("gradientStrokeWidth")},{opacity:l("gradientOpacity")}),Ik({type:Rk,role:"legend-band",key:bk,from:i,encode:m},r)}var Gk="datum.".concat(yk,'<=0?"').concat(dk,'":datum.').concat(yk,'>=1?"').concat(hk,'":"').concat(mk,'"'),Hk="datum.".concat(yk,'<=0?"').concat(pk,'":datum.').concat(yk,'>=1?"').concat(fk,'":"').concat("middle",'"');function Vk(e,t,n,r){var i,a,u,o,s=Lk(e,t),l=s.isVertical(),c=Cx(s.gradientThickness()),f=s.gradientLength(),d=s("labelOverlap"),h="",p={enter:i={opacity:Sk},update:a={opacity:Bk,text:{field:gk}},exit:{opacity:Sk}};return Mx(p,{fill:s("labelColor"),fillOpacity:s("labelOpacity"),font:s("labelFont"),fontSize:s("labelFontSize"),fontStyle:s("labelFontStyle"),fontWeight:s("labelFontWeight"),limit:l_(e.labelLimit,t.gradientLabelLimit)}),l?(i.align={value:"left"},i.baseline=a.baseline={signal:Hk},u="y",o="x",h="1-"):(i.align=a.align={signal:Gk},i.baseline={value:"top"},u="x",o="y"),i[u]=a[u]={signal:h+"datum."+yk,mult:f},i[o]=a[o]=c,c.offset=l_(e.labelOffset,t.gradientLabelOffset)||0,d=d?{separation:s("labelSeparation"),method:d,order:"datum.index"}:void 0,Ik({type:qk,role:qx,style:xk,key:bk,from:r,encode:p,overlap:d},n)}function Yk(e,t,n,r,i){var a,u,o,s,l,c=Lk(e,t),f=n.entries,d=!(!f||!f.interactive),h=f?f.name:void 0,p=c("clipHeight"),m=c("symbolOffset"),v={data:"value"},g="(".concat(i,") ? datum.").concat("offset"," : datum.").concat(Ck),y=p?Cx(p):{field:Ck},b="datum.".concat(vk),x="max(1, ".concat(i,")");y.mult=.5,a={enter:u={opacity:Sk,x:{signal:g,mult:.5,offset:m},y:y},update:o={opacity:Bk,x:u.x,y:u.y},exit:{opacity:Sk}};var _=null,k=null;e.fill||(_=t.symbolBaseFillColor,k=t.symbolBaseStrokeColor),Mx(a,{fill:c("symbolFillColor",_),shape:c("symbolType"),size:c("symbolSize"),stroke:c("symbolStrokeColor",k),strokeDash:c("symbolDash"),strokeDashOffset:c("symbolDashOffset"),strokeWidth:c("symbolStrokeWidth")},{opacity:c("symbolOpacity")}),Fk.forEach((function(t){e[t]&&(o[t]=u[t]={scale:e[t],field:bk})}));var A=Ik({type:"symbol",role:"legend-symbol",key:bk,from:v,clip:!!p||void 0,encode:a},n.symbols),w=Cx(m);w.offset=c("labelOffset"),Mx(a={enter:u={opacity:Sk,x:{signal:g,offset:w},y:y},update:o={opacity:Bk,text:{field:gk},x:u.x,y:u.y},exit:{opacity:Sk}},{align:c("labelAlign"),baseline:c("labelBaseline"),fill:c("labelColor"),fillOpacity:c("labelOpacity"),font:c("labelFont"),fontSize:c("labelFontSize"),fontStyle:c("labelFontStyle"),fontWeight:c("labelFontWeight"),limit:c("labelLimit")});var D=Ik({type:qk,role:qx,style:xk,key:bk,from:v,encode:a},n.labels);return a={enter:{noBound:{value:!p},width:Sk,height:p?Cx(p):Sk,opacity:Sk},exit:{opacity:Sk},update:o={opacity:Bk,row:{signal:null},column:{signal:null}}},c.isVertical(!0)?(s="ceil(item.mark.items.length / ".concat(x,")"),o.row.signal="".concat(b,"%").concat(s),o.column.signal="floor(".concat(b," / ").concat(s,")"),l={field:["row",b]}):(o.row.signal="floor(".concat(b," / ").concat(x,")"),o.column.signal="".concat(b," % ").concat(x),l={field:b}),o.column.signal="(".concat(i,")?").concat(o.column.signal,":").concat(b),Tk({role:zx,from:r={facet:{data:r,name:"value",groupby:vk}},encode:Sx(a,f,Mk),marks:[A,D],name:h,interactive:d,sort:l})}var Xk='item.orient === "left"',Jk='item.orient === "right"',Qk="(".concat(Xk," || ").concat(Jk,")"),Kk="datum.vgrad && ".concat(Qk),Zk=Pk('"top"','"bottom"','"middle"'),eA=Pk('"right"','"left"','"center"'),tA="datum.vgrad && ".concat(Jk," ? (").concat(eA,") : (").concat(Qk," && !(datum.vgrad && ").concat(Xk,')) ? "left" : ').concat(jk),nA="item._anchor || (".concat(Qk,' ? "middle" : "start")'),rA="".concat(Kk," ? (").concat(Xk," ? -90 : 90) : 0"),iA="".concat(Qk," ? (datum.vgrad ? (").concat(Jk,' ? "bottom" : "top") : ').concat(Zk,') : "top"');function aA(e,t){var n;return N(e)&&(e.signal?n=e.signal:e.path?n="pathShape("+uA(e.path)+")":e.sphere&&(n="geoShape("+uA(e.sphere)+', {type: "Sphere"})')),n?t.signalRef(n):!!e}function uA(e){return N(e)&&e.signal?e.signal:Ue(e)}function oA(e){var t=e.role||"";return t.indexOf("axis")&&t.indexOf("legend")&&t.indexOf("title")?e.type===Ok?zx:t||Ox:t}function sA(e){return{marktype:e.type,name:e.name||void 0,role:e.role||oA(e),zindex:+e.zindex||void 0,aria:e.aria,description:e.description}}function lA(e,t){return e&&e.signal?t.signalRef(e.signal):!1!==e}function cA(e,t){var n=ui(e.type);n||E("Unrecognized transform type: "+Ue(e.type));var r=Kx(n.type.toLowerCase(),null,fA(n,e,t));return e.signal&&t.addSignal(e.signal,t.proxy(r)),r.metadata=n.metadata||{},r}function fA(e,t,n){for(var r={},i=e.params.length,a=0;a<i;++a){var u=e.params[a];r[u.name]=dA(u,t,n)}return r}function dA(e,t,n){var r=e.type,i=t[e.name];return"index"===r?function(e,t,n){Re(t.from)||E('Lookup "from" parameter must be a string literal.');return n.getData(t.from).lookupRef(n,t.key)}(0,t,n):void 0!==i?"param"===r?function(e,t,n){var r=t[e.name];return e.array?(L(r)||E("Expected an array of sub-parameters. Instead: "+Ue(r)),r.map((function(t){return pA(e,t,n)}))):pA(e,r,n)}(e,t,n):"projection"===r?n.projectionRef(t[e.name]):e.array&&!o_(i)?i.map((function(t){return hA(e,t,n)})):hA(e,i,n):void(e.required&&E("Missing required "+Ue(t.type)+" parameter: "+Ue(e.name)))}function hA(e,t,n){var r=e.type;if(o_(t))return yA(r)?E("Expression references can not be signals."):bA(r)?n.fieldRef(t):xA(r)?n.compareRef(t):n.signalRef(t.signal);var i=e.expr||bA(r);return i&&mA(t)?n.exprRef(t.expr,t.as):i&&vA(t)?t_(t.field,t.as):yA(r)?rb(t,n):gA(r)?e_(n.getData(t).values):bA(r)?t_(t):xA(r)?n.compareRef(t):t}function pA(e,t,n){for(var r,i=e.params.length,a=0;a<i;++a){for(var u in(r=e.params[a]).key)if(r.key[u]!==t[u]){r=null;break}if(r)break}r||E("Unsupported parameter: "+Ue(t));var o=ye(fA(r,t,n),r.key);return e_(n.add(N_(o)))}var mA=function(e){return e&&e.expr},vA=function(e){return e&&e.field},gA=function(e){return"data"===e},yA=function(e){return"expr"===e},bA=function(e){return"field"===e},xA=function(e){return"compare"===e};function _A(e,t){return e.$ref?e:e.data&&e.data.$ref?e.data:e_(t.getData(e.data).output)}function kA(e,t,n,r,i){this.scope=e,this.input=t,this.output=n,this.values=r,this.aggregate=i,this.index={}}function AA(e){return Re(e)?e:null}function wA(e,t,n){var r,i=i_(n.op,n.field);if(t.ops){for(var a=0,u=t.as.length;a<u;++a)if(t.as[a]===i)return}else t.ops=["count"],t.fields=[null],t.as=["count"];n.op&&(t.ops.push((r=n.op.signal)?e.signalRef(r):n.op),t.fields.push(e.fieldRef(n.field)),t.as.push(i))}function DA(e,t,n,r,i,a,u){var o,s,l=t[n]||(t[n]={}),c=function(e){return N(e)?("descending"===e.order?"-":"+")+i_(e.op,e.field):""}(a),f=AA(i);if(null!=f&&(e=t.scope,o=l[f+=c?"|"+c:""]),!o){var d=a?{field:n_,pulse:t.countsRef(e,i,a)}:{field:e.fieldRef(i),pulse:e_(t.output)};c&&(d.sort=e.sortRef(a)),s=e.add(Kx(r,void 0,d)),u&&(t.index[i]=s),o=e_(s),null!=f&&(l[f]=o)}return o}function EA(e,t,n){var r=e.remove,i=e.insert,a=e.toggle,u=e.modify,o=e.values,s=t.add(Zx()),l=rb("if("+e.trigger+',modify("'+n+'",'+[i,r,a,u,o].map((function(e){return null==e?"null":e})).join(",")+"),0)",t);s.update=l.$expr,s.params=l.$params}function CA(e,t){var n,r,i,a,u,o,s,l=oA(e),c=e.type===Ok,f=e.from&&e.from.facet,d=e.overlap,h=e.layout||l===zx||l===Rx,p=l===Ox||h||f,m=function(e,t,n){var r,i,a,u,o;return e?(r=e.facet)&&(t||E("Only group marks can be faceted."),null!=r.field?u=o=_A(r,n):(e.data?o=e_(n.getData(e.data).aggregate):((a=cA(ye({type:"aggregate",groupby:se(r.groupby)},r.aggregate),n)).params.key=n.keyRef(r.groupby),a.params.pulse=_A(r,n),u=o=e_(n.add(a))),i=n.keyRef(r.groupby,!0))):u=e_(n.add(w_(null,[{}]))),u||(u=_A(e,n)),{key:i,pulse:u,parent:o}}(e.from,c,t),v=e_(r=t.add(E_({key:m.key||(e.key?t_(e.key):void 0),pulse:m.pulse,clean:!c})));r=i=t.add(w_({pulse:v})),r=t.add(z_({markdef:sA(e),interactive:lA(e.interactive,t),clip:aA(e.clip,t),context:{$context:!0},groups:t.lookup(),parent:t.signals.parent?t.signalRef("parent"):null,index:t.markpath(),pulse:e_(r)}));var g=e_(r);(r=a=t.add(C_(Gx(e.encode,e.type,l,e.style,t,{mod:!1,pulse:g})))).params.parent=t.encode(),e.transform&&e.transform.forEach((function(e){var n=cA(e,t),i=n.metadata;(i.generates||i.changes)&&E("Mark transforms should not generate new data."),i.nomod||(a.params.mod=!0),n.params.pulse=e_(r),t.add(r=n)})),e.sort&&(r=t.add(H_({sort:t.compareRef(e.sort),pulse:e_(r)})));var y=e_(r);(f||h)&&(o=e_(h=t.add(V_({layout:t.objectProperty(e.layout),legends:t.legends,mark:g,pulse:y}))));var b=t.add(A_({mark:g,pulse:o||y}));s=e_(b),c&&(p&&((n=t.operators).pop(),h&&n.pop()),t.pushState(y,o||s,v),f?function(e,t,n){var r,i=e.from.facet,a=i.name,u=_A(i,t);i.name||E("Facet must have a name: "+Ue(i)),i.data||E("Facet must reference a data set: "+Ue(i)),i.field?r=t.add(P_({field:t.fieldRef(i.field),pulse:u})):i.groupby?r=t.add(M_({key:t.keyRef(i.groupby),group:e_(t.proxy(n.parent)),pulse:u})):E("Facet must specify groupby or field: "+Ue(i));var o=t.fork(),s=o.add(w_()),l=o.add(G_({pulse:e_(s)}));o.addData(a,new kA(o,s,s,l)),o.addSignal("parent",null),r.params.subflow={$subflow:o.parse(e).toRuntime()}}(e,t,m):p?function(e,t,n){var r=t.add(P_({pulse:n.pulse})),i=t.fork();i.add(G_()),i.addSignal("parent",null),r.params.subflow={$subflow:i.parse(e).toRuntime()}}(e,t,m):t.parse(e),t.popState(),p&&(h&&n.push(h),n.push(b))),d&&(s=function(e,t,n){var r=e.method,i=e.bound,a=e.separation,u={separation:o_(a)?n.signalRef(a.signal):a,method:o_(r)?n.signalRef(r.signal):r,pulse:t};e.order&&(u.sort=n.compareRef({field:e.order}));if(i){var o=i.tolerance;u.boundTolerance=o_(o)?n.signalRef(o.signal):+o,u.boundScale=n.scaleRef(i.scale),u.boundOrient=i.orient}return e_(n.add(L_(u)))}(d,s,t));var x=t.add($_({pulse:s})),_=t.add(G_({pulse:e_(x)},void 0,t.parent()));null!=e.name&&(u=e.name,t.addData(u,new kA(t,i,x,_)),e.on&&e.on.forEach((function(e){(e.insert||e.remove||e.toggle)&&E("Marks only support modify triggers."),EA(e,t,u)})))}function FA(e,t){var n,r,i,a=t.config.legend,u=e.encode||{},o=Lk(e,a),s=u.legend||{},l=s.name||void 0,c=s.interactive,f=s.style,d={},h=0;Fk.forEach((function(t){return e[t]?(d[t]=e[t],h=h||e[t]):0})),h||E("Missing valid scale for legend.");var p=function(e,t){var n=e.type||wk;e.type||1!==function(e){return Fk.reduce((function(t,n){return t+(e[n]?1:0)}),0)}(e)||!e.fill&&!e.stroke||(n=so(t)?Dk:co(t)?Ek:wk);return n!==Dk?n:co(t)?Ek:Dk}(e,t.scaleType(h)),m={title:null!=e.title,scales:d,type:p,vgrad:"symbol"!==p&&o.isVertical()},v=e_(t.add(w_(null,[m]))),g=e_(t.add(O_(r={type:p,scale:t.scaleRef(h),count:t.objectProperty(o("tickCount")),limit:t.property(o("symbolLimit")),values:t.objectProperty(e.values),minstep:t.property(e.tickMinStep),formatType:t.property(e.formatType),formatSpecifier:t.property(e.format)})));return p===Dk?(i=[$k(e,h,a,u.gradient),Vk(e,a,u.labels,g)],r.count=r.count||t.signalRef("max(2,2*floor((".concat(c_(o.gradientLength()),")/100))"))):p===Ek?i=[Wk(e,h,a,u.gradient,g),Vk(e,a,u.labels,g)]:(n=function(e,t){var n=Lk(e,t);return{align:n("gridAlign"),columns:n.entryColumns(),center:{row:!0,column:!1},padding:{row:n("rowPadding"),column:n("columnPadding")}}}(e,a),i=[Yk(e,a,u,g,c_(n.columns))],r.size=function(e,t,n){var r=c_(SA("size",e,n)),i=c_(SA("strokeWidth",e,n)),a=c_(function(e,t,n){return Nk("fontSize",e)||function(e,t,n){var r=t.config.style[n];return r&&r[e]}("fontSize",t,n)}(n[1].encode,t,xk));return rb("max(ceil(sqrt(".concat(r,")+").concat(i,"),").concat(a,")"),t)}(e,t,i[0].marks)),i=[Tk({role:"legend-entry",from:v,encode:{enter:{x:{value:0},y:{value:0}}},marks:i,layout:n,interactive:c})],m.title&&i.push(function(e,t,n,r){var i=Lk(e,t),a={enter:{opacity:Sk},update:{opacity:Bk,x:{field:{group:"padding"}},y:{field:{group:"padding"}}},exit:{opacity:Sk}};return Mx(a,{orient:i("titleOrient"),_anchor:i("titleAnchor"),anchor:{signal:nA},angle:{signal:rA},align:{signal:tA},baseline:{signal:iA},text:e.title,fill:i("titleColor"),fillOpacity:i("titleOpacity"),font:i("titleFont"),fontSize:i("titleFontSize"),fontStyle:i("titleFontStyle"),fontWeight:i("titleFontWeight"),limit:i("titleLimit"),lineHeight:i("titleLineHeight")},{align:i("titleAlign"),baseline:i("titleBaseline")}),Ik({type:qk,role:"legend-title",style:_k,from:r,encode:a},n)}(e,a,u.title,v)),CA(Tk({role:"legend",from:v,encode:Sx(MA(o,e,a),s,Mk),marks:i,aria:o("aria"),description:o("description"),zindex:o("zindex"),name:l,interactive:c,style:f}),t)}function MA(e,t,n){var r={enter:{},update:{}};return Mx(r,{orient:e("orient"),offset:e("offset"),padding:e("padding"),titlePadding:e("titlePadding"),cornerRadius:e("cornerRadius"),fill:e("fillColor"),stroke:e("strokeColor"),strokeWidth:n.strokeWidth,strokeDash:n.strokeDash,x:e("legendX"),y:e("legendY"),format:t.format,formatType:t.formatType}),r}function SA(e,t,n){return t[e]?'scale("'.concat(t[e],'",datum)'):Nk(e,n[0].encode)}kA.fromEntries=function(e,t){var n=t.length,r=t[n-1],i=t[n-2],a=t[0],u=null,o=1;for(a&&"load"===a.type&&(a=t[1]),e.add(t[0]);o<n;++o)t[o].params.pulse=e_(t[o-1]),e.add(t[o]),"aggregate"===t[o].type&&(u=t[o]);return new kA(e,a,i,r,u)},kA.prototype={countsRef:function(e,t,n){var r,i,a,u=this,o=u.counts||(u.counts={}),s=AA(t);return null!=s&&(e=u.scope,r=o[s]),r?n&&n.field&&wA(e,r.agg.params,n):(a={groupby:e.fieldRef(t,"key"),pulse:e_(u.output)},n&&n.field&&wA(e,a,n),i=e.add(__(a)),r=e.add(w_({pulse:e_(i)})),r={agg:i,ref:e_(r)},null!=s&&(o[s]=r)),r.ref},tuplesRef:function(){return e_(this.values)},extentRef:function(e,t){return DA(e,this,"extent","extent",t,!1)},domainRef:function(e,t){return DA(e,this,"domain","values",t,!1)},valuesRef:function(e,t,n){return DA(e,this,"vals","values",t,n||!0)},lookupRef:function(e,t){return DA(e,this,"lookup","tupleindex",t,!1)},indataRef:function(e,t){return DA(e,this,"indata","tupleindex",t,!0,!0)}};var BA='item.orient==="'.concat(dk,'"?-90:item.orient==="').concat(hk,'"?90:0');function OA(e,t){var n=Lk(e=Re(e)?{text:e}:e,t.config.title),r=e.encode||{},i=r.group||{},a=i.name||void 0,u=i.interactive,o=i.style,s=[],l=e_(t.add(w_(null,[{}])));return s.push(function(e,t,n,r){var i={value:0},a=e.text,u={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return Mx(u,{text:a,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:t("dx"),dy:t("dy"),fill:t("color"),font:t("font"),fontSize:t("fontSize"),fontStyle:t("fontStyle"),fontWeight:t("fontWeight"),lineHeight:t("lineHeight")},{align:t("align"),angle:t("angle"),baseline:t("baseline")}),Ik({type:qk,role:Tx,style:kk,from:r,encode:u},n)}(e,n,function(e){var t=e.encode;return t&&t.title||ye({name:e.name,interactive:e.interactive,style:e.style},t)}(e),l)),e.subtitle&&s.push(function(e,t,n,r){var i={value:0},a=e.subtitle,u={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return Mx(u,{text:a,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:t("dx"),dy:t("dy"),fill:t("subtitleColor"),font:t("subtitleFont"),fontSize:t("subtitleFontSize"),fontStyle:t("subtitleFontStyle"),fontWeight:t("subtitleFontWeight"),lineHeight:t("subtitleLineHeight")},{align:t("align"),angle:t("angle"),baseline:t("baseline")}),Ik({type:qk,role:Lx,style:Ak,from:r,encode:u},n)}(e,n,r.subtitle,l)),CA(Tk({role:"title",from:l,encode:RA(n,i),marks:s,aria:n("aria"),description:n("description"),zindex:n("zindex"),name:a,interactive:u,style:o}),t)}function RA(e,t){var n={enter:{},update:{}};return Mx(n,{orient:e("orient"),anchor:e("anchor"),align:{signal:jk},angle:{signal:BA},limit:e("limit"),frame:e("frame"),offset:e("offset")||0,padding:e("subtitlePadding")}),Sx(n,t,Mk)}function zA(e,t){var n=[];e.transform&&e.transform.forEach((function(e){n.push(cA(e,t))})),e.on&&e.on.forEach((function(n){EA(n,t,e.name)})),t.addDataPipeline(e.name,function(e,t,n){var r,i,a,u,o,s=[],l=null,c=!1,f=!1;e.values?o_(e.values)||s_(e.format)?(s.push(TA(t,e)),s.push(l=qA())):s.push(l=qA({$ingest:e.values,$format:e.format})):e.url?s_(e.url)||s_(e.format)?(s.push(TA(t,e)),s.push(l=qA())):s.push(l=qA({$request:e.url,$format:e.format})):e.source&&(l=r=se(e.source).map((function(e){return e_(t.getData(e).output)})),s.push(null));for(i=0,a=n.length;i<a;++i)o=(u=n[i]).metadata,l||o.source||s.push(l=qA()),s.push(u),o.generates&&(f=!0),o.modifies&&!f&&(c=!0),o.source?l=u:o.changes&&(l=null);r&&(a=r.length-1,s[0]=I_({derive:c,pulse:a?r:r[0]}),(c||a)&&s.splice(1,0,qA()));l||s.push(qA());return s.push(G_({})),s}(e,t,n))}function qA(e){var t=w_({},e);return t.metadata={source:!0},t}function TA(e,t){return R_({url:t.url?e.property(t.url):void 0,async:t.async?e.property(t.async):void 0,values:t.values?e.property(t.values):void 0,format:e.objectProperty(t.format)})}var LA=function(e){return e===pk||e===fk},NA=function(e,t,n){return o_(e)?WA(e.signal,t,n):e===dk||e===fk?t:n},PA=function(e,t,n){return o_(e)?IA(e.signal,t,n):LA(e)?t:n},jA=function(e,t,n){return o_(e)?$A(e.signal,t,n):LA(e)?n:t},UA=function(e,t,n){return o_(e)?GA(e.signal,t,n):e===fk?{value:t}:{value:n}},IA=function(e,t,n){return VA("".concat(e," === '").concat(fk,"' || ").concat(e," === '").concat(pk,"'"),t,n)},$A=function(e,t,n){return VA("".concat(e," !== '").concat(fk,"' && ").concat(e," !== '").concat(pk,"'"),t,n)},WA=function(e,t,n){return XA("".concat(e," === '").concat(dk,"' || ").concat(e," === '").concat(fk,"'"),t,n)},GA=function(e,t,n){return XA("".concat(e," === '").concat(fk,"'"),t,n)},HA=function(e,t,n){return XA("".concat(e," === '").concat(hk,"'"),t,n)},VA=function(e,t,n){return t=null!=t?Cx(t):t,n=null!=n?Cx(n):n,YA(t)&&YA(n)?(t=t?t.signal||Ue(t.value):null,n=n?n.signal||Ue(n.value):null,{signal:"".concat(e," ? (").concat(t,") : (").concat(n,")")}):[ye({test:e},t)].concat(n||[])},YA=function(e){return null==e||1===Object.keys(e).length},XA=function(e,t,n){return{signal:"".concat(e," ? (").concat(QA(t),") : (").concat(QA(n),")")}},JA=function(e,t,n,r,i){return{signal:(null!=r?"".concat(e," === '").concat(dk,"' ? (").concat(QA(r),") : "):"")+(null!=n?"".concat(e," === '").concat(pk,"' ? (").concat(QA(n),") : "):"")+(null!=i?"".concat(e," === '").concat(hk,"' ? (").concat(QA(i),") : "):"")+(null!=t?"".concat(e," === '").concat(fk,"' ? (").concat(QA(t),") : "):"")+"(null)"}},QA=function(e){return o_(e)?e.signal:null==e?null:Ue(e)},KA=function(e,t){var n=e.signal;return n&&n.endsWith("(null)")?{signal:n.slice(0,-6)+t.signal}:e};function ZA(e,t,n,r){var i;if(t&&ke(t,e))return t[e];if(ke(n,e))return n[e];if(e.startsWith("title")){switch(e){case"titleColor":i="fill";break;case"titleFont":case"titleFontSize":case"titleFontWeight":i=e[5].toLowerCase()+e.slice(6)}return r["guide-title"][i]}if(e.startsWith("label")){switch(e){case"labelColor":i="fill";break;case"labelFont":case"labelFontSize":i=e[5].toLowerCase()+e.slice(6)}return r["guide-label"][i]}return null}function ew(e){var t,n={},r=dt(e);try{for(r.s();!(t=r.n()).done;){var i=t.value;if(i)for(var a in i)n[a]=1}}catch(e){r.e(e)}finally{r.f()}return Object.keys(n)}function tw(e,t){return{scale:e.scale,range:t}}function nw(e,t,n,r,i){var a,u,o,s=Lk(e,t),l=e.orient,c=e.gridScale,f=NA(l,1,-1),d=function(e,t){if(1===t);else if(N(e)){for(var n=e=ye({},e);null!=n.mult;){if(!N(n.mult))return n.mult=o_(t)?{signal:"(".concat(n.mult,") * (").concat(t.signal,")")}:n.mult*t,e;n=n.mult=ye({},n.mult)}n.mult=t}else e=o_(t)?{signal:"(".concat(t.signal,") * (").concat(e||0,")")}:t*(e||0);return e}(e.offset,f),h={enter:a={opacity:Sk},update:o={opacity:Bk},exit:u={opacity:Sk}};Mx(h,{stroke:s("gridColor"),strokeCap:s("gridCap"),strokeDash:s("gridDash"),strokeDashOffset:s("gridDashOffset"),strokeOpacity:s("gridOpacity"),strokeWidth:s("gridWidth")});var p={scale:e.scale,field:bk,band:i.band,extra:i.extra,offset:i.offset,round:s("tickRound")},m=PA(l,{signal:"height"},{signal:"width"}),v=c?{scale:c,range:0,mult:f,offset:d}:{value:0,offset:d},g=c?{scale:c,range:1,mult:f,offset:d}:ye(m,{mult:f,offset:d});return a.x=o.x=PA(l,p,v),a.y=o.y=jA(l,p,v),a.x2=o.x2=jA(l,g),a.y2=o.y2=PA(l,g),u.x=PA(l,p),u.y=jA(l,p),Ik({type:zk,role:"axis-grid",key:bk,from:r,encode:h},n)}function rw(e,t,n,r,i){return{signal:'flush(range("'+e+'"), scale("'+e+'", datum.value), '+t+","+n+","+r+","+i+")"}}function iw(e,t,n,r,i,a){var u,o=Lk(e,t),s=e.orient,l=e.scale,c=NA(s,-1,1),f=c_(o("labelFlush")),d=c_(o("labelFlushOffset")),h=o("labelAlign"),p=o("labelBaseline"),m=0===f||!!f,v=Cx(i);v.mult=c,v.offset=Cx(o("labelPadding")||0),v.offset.mult=c;var g={scale:l,field:bk,band:.5,offset:Uk(a.offset,o("labelOffset"))},y=PA(s,m?rw(l,f,'"left"','"right"','"center"'):{value:"center"},function(e,t,n){return o_(e)?HA(e.signal,t,n):e===hk?{value:t}:{value:n}}(s,"left","right")),b=PA(s,UA(s,"bottom","top"),m?rw(l,f,'"top"','"bottom"','"middle"'):{value:"middle"}),x=rw(l,f,"-(".concat(d,")"),d,0);m=m&&d;var _={opacity:Sk,x:PA(s,g,v),y:jA(s,g,v)},k={enter:_,update:u={opacity:Bk,text:{field:gk},x:_.x,y:_.y,align:y,baseline:b},exit:{opacity:Sk,x:_.x,y:_.y}};Mx(k,{dx:!h&&m?PA(s,x):null,dy:!p&&m?jA(s,x):null}),Mx(k,{angle:o("labelAngle"),fill:o("labelColor"),fillOpacity:o("labelOpacity"),font:o("labelFont"),fontSize:o("labelFontSize"),fontWeight:o("labelFontWeight"),fontStyle:o("labelFontStyle"),limit:o("labelLimit"),lineHeight:o("labelLineHeight")},{align:h,baseline:p});var A=o("labelBound"),w=o("labelOverlap");return w=w||A?{separation:o("labelSeparation"),method:w,order:"datum.index",bound:A?{scale:l,orient:s,tolerance:A}:null}:void 0,u.align!==y&&(u.align=KA(u.align,y)),u.baseline!==b&&(u.baseline=KA(u.baseline,b)),Ik({type:qk,role:"axis-label",style:xk,key:bk,from:r,encode:k,overlap:w},n)}function aw(e,t,n,r){var i,a,u=Lk(e,t),o=e.orient,s=NA(o,-1,1),l={enter:i={opacity:Sk,anchor:Cx(u("titleAnchor",null)),align:{signal:jk}},update:a=ye({},i,{opacity:Bk,text:Cx(e.title)}),exit:{opacity:Sk}},c={signal:'lerp(range("'.concat(e.scale,'"), ').concat(Pk(0,1,.5),")")};return a.x=PA(o,c),a.y=jA(o,c),i.angle=PA(o,Sk,function(e,t){return 0===t?0:o_(e)?{signal:"(".concat(e.signal,") * ").concat(t)}:{value:e*t}}(s,90)),i.baseline=PA(o,UA(o,pk,fk),{value:pk}),a.angle=i.angle,a.baseline=i.baseline,Mx(l,{fill:u("titleColor"),fillOpacity:u("titleOpacity"),font:u("titleFont"),fontSize:u("titleFontSize"),fontStyle:u("titleFontStyle"),fontWeight:u("titleFontWeight"),limit:u("titleLimit"),lineHeight:u("titleLineHeight")},{align:u("titleAlign"),angle:u("titleAngle"),baseline:u("titleBaseline")}),function(e,t,n,r){var i=function(e,t){return null!=e?(n.update[t]=KA(Cx(e),n.update[t]),!1):!Bx(t,r)},a=i(e("titleX"),"x"),u=i(e("titleY"),"y");n.enter.auto=u===a?Cx(u):PA(t,Cx(u),Cx(a))}(u,o,l,n),l.update.align=KA(l.update.align,i.align),l.update.angle=KA(l.update.angle,i.angle),l.update.baseline=KA(l.update.baseline,i.baseline),Ik({type:qk,role:"axis-title",style:_k,from:r,encode:l},n)}function uw(e,t){var n,r=function(e,t){var n,r,i,a=t.config,u=a.style,o=a.axis,s="band"===t.scaleType(e.scale)&&a.axisBand,l=e.orient;if(o_(l)){var c=ew([a.axisX,a.axisY]),f=ew([a.axisTop,a.axisBottom,a.axisLeft,a.axisRight]);n={};var d,h=dt(c);try{for(h.s();!(d=h.n()).done;)n[i=d.value]=PA(l,ZA(i,a.axisX,o,u),ZA(i,a.axisY,o,u))}catch(e){h.e(e)}finally{h.f()}r={};var p,m=dt(f);try{for(m.s();!(p=m.n()).done;)r[i=p.value]=JA(l.signal,ZA(i,a.axisTop,o,u),ZA(i,a.axisBottom,o,u),ZA(i,a.axisLeft,o,u),ZA(i,a.axisRight,o,u))}catch(e){m.e(e)}finally{m.f()}}else n=l===fk||l===pk?a.axisX:a.axisY,r=a["axis"+l[0].toUpperCase()+l.slice(1)];return n||r||s?ye({},o,n,r,s):o}(e,t),i=e.encode||{},a=i.axis||{},u=a.name||void 0,o=a.interactive,s=a.style,l=Lk(e,r),c=function(e){var t,n,r=e("tickBand"),i=e("tickOffset");return r?r.signal?(t={signal:"(".concat(r.signal,") === 'extent' ? 1 : 0.5")},n={signal:"(".concat(r.signal,") === 'extent'")},N(i)||(i={signal:"(".concat(r.signal,") === 'extent' ? 0 : ").concat(i)})):"extent"===r?(t=1,n=!0,i=0):(t=.5,n=!1):(t=e("bandPosition"),n=e("tickExtra")),{extra:n,band:t,offset:i}}(l),f={scale:e.scale,ticks:!!l("ticks"),labels:!!l("labels"),grid:!!l("grid"),domain:!!l("domain"),title:null!=e.title},d=e_(t.add(w_({},[f]))),h=e_(t.add(k_({scale:t.scaleRef(e.scale),extra:t.property(c.extra),count:t.objectProperty(e.tickCount),values:t.objectProperty(e.values),minstep:t.property(e.tickMinStep),formatType:t.property(e.formatType),formatSpecifier:t.property(e.format)}))),p=[];return f.grid&&p.push(nw(e,r,i.grid,h,c)),f.ticks&&(n=l("tickSize"),p.push(function(e,t,n,r,i,a){var u,o,s,l=Lk(e,t),c=e.orient,f=NA(c,-1,1),d={enter:u={opacity:Sk},update:s={opacity:Bk},exit:o={opacity:Sk}};Mx(d,{stroke:l("tickColor"),strokeCap:l("tickCap"),strokeDash:l("tickDash"),strokeDashOffset:l("tickDashOffset"),strokeOpacity:l("tickOpacity"),strokeWidth:l("tickWidth")});var h=Cx(i);h.mult=f;var p={scale:e.scale,field:bk,band:a.band,extra:a.extra,offset:a.offset,round:l("tickRound")};return s.y=u.y=PA(c,Sk,p),s.y2=u.y2=PA(c,h),o.x=PA(c,p),s.x=u.x=jA(c,Sk,p),s.x2=u.x2=jA(c,h),o.y=jA(c,p),Ik({type:zk,role:"axis-tick",key:bk,from:r,encode:d},n)}(e,r,i.ticks,h,n,c))),f.labels&&(n=f.ticks?n:0,p.push(iw(e,r,i.labels,h,n,c))),f.domain&&p.push(function(e,t,n,r){var i,a,u=Lk(e,t),o=e.orient,s={enter:i={opacity:Sk},update:a={opacity:Bk},exit:{opacity:Sk}};Mx(s,{stroke:u("domainColor"),strokeCap:u("domainCap"),strokeDash:u("domainDash"),strokeDashOffset:u("domainDashOffset"),strokeWidth:u("domainWidth"),strokeOpacity:u("domainOpacity")});var l=tw(e,0),c=tw(e,1);return i.x=a.x=PA(o,l,Sk),i.x2=a.x2=PA(o,c),i.y=a.y=jA(o,l,Sk),i.y2=a.y2=jA(o,c),Ik({type:zk,role:"axis-domain",from:r,encode:s},n)}(e,r,i.domain,d)),f.title&&p.push(aw(e,r,i.title,d)),CA(Tk({role:"axis",from:d,encode:Sx(ow(l,e),a,Mk),marks:p,aria:l("aria"),description:l("description"),zindex:l("zindex"),name:u,interactive:o,style:s}),t)}function ow(e,t){var n={enter:{},update:{}};return Mx(n,{orient:e("orient"),offset:e("offset")||0,position:l_(t.position,0),titlePadding:e("titlePadding"),minExtent:e("minExtent"),maxExtent:e("maxExtent"),range:{signal:'abs(span(range("'.concat(t.scale,'")))')},translate:e("translate"),format:t.format,formatType:t.formatType}),n}function sw(e,t,n){var r=se(e.signals),i=se(e.scales);return n||r.forEach((function(e){return Jx(e,t)})),se(e.projections).forEach((function(e){return function(e,t){var n=t.config.projection||{},r={};for(var i in e)"name"!==i&&(r[i]=ck(e[i],i,t));for(var a in n)null==r[a]&&(r[a]=ck(n[a],a,t));t.addProjection(e.name,r)}(e,t)})),i.forEach((function(e){return function(e,t){var n=e.type||"linear";uo(n)||E("Unrecognized scale type: "+Ue(n)),t.addScale(e.name,{type:n,domain:void 0})}(e,t)})),se(e.data).forEach((function(e){return zA(e,t)})),i.forEach((function(e){return Q_(e,t)})),(n||r).forEach((function(e){return function(e,t){var n=t.getSignal(e.name),r=e.update;e.init&&(r?E("Signals can not include both init and update expressions."):(r=e.init,n.initonly=!0)),r&&(r=rb(r,t),n.update=r.$expr,n.params=r.$params),e.on&&e.on.forEach((function(e){return y_(e,t,n.id)}))}(e,t)})),se(e.axes).forEach((function(e){return uw(e,t)})),se(e.marks).forEach((function(e){return CA(e,t)})),se(e.legends).forEach((function(e){return FA(e,t)})),e.title&&OA(e.title,t),t.parseLambdas(),t}function lw(e,t){var n=t.config,r=e_(t.root=t.add(Zx())),i=function(e,t){var n=function(n){return l_(e[n],t[n])},r=[cw("background",n("background")),cw("autosize",wx(n("autosize"))),cw("padding",Ex(n("padding"))),cw("width",n("width")||0),cw("height",n("height")||0)],i=r.reduce((function(e,t){return e[t.name]=t,e}),{}),a={};return se(e.signals).forEach((function(e){ke(i,e.name)?e=ye(i[e.name],e):r.push(e),a[e.name]=e})),se(t.signals).forEach((function(e){ke(a,e.name)||ke(i,e.name)||r.push(e)})),r}(e,n);i.forEach((function(e){return Jx(e,t)})),t.description=e.description||n.description,t.eventConfig=n.events,t.legends=t.objectProperty(n.legend&&n.legend.layout),t.locale=n.locale;var a=t.add(w_()),u=t.add(C_(Gx(function(e){return Sx({enter:{x:{value:0},y:{value:0}},update:{width:{signal:"width"},height:{signal:"height"}}},e)}(e.encode),Ok,Rx,e.style,t,{pulse:e_(a)}))),o=t.add(V_({layout:t.objectProperty(e.layout),legends:t.legends,autosize:t.signalRef("autosize"),mark:r,pulse:e_(u)}));t.operators.pop(),t.pushState(e_(u),e_(o),null),sw(e,t,i),t.operators.push(o);var s=t.add(A_({mark:r,pulse:e_(o)}));return s=t.add($_({pulse:e_(s)})),s=t.add(G_({pulse:e_(s)})),t.addData("root",new kA(t,a,a,s)),t}function cw(e,t){return t&&t.signal?{name:e,update:t.signal}:{name:e,value:t}}function fw(e,t){this.config=e||{},this.options=t||{},this.bindings=[],this.field={},this.signals={},this.lambdas={},this.scales={},this.events={},this.data={},this.streams=[],this.updates=[],this.operators=[],this.eventConfig=null,this.locale=null,this._id=0,this._subid=0,this._nextsub=[0],this._parent=[],this._encode=[],this._lookup=[],this._markpath=[]}function dw(e){this.config=e.config,this.options=e.options,this.legends=e.legends,this.field=Object.create(e.field),this.signals=Object.create(e.signals),this.lambdas=Object.create(e.lambdas),this.scales=Object.create(e.scales),this.events=Object.create(e.events),this.data=Object.create(e.data),this.streams=[],this.updates=[],this.operators=[],this._id=0,this._subid=++e._nextsub[0],this._nextsub=e._nextsub,this._parent=e._parent.slice(),this._encode=e._encode.slice(),this._lookup=e._lookup.slice(),this._markpath=e._markpath}function hw(e){return(L(e)?pw:mw)(e)}function pw(e){for(var t=e.length,n="[",r=0;r<t;++r){var i=e[r];n+=(r>0?",":"")+(N(i)?i.signal||hw(i):Ue(i))}return n+"]"}function mw(e){var t,n,r="{",i=0;for(t in e)n=e[t],r+=(++i>1?",":"")+Ue(t)+":"+(N(n)?n.signal||hw(n):Ue(n));return r+"}"}fw.prototype=dw.prototype={parse:function(e){return sw(e,this)},fork:function(){return new dw(this)},isSubscope:function(){return this._subid>0},toRuntime:function(){return this.finish(),{description:this.description,operators:this.operators,streams:this.streams,updates:this.updates,bindings:this.bindings,eventConfig:this.eventConfig,locale:this.locale}},id:function(){return(this._subid?this._subid+":":0)+this._id++},add:function(e){return this.operators.push(e),e.id=this.id(),e.refs&&(e.refs.forEach((function(t){t.$ref=e.id})),e.refs=null),e},proxy:function(e){var t=e instanceof Qx?e_(e):e;return this.add(U_({value:t}))},addStream:function(e){return this.streams.push(e),e.id=this.id(),e},addUpdate:function(e){return this.updates.push(e),e},finish:function(){var e,t;for(e in this.root&&(this.root.root=!0),this.signals)this.signals[e].signal=e;for(e in this.scales)this.scales[e].scale=e;function n(e,t,n){var r;e&&((r=e.data||(e.data={}))[t]||(r[t]=[])).push(n)}for(e in this.data)for(var r in n((t=this.data[e]).input,e,"input"),n(t.output,e,"output"),n(t.values,e,"values"),t.index)n(t.index[r],e,"index:"+r);return this},pushState:function(e,t,n){this._encode.push(e_(this.add(G_({pulse:e})))),this._parent.push(t),this._lookup.push(n?e_(this.proxy(n)):null),this._markpath.push(-1)},popState:function(){this._encode.pop(),this._parent.pop(),this._lookup.pop(),this._markpath.pop()},parent:function(){return $(this._parent)},encode:function(){return $(this._encode)},lookup:function(){return $(this._lookup)},markpath:function(){var e=this._markpath;return++e[e.length-1]},fieldRef:function(e,t){if(Re(e))return t_(e,t);e.signal||E("Unsupported field reference: "+Ue(e));var n=e.signal,r=this.field[n];if(!r){var i={name:this.signalRef(n)};t&&(i.as=t),this.field[n]=r=e_(this.add(S_(i)))}return r},compareRef:function(e){var t=this,n=!1,r=function(e){return o_(e)?(n=!0,t.signalRef(e.signal)):function(e){return e&&e.expr}(e)?(n=!0,t.exprRef(e.expr)):e},i=se(e.field).map(r),a=se(e.order).map(r);return n?e_(this.add(D_({fields:i,orders:a}))):r_(i,a)},keyRef:function(e,t){var n=!1,r=this.signals;return e=se(e).map((function(e){return o_(e)?(n=!0,e_(r[e.signal])):e})),n?e_(this.add(B_({fields:e,flat:t}))):function(e,t){var n={$key:e};return t&&(n.$flat=!0),n}(e,t)},sortRef:function(e){if(!e)return e;var t=i_(e.op,e.field),n=e.order||"ascending";return n.signal?e_(this.add(D_({fields:t,orders:this.signalRef(n.signal)}))):r_(t,n)},event:function(e,t){var n=e+":"+t;if(!this.events[n]){var r=this.id();this.streams.push({id:r,source:e,type:t}),this.events[n]=r}return this.events[n]},hasOwnSignal:function(e){return ke(this.signals,e)},addSignal:function(e,t){this.hasOwnSignal(e)&&E("Duplicate signal name: "+Ue(e));var n=t instanceof Qx?t:this.add(Zx(t));return this.signals[e]=n},getSignal:function(e){return this.signals[e]||E("Unrecognized signal name: "+Ue(e)),this.signals[e]},signalRef:function(e){return this.signals[e]?e_(this.signals[e]):(ke(this.lambdas,e)||(this.lambdas[e]=this.add(Zx(null))),e_(this.lambdas[e]))},parseLambdas:function(){for(var e=Object.keys(this.lambdas),t=0,n=e.length;t<n;++t){var r=e[t],i=rb(r,this),a=this.lambdas[r];a.params=i.$params,a.update=i.$expr}},property:function(e){return e&&e.signal?this.signalRef(e.signal):e},objectProperty:function(e){return e&&N(e)?this.signalRef(e.signal||hw(e)):e},exprRef:function(e,t){var n={expr:rb(e,this)};return t&&(n.expr.$name=t),e_(this.add(F_(n)))},addBinding:function(e,t){this.bindings||E("Nested signals do not support binding: "+Ue(e)),this.bindings.push(ye({signal:e},t))},addScaleProj:function(e,t){ke(this.scales,e)&&E("Duplicate scale or projection name: "+Ue(e)),this.scales[e]=this.add(t)},addScale:function(e,t){this.addScaleProj(e,W_(t))},addProjection:function(e,t){this.addScaleProj(e,j_(t))},getScale:function(e){return this.scales[e]||E("Unrecognized scale name: "+Ue(e)),this.scales[e]},scaleRef:function(e){return e_(this.getScale(e))},scaleType:function(e){return this.getScale(e).params.type},projectionRef:function(e){return this.scaleRef(e)},projectionType:function(e){return this.scaleType(e)},addData:function(e,t){return ke(this.data,e)&&E("Duplicate data set name: "+Ue(e)),this.data[e]=t},getData:function(e){return this.data[e]||E("Undefined data set name: "+Ue(e)),this.data[e]},addDataPipeline:function(e,t){return ke(this.data,e)&&E("Duplicate data set name: "+Ue(e)),this.addData(e,kA.fromEntries(this,t))}},ye(ai,Du,jh,gp,lm,xm,sv,Pm,hv,gv,Bv,Gv),Object.defineProperty(e,"path",{enumerable:!0,get:function(){return s.path}}),e.Bounds=Hs,e.CanvasHandler=wf,e.CanvasRenderer=Mf,e.DATE=gt,e.DAY=yt,e.DAYOFYEAR=bt,e.Dataflow=ni,e.Debug=4,e.Error=1,e.EventStream=Tr,e.Gradient=Jo,e.GroupItem=Ys,e.HOURS=xt,e.Handler=uf,e.Info=3,e.Item=Vs,e.MILLISECONDS=At,e.MINUTES=_t,e.MONTH=mt,e.Marks=$c,e.MultiPulse=Xr,e.None=0,e.Operator=Rr,e.Parameters=Sr,e.Pulse=Gr,e.QUARTER=pt,e.RenderType=bd,e.Renderer=sf,e.ResourceLoader=Xs,e.SECONDS=kt,e.SVGHandler=Bf,e.SVGRenderer=nd,e.SVGStringRenderer=vd,e.Scenegraph=Qc,e.TIME_UNITS=wt,e.Transform=ii,e.View=lx,e.WEEK=vt,e.Warn=2,e.YEAR=ht,e.accessor=x,e.accessorFields=k,e.accessorName=_,e.array=se,e.ascending=de,e.bandwidthNRD=di,e.bin=hi,e.bootstrapCI=pi,e.boundClip=Cd,e.boundContext=vl,e.boundItem=Wc,e.boundMark=Hc,e.boundStroke=Ks,e.changeset=Fr,e.clampRange=le,e.codegenExpression=oy,e.compare=fe,e.constant=ve,e.cumulativeLogNormal=Ci,e.cumulativeNormal=_i,e.cumulativeUniform=Ri,e.dayofyear=Bt,e.debounce=ge,e.defaultLocale=Ln,e.definition=ui,e.densityLogNormal=Ei,e.densityNormal=xi,e.densityUniform=Oi,e.domChild=tf,e.domClear=nf,e.domCreate=Zc,e.domFind=ef,e.dotbin=mi,e.error=E,e.expressionFunction=nb,e.extend=ye,e.extent=be,e.extentIndex=xe,e.falsy=z,e.fastmap=we,e.field=F,e.flush=De,e.font=qc,e.fontFamily=zc,e.fontSize=Mc,e.format=lr,e.formatLocale=Mn,e.formats=cr,e.hasOwnProperty=ke,e.id=M,e.identity=S,e.inferType=nr,e.inferTypes=rr,e.ingest=kr,e.inherits=Ee,e.inrange=Ce,e.interpolate=xo,e.interpolateColors=go,e.interpolateRange=vo,e.intersect=kd,e.intersectBoxLine=Cl,e.intersectPath=Al,e.intersectPoint=wl,e.intersectRule=El,e.isArray=L,e.isBoolean=Fe,e.isDate=Me,e.isFunction=ce,e.isIterable=Se,e.isNumber=Be,e.isObject=N,e.isRegExp=Oe,e.isString=Re,e.isTuple=br,e.key=ze,e.lerp=qe,e.lineHeight=Sc,e.loader=hr,e.locale=Tn,e.logger=T,e.lruCache=Te,e.markup=Yf,e.merge=Le,e.mergeConfig=j,e.multiLineOffset=Oc,e.one=O,e.pad=Pe,e.panLinear=Q,e.panLog=K,e.panPow=Z,e.panSymlog=ee,e.parse=function(e,t,n){var r,i,a,u,o;return N(e)||E("Input Vega specification must be an object."),lw(e,new fw(t=j({description:"Vega visualization",padding:0,autosize:"pad",background:null,events:{defaults:{allow:["wheel"]}},group:null,mark:null,arc:{fill:i="#4c78a8"},area:{fill:i},image:null,line:{stroke:i,strokeWidth:2},path:{stroke:i},rect:{fill:i},rule:{stroke:a="#000"},shape:{stroke:i},symbol:{fill:i,size:64},text:{fill:a,font:r="sans-serif",fontSize:11},trail:{fill:i,size:2},style:{"guide-label":{fill:a,font:r,fontSize:10},"guide-title":{fill:a,font:r,fontSize:11,fontWeight:"bold"},"group-title":{fill:a,font:r,fontSize:13,fontWeight:"bold"},"group-subtitle":{fill:a,font:r,fontSize:12},point:{size:30,strokeWidth:2,shape:"circle"},circle:{size:30,strokeWidth:2},square:{size:30,strokeWidth:2,shape:"square"},cell:{fill:"transparent",stroke:o="#ddd"}},title:{orient:"top",anchor:"middle",offset:4,subtitlePadding:3},axis:{minExtent:0,maxExtent:200,bandPosition:.5,domain:!0,domainWidth:1,domainColor:u="#888",grid:!1,gridWidth:1,gridColor:o,labels:!0,labelAngle:0,labelLimit:180,labelOffset:0,labelPadding:2,ticks:!0,tickColor:u,tickOffset:0,tickRound:!0,tickSize:5,tickWidth:1,titlePadding:4},axisBand:{tickOffset:-.5},projection:{type:"mercator"},legend:{orient:"right",padding:0,gridAlign:"each",columnPadding:10,rowPadding:2,symbolDirection:"vertical",gradientDirection:"vertical",gradientLength:200,gradientThickness:16,gradientStrokeColor:o,gradientStrokeWidth:0,gradientLabelOffset:2,labelAlign:"left",labelBaseline:"middle",labelLimit:160,labelOffset:4,labelOverlap:!0,symbolLimit:30,symbolType:"circle",symbolSize:100,symbolOffset:0,symbolStrokeWidth:1.5,symbolBaseFillColor:"transparent",symbolBaseStrokeColor:u,titleLimit:180,titleOrient:"top",titlePadding:5,layout:{offset:18,direction:"horizontal",left:{direction:"vertical"},right:{direction:"vertical"}}},range:{category:{scheme:"tableau10"},ordinal:{scheme:"blues"},heatmap:{scheme:"yellowgreenblue"},ramp:{scheme:"blues"},diverging:{scheme:"blueorange",extent:[1,0]},symbol:["circle","square","triangle-up","cross","diamond","triangle-right","triangle-down","triangle-left"]}},t,e.config),n)).toRuntime()},e.parseExpression=ry,e.parseSelector=xx,e.pathCurves=Ko,e.pathEqual=Md,e.pathParse=is,e.pathRectangle=Fs,e.pathRender=ms,e.pathSymbols=bs,e.pathTrail=Ms,e.peek=$,e.point=af,e.projection=Sp,e.quantileLogNormal=Fi,e.quantileNormal=ki,e.quantileUniform=zi,e.quantiles=ci,e.quantizeInterpolator=yo,e.quarter=ue,e.quartiles=fi,e.randomInteger=function(t,n){var r,i,a;null==n&&(n=t,t=0);var u={min:function(e){return arguments.length?(a=i-(r=e||0),u):r},max:function(e){return arguments.length?(a=(i=e||0)-r,u):i},sample:function(){return r+Math.floor(a*e.random())},pdf:function(e){return e===Math.floor(e)&&e>=r&&e<i?1/a:0},cdf:function(e){var t=Math.floor(e);return t<r?0:t>=i?1:(t-r+1)/a},icdf:function(e){return e>=0&&e<=1?r-1+Math.floor(e*a):NaN}};return u.min(t).max(n)},e.randomKDE=wi,e.randomLCG=function(e){return function(){return(e=(1103515245*e+12345)%2147483647)/2147483647}},e.randomLogNormal=Mi,e.randomMixture=Si,e.randomNormal=Ai,e.randomUniform=qi,e.read=dr,e.regressionExp=Ii,e.regressionLinear=ji,e.regressionLoess=Vi,e.regressionLog=Ui,e.regressionPoly=Gi,e.regressionPow=$i,e.regressionQuad=Wi,e.renderModule=_d,e.repeat=Ne,e.resetDefaultLocale=function(){return Cn(),On(),Ln()},e.resetSVGClipId=Ws,e.resetSVGDefIds=function(){Ws(),Go=0},e.responseType=fr,e.runtimeContext=db,e.sampleCurve=Qi,e.sampleLogNormal=Di,e.sampleNormal=bi,e.sampleUniform=Bi,e.scale=ao,e.sceneEqual=Fd,e.sceneFromJSON=Xc,e.scenePickVisit=Nl,e.sceneToJSON=Yc,e.sceneVisit=Ll,e.sceneZOrder=Tl,e.scheme=wo,e.serializeXML=Xf,e.setRandom=function(t){e.random=t},e.span=je,e.splitAccessPath=C,e.stringValue=Ue,e.textMetrics=Ac,e.timeBin=wn,e.timeFloor=Vt,e.timeFormatLocale=zn,e.timeInterval=Zt,e.timeOffset=nn,e.timeSequence=un,e.timeUnitSpecifier=Ft,e.timeUnits=Et,e.toBoolean=Ie,e.toDate=Qe,e.toNumber=W,e.toSet=Ze,e.toString=Ke,e.transform=oi,e.transforms=ai,e.truncate=et,e.truthy=R,e.tupleid=xr,e.typeParsers=Zn,e.utcFloor=Jt,e.utcInterval=en,e.utcOffset=rn,e.utcSequence=on,e.utcdayofyear=Lt,e.utcquarter=oe,e.utcweek=Nt,e.version="5.22.1",e.visitArray=tt,e.week=Ot,e.writeConfig=U,e.zero=B,e.zoomLinear=ne,e.zoomLog=re,e.zoomPow=ie,e.zoomSymlog=ae,Object.defineProperty(e,"__esModule",{value:!0})}));
2
+ //# sourceMappingURL=vega-core.min.js.map