graphdb-workbench 2.2.1 → 2.2.2-TR1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/11.f4c5533cd200c8568ff6.bundle.js +1 -1
  2. package/dist/11.f4c5533cd200c8568ff6.bundle.js.map +1 -1
  3. package/dist/111.a12fdfab1d11ab373ecf.bundle.js +2 -0
  4. package/dist/111.a12fdfab1d11ab373ecf.bundle.js.map +1 -0
  5. package/dist/112.8cd13d27736494201244.bundle.js +2 -0
  6. package/dist/112.8cd13d27736494201244.bundle.js.map +1 -0
  7. package/dist/{12.d9d71e44fdefd12ffbd9.bundle.js → 12.f348b65d06b0213c492e.bundle.js} +2 -2
  8. package/dist/12.f348b65d06b0213c492e.bundle.js.map +1 -0
  9. package/dist/{13.c983d32d3e92f49cd670.bundle.js → 13.fc8afecbe1a39b84c1db.bundle.js} +2 -2
  10. package/dist/13.fc8afecbe1a39b84c1db.bundle.js.map +1 -0
  11. package/dist/{14.8661d578dfadafbcdf84.bundle.js → 14.457cf038826e0d9e033e.bundle.js} +2 -2
  12. package/dist/14.457cf038826e0d9e033e.bundle.js.map +1 -0
  13. package/dist/148.dd250d3cc5aafade33c6.bundle.js +1 -1
  14. package/dist/148.dd250d3cc5aafade33c6.bundle.js.map +1 -1
  15. package/dist/{15.6eada6724367dcd05007.bundle.js → 15.874aa7b7f7972283a629.bundle.js} +2 -2
  16. package/dist/15.874aa7b7f7972283a629.bundle.js.map +1 -0
  17. package/dist/20.fbcb31706f03a07e8827.bundle.js +1 -1
  18. package/dist/20.fbcb31706f03a07e8827.bundle.js.map +1 -1
  19. package/dist/27.83b24ef9ec0fd6964d92.bundle.js +1 -1
  20. package/dist/27.83b24ef9ec0fd6964d92.bundle.js.map +1 -1
  21. package/dist/33.4d23fa109c9184727386.bundle.js +1 -1
  22. package/dist/33.4d23fa109c9184727386.bundle.js.map +1 -1
  23. package/dist/34.f019d485e103b291488a.bundle.js +2 -0
  24. package/dist/34.f019d485e103b291488a.bundle.js.map +1 -0
  25. package/dist/40.50b40301c8cc69a70457.bundle.js +1 -1
  26. package/dist/40.50b40301c8cc69a70457.bundle.js.map +1 -1
  27. package/dist/44.568afd25b8a568b1c18d.bundle.js +2 -0
  28. package/dist/44.568afd25b8a568b1c18d.bundle.js.map +1 -0
  29. package/dist/45.ff1425adb8765ead76fa.bundle.js +2 -0
  30. package/dist/45.ff1425adb8765ead76fa.bundle.js.map +1 -0
  31. package/dist/46.e92017f79bee05197e4a.bundle.js +2 -0
  32. package/dist/46.e92017f79bee05197e4a.bundle.js.map +1 -0
  33. package/dist/47.099bba66b99e58961fd9.bundle.js +2 -0
  34. package/dist/47.099bba66b99e58961fd9.bundle.js.map +1 -0
  35. package/dist/48.5a84d14ed4cb41f91fca.bundle.js +2 -0
  36. package/dist/48.5a84d14ed4cb41f91fca.bundle.js.map +1 -0
  37. package/dist/49.ad3b75a5d0c8679165b9.bundle.js +2 -0
  38. package/dist/49.ad3b75a5d0c8679165b9.bundle.js.map +1 -0
  39. package/dist/50.5114c92299726180a264.bundle.js +2 -0
  40. package/dist/50.5114c92299726180a264.bundle.js.map +1 -0
  41. package/dist/51.f884748db1436a79a134.bundle.js +2 -0
  42. package/dist/51.f884748db1436a79a134.bundle.js.map +1 -0
  43. package/dist/52.351e9098a43e13a6f2da.bundle.js +2 -0
  44. package/dist/52.351e9098a43e13a6f2da.bundle.js.map +1 -0
  45. package/dist/94.38349f52df66313fbcc0.bundle.js +1 -1
  46. package/dist/94.38349f52df66313fbcc0.bundle.js.map +1 -1
  47. package/dist/{bundle.119af3621ec41f8cbf04.bundle.js → bundle.85f39e50f7dea19ff7b6.bundle.js} +3 -3
  48. package/dist/bundle.85f39e50f7dea19ff7b6.bundle.js.map +1 -0
  49. package/dist/css/jmx.css +7 -1
  50. package/dist/i18n/locale-en.json +22 -6
  51. package/dist/i18n/locale-fr.json +61 -15
  52. package/dist/index.html +3 -3
  53. package/dist/js/angular/core/directives/rdfresourcesearch/templates/rdfResourceSearchTemplate.html +1 -1
  54. package/dist/pages/autocomplete.html +1 -1
  55. package/dist/pages/choose-repository-type.html +1 -1
  56. package/dist/pages/cluster-management/clusterInfo.html +3 -3
  57. package/dist/pages/create-index.html +4 -4
  58. package/dist/pages/dependencies.html +1 -1
  59. package/dist/pages/domainRangeInfo.html +2 -2
  60. package/dist/pages/edit.html +1 -1
  61. package/dist/pages/explore.html +1 -1
  62. package/dist/pages/export.html +1 -1
  63. package/dist/pages/find.html +1 -1
  64. package/dist/pages/graph-config/saveGraphConfig.html +11 -11
  65. package/dist/pages/graphs-visualizations.html +7 -7
  66. package/dist/pages/guides.html +1 -1
  67. package/dist/pages/import.html +1 -1
  68. package/dist/pages/jdbc-create.html +5 -5
  69. package/dist/pages/monitor/queries.html +1 -1
  70. package/dist/pages/monitor/resources.html +121 -31
  71. package/dist/pages/namespaces.html +2 -2
  72. package/dist/pages/plugins.html +1 -1
  73. package/dist/pages/rdfClassHierarchyInfo.html +7 -7
  74. package/dist/pages/rdfrank.html +2 -2
  75. package/dist/pages/repositories.html +2 -2
  76. package/dist/pages/repository.html +2 -2
  77. package/dist/pages/similarity-indexes.html +1 -1
  78. package/dist/pages/sparql-template-create.html +5 -5
  79. package/dist/pages/sparql.html +3 -3
  80. package/dist/pages/webapi.html +2 -2
  81. package/dist/plugins.js +4 -3
  82. package/dist/res/swagger/index.html +27 -27
  83. package/package.json +1 -1
  84. package/dist/111.4845cf402b3a4c3c006c.bundle.js +0 -2
  85. package/dist/111.4845cf402b3a4c3c006c.bundle.js.map +0 -1
  86. package/dist/112.99c50f08e6724346dc3a.bundle.js +0 -2
  87. package/dist/112.99c50f08e6724346dc3a.bundle.js.map +0 -1
  88. package/dist/12.d9d71e44fdefd12ffbd9.bundle.js.map +0 -1
  89. package/dist/13.c983d32d3e92f49cd670.bundle.js.map +0 -1
  90. package/dist/14.8661d578dfadafbcdf84.bundle.js.map +0 -1
  91. package/dist/15.6eada6724367dcd05007.bundle.js.map +0 -1
  92. package/dist/34.01b159cdf635ac9d0dd7.bundle.js +0 -2
  93. package/dist/34.01b159cdf635ac9d0dd7.bundle.js.map +0 -1
  94. package/dist/44.4d7cb09cdd1413d5f879.bundle.js +0 -2
  95. package/dist/44.4d7cb09cdd1413d5f879.bundle.js.map +0 -1
  96. package/dist/45.8c6f6eba4736e953c2bc.bundle.js +0 -2
  97. package/dist/45.8c6f6eba4736e953c2bc.bundle.js.map +0 -1
  98. package/dist/46.3a0da10162409588560c.bundle.js +0 -2
  99. package/dist/46.3a0da10162409588560c.bundle.js.map +0 -1
  100. package/dist/47.049aedaa6cfccef06f69.bundle.js +0 -2
  101. package/dist/47.049aedaa6cfccef06f69.bundle.js.map +0 -1
  102. package/dist/48.d7b02a85dfa52084b1c4.bundle.js +0 -2
  103. package/dist/48.d7b02a85dfa52084b1c4.bundle.js.map +0 -1
  104. package/dist/49.2e7858348448fdde1332.bundle.js +0 -2
  105. package/dist/49.2e7858348448fdde1332.bundle.js.map +0 -1
  106. package/dist/50.1650ec02515a7dce98a5.bundle.js +0 -2
  107. package/dist/50.1650ec02515a7dce98a5.bundle.js.map +0 -1
  108. package/dist/51.c597233d286f68e37481.bundle.js +0 -2
  109. package/dist/51.c597233d286f68e37481.bundle.js.map +0 -1
  110. package/dist/52.0ea1cd862aeb2461a9c4.bundle.js +0 -2
  111. package/dist/52.0ea1cd862aeb2461a9c4.bundle.js.map +0 -1
  112. package/dist/bundle.119af3621ec41f8cbf04.bundle.js.map +0 -1
@@ -1,2 +1,2 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[12,15,34,41,44,45,46,47,48,49,50,51,52,63,111,113,117,134],{138:function(t,e,n){"use strict";n.r(e);n(4),n(11),n(61),n(10),n(91),n(92),n(45),n(55),n(56);angular.module("graphdb.framework.jdbc",["toastr","ui.bootstrap","graphdb.framework.jdbc.controllers","graphdb.framework.core.services.repositories","graphdb.framework.core.directives","graphdb.framework.rest.jdbc.service","graphdb.framework.core.directives.queryeditor.controllers","graphdb.framework.core.directives.queryeditor.sparqltab","graphdb.framework.core.directives.queryeditor.queryeditor"])},258:function(t,e,n){var r,i;r=[n(257)],void 0===(i=function(){var e;return(e={dev:!1}).tooltip=e.tooltip||{},e.utils=e.utils||{},e.models=e.models||{},e.charts={},e.logs={},e.dom={},"undefined"==typeof d3&&(d3=n(256)),e.dispatch=d3.dispatch("render_start","render_end"),Function.prototype.bind||(Function.prototype.bind=function(t){if("function"!=typeof this)throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");var e=Array.prototype.slice.call(arguments,1),n=this,r=function(){},i=function(){return n.apply(this instanceof r&&t?this:t,e.concat(Array.prototype.slice.call(arguments)))};return r.prototype=this.prototype,i.prototype=new r,i}),e.dev&&(e.dispatch.on("render_start",(function(t){e.logs.startTime=+new Date})),e.dispatch.on("render_end",(function(t){e.logs.endTime=+new Date,e.logs.totalTime=e.logs.endTime-e.logs.startTime,e.log("total",e.logs.totalTime)}))),e.log=function(){if(e.dev&&window.console&&console.log&&console.log.apply)console.log.apply(console,arguments);else if(e.dev&&window.console&&"function"==typeof console.log&&Function.prototype.bind){var t=Function.prototype.bind.call(console.log,console);t.apply(console,arguments)}return arguments[arguments.length-1]},e.deprecated=function(t,e){console&&console.warn&&console.warn("nvd3 warning: `"+t+"` has been deprecated. ",e||"")},e.render=function(t){t=t||1,e.render.active=!0,e.dispatch.render_start();var n=function(){for(var r,i,o=0;o<t&&(i=e.render.queue[o]);o++)r=i.generate(),typeof i.callback==typeof Function&&i.callback(r);e.render.queue.splice(0,o),e.render.queue.length?setTimeout(n):(e.dispatch.render_end(),e.render.active=!1)};setTimeout(n)},e.render.active=!1,e.render.queue=[],e.addGraph=function(t){typeof arguments[0]==typeof Function&&(t={generate:arguments[0],callback:arguments[1]}),e.render.queue.push(t),e.render.active||e.render()},t.exports=e,"undefined"!=typeof window&&(window.nv=e),e.dom.write=function(t){return void 0!==window.fastdom?fastdom.mutate(t):t()},e.dom.read=function(t){return void 0!==window.fastdom?fastdom.measure(t):t()},e.interactiveGuideline=function(){"use strict";var t={left:0,top:0},n=null,r=null,i=d3.scale.linear(),o=d3.dispatch("elementMousemove","elementMouseout","elementClick","elementDblclick","elementMouseDown","elementMouseUp"),a=!0,s=null,l=e.models.tooltip(),u=window.ActiveXObject;function c(d){d.each((function(d){var f=d3.select(this),p=n||960,h=r||400,g=f.selectAll("g.nv-wrap.nv-interactiveLineLayer").data([d]);function v(){var e=d3.event.clientX-this.getBoundingClientRect().left,n=d3.event.clientY-this.getBoundingClientRect().top,r=!0,a=!1;if(u&&(e=d3.event.offsetX,n=d3.event.offsetY,"svg"!==d3.event.target.tagName&&(r=!1),d3.event.target.className.baseVal.match("nv-legend")&&(a=!0)),r&&(e-=t.left,n-=t.top),"mouseout"===d3.event.type||e<0||n<0||e>p||n>h||d3.event.relatedTarget&&void 0===d3.event.relatedTarget.ownerSVGElement||a){if(u&&d3.event.relatedTarget&&void 0===d3.event.relatedTarget.ownerSVGElement&&(void 0===d3.event.relatedTarget.className||d3.event.relatedTarget.className.match(l.nvPointerEventsClass)))return;return o.elementMouseout({mouseX:e,mouseY:n}),c.renderGuideLine(null),void l.hidden(!0)}l.hidden(!1);var s=void 0;if("function"==typeof i.rangeBands){var d=d3.bisect(i.range(),e)-1;if(!(i.range()[d]+i.rangeBand()>=e))return o.elementMouseout({mouseX:e,mouseY:n}),c.renderGuideLine(null),void l.hidden(!0);s=i.domain()[d3.bisect(i.range(),e)-1]}else s=i.invert(e);o.elementMousemove({mouseX:e,mouseY:n,pointXValue:s}),"dblclick"===d3.event.type&&o.elementDblclick({mouseX:e,mouseY:n,pointXValue:s}),"click"===d3.event.type&&o.elementClick({mouseX:e,mouseY:n,pointXValue:s}),"mousedown"===d3.event.type&&o.elementMouseDown({mouseX:e,mouseY:n,pointXValue:s}),"mouseup"===d3.event.type&&o.elementMouseUp({mouseX:e,mouseY:n,pointXValue:s})}g.enter().append("g").attr("class"," nv-wrap nv-interactiveLineLayer").append("g").attr("class","nv-interactiveGuideLine"),s&&(s.on("touchmove",v).on("mousemove",v,!0).on("mouseout",v,!0).on("mousedown",v,!0).on("mouseup",v,!0).on("dblclick",v).on("click",v),c.guideLine=null,c.renderGuideLine=function(t){a&&(c.guideLine&&c.guideLine.attr("x1")===t||e.dom.write((function(){var n=g.select(".nv-interactiveGuideLine").selectAll("line").data(null!=t?[e.utils.NaNtoZero(t)]:[],String);n.enter().append("line").attr("class","nv-guideline").attr("x1",(function(t){return t})).attr("x2",(function(t){return t})).attr("y1",h).attr("y2",0),n.exit().remove()})))})}))}return l.duration(0).hideDelay(0).hidden(!1),c.dispatch=o,c.tooltip=l,c.margin=function(e){return arguments.length?(t.top=void 0!==e.top?e.top:t.top,t.left=void 0!==e.left?e.left:t.left,c):t},c.width=function(t){return arguments.length?(n=t,c):n},c.height=function(t){return arguments.length?(r=t,c):r},c.xScale=function(t){return arguments.length?(i=t,c):i},c.showGuideLine=function(t){return arguments.length?(a=t,c):a},c.svgContainer=function(t){return arguments.length?(s=t,c):s},c},e.interactiveBisect=function(t,e,n){"use strict";if(!(t instanceof Array))return null;var r;r="function"!=typeof n?function(t){return t.x}:n;var i=d3.bisector((function(t,e){return r(t)-e})).left,o=d3.max([0,i(t,e)-1]),a=r(t[o]);if(void 0===a&&(a=o),a===e)return o;var s=d3.min([o+1,t.length-1]),l=r(t[s]);return void 0===l&&(l=s),Math.abs(l-e)>=Math.abs(a-e)?o:s},e.nearestValueIndex=function(t,e,n){"use strict";var r=1/0,i=null;return t.forEach((function(t,o){var a=Math.abs(e-t);null!=t&&a<=r&&a<n&&(r=a,i=o)})),i},e.models.tooltip=function(){"use strict";var t="nvtooltip-"+Math.floor(1e5*Math.random()),n=null,r="w",i=25,o=0,a=null,s=!0,l=200,u=null,c={left:null,top:null},d=!0,f=100,p=!0,h=function(t,e,n){return t},g=function(t){return t},v=function(t,e){return t},m=function(t,e){if(null===t)return"";var n=d3.select(document.createElement("table"));p&&n.selectAll("thead").data([t]).enter().append("thead").append("tr").append("td").attr("colspan",3).append("strong").classed("x-value",!0).html(g(t.value));var r=n.selectAll("tbody").data([t]).enter().append("tbody").selectAll("tr").data((function(t){return t.series})).enter().append("tr").classed("highlight",(function(t){return t.highlight}));r.append("td").classed("legend-color-guide",!0).append("div").style("background-color",(function(t){return t.color})),r.append("td").classed("key",!0).classed("total",(function(t){return!!t.total})).html((function(t,e){return v(t.key,e)})),r.append("td").classed("value",!0).html((function(t,e){return h(t.value,e,t)})),r.filter((function(t,e){return void 0!==t.percent})).append("td").classed("percent",!0).html((function(t,e){return"("+d3.format("%")(t.percent)+")"})),r.selectAll("td").each((function(t){if(t.highlight){var e=d3.scale.linear().domain([0,1]).range(["#fff",t.color]);d3.select(this).style("border-bottom-color",e(.6)).style("border-top-color",e(.6))}}));var i=n.node().outerHTML;return void 0!==t.footer&&(i+="<div class='footer'>"+t.footer+"</div>"),i},y=function(){var t={left:null!==d3.event?d3.event.clientX:0,top:null!==d3.event?d3.event.clientY:0};if("none"!=getComputedStyle(document.body).transform){var e=document.body.getBoundingClientRect();t.left-=e.left,t.top-=e.top}return t},b=function(){e.dom.read((function(){var t=y(),e=function(t){var e,n,o,a=u.node().offsetHeight,s=u.node().offsetWidth,l=document.documentElement.clientWidth,c=document.documentElement.clientHeight;switch(r){case"e":e=-s-i,n=-a/2,t.left+e<0&&(e=i),(o=t.top+n)<0&&(n-=o),(o=t.top+n+a)>c&&(n-=o-c);break;case"w":e=i,n=-a/2,t.left+e+s>l&&(e=-s-i),(o=t.top+n)<0&&(n-=o),(o=t.top+n+a)>c&&(n-=o-c);break;case"n":e=-s/2-5,n=i,t.top+n+a>c&&(n=-a-i),(o=t.left+e)<0&&(e-=o),(o=t.left+e+s)>l&&(e-=o-l);break;case"s":e=-s/2,n=-a-i,t.top+n<0&&(n=i),(o=t.left+e)<0&&(e-=o),(o=t.left+e+s)>l&&(e-=o-l);break;case"center":e=-s/2,n=-a/2;break;default:e=0,n=0}return{left:e,top:n}}(t),n=t.left+e.left,o=t.top+e.top;if(s)u.interrupt().transition().delay(l).duration(0).style("opacity",0);else{var a="translate("+c.left+"px, "+c.top+"px)",d="translate("+Math.round(n)+"px, "+Math.round(o)+"px)",p=d3.interpolateString(a,d),h=u.style("opacity")<.1;u.interrupt().transition().duration(h?0:f).styleTween("transform",(function(t){return p}),"important").styleTween("-webkit-transform",(function(t){return p})).style("-ms-transform",d).style("opacity",1)}c.left=n,c.top=o}))};function x(){if(d&&function(t){if(t&&t.series){if(e.utils.isArray(t.series))return!0;if(e.utils.isObject(t.series))return t.series=[t.series],!0}return!1}(n))return e.dom.write((function(){u&&u.node()||((u=d3.select(document.body).select("#"+t).data([1])).enter().append("div").attr("class","nvtooltip "+(a||"xy-tooltip")).attr("id",t).style("top",0).style("left",0).style("opacity",0).style("position","fixed").selectAll("div, table, td, tr").classed("nv-pointer-events-none",!0).classed("nv-pointer-events-none",!0),u.exit().remove());var e=m(n,u.node());e&&(u.node().innerHTML=e),b()})),x}return x.nvPointerEventsClass="nv-pointer-events-none",x.options=e.utils.optionsFunc.bind(x),x._options=Object.create({},{duration:{get:function(){return f},set:function(t){f=t}},gravity:{get:function(){return r},set:function(t){r=t}},distance:{get:function(){return i},set:function(t){i=t}},snapDistance:{get:function(){return o},set:function(t){o=t}},classes:{get:function(){return a},set:function(t){a=t}},enabled:{get:function(){return d},set:function(t){d=t}},hideDelay:{get:function(){return l},set:function(t){l=t}},contentGenerator:{get:function(){return m},set:function(t){m=t}},valueFormatter:{get:function(){return h},set:function(t){h=t}},headerFormatter:{get:function(){return g},set:function(t){g=t}},keyFormatter:{get:function(){return v},set:function(t){v=t}},headerEnabled:{get:function(){return p},set:function(t){p=t}},position:{get:function(){return y},set:function(t){y=t}},chartContainer:{get:function(){return document.body},set:function(t){e.deprecated("chartContainer","feature removed after 1.8.3")}},fixedTop:{get:function(){return null},set:function(t){e.deprecated("fixedTop","feature removed after 1.8.1")}},offset:{get:function(){return{left:0,top:0}},set:function(t){e.deprecated("offset","use chart.tooltip.distance() instead")}},hidden:{get:function(){return s},set:function(t){s!=t&&(s=!!t,x())}},data:{get:function(){return n},set:function(t){t.point&&(t.value=t.point.x,t.series=t.series||{},t.series.value=t.point.y,t.series.color=t.point.color||t.series.color),n=t}},node:{get:function(){return u.node()},set:function(t){}},id:{get:function(){return t},set:function(t){}}}),e.utils.initOptions(x),x},e.utils.windowSize=function(){var t={width:640,height:480};return window.innerWidth&&window.innerHeight?(t.width=window.innerWidth,t.height=window.innerHeight,t):"CSS1Compat"==document.compatMode&&document.documentElement&&document.documentElement.offsetWidth?(t.width=document.documentElement.offsetWidth,t.height=document.documentElement.offsetHeight,t):document.body&&document.body.offsetWidth?(t.width=document.body.offsetWidth,t.height=document.body.offsetHeight,t):t},e.utils.isArray=Array.isArray,e.utils.isObject=function(t){return null!==t&&"object"==typeof t},e.utils.isFunction=function(t){return"function"==typeof t},e.utils.isDate=function(t){return"[object Date]"===toString.call(t)},e.utils.isNumber=function(t){return!isNaN(t)&&"number"==typeof t},e.utils.windowResize=function(t){return window.addEventListener?window.addEventListener("resize",t):e.log("ERROR: Failed to bind to window.resize with: ",t),{callback:t,clear:function(){window.removeEventListener("resize",t)}}},e.utils.getColor=function(t){if(void 0===t)return e.utils.defaultColor();if(e.utils.isArray(t)){var n=d3.scale.ordinal().range(t);return function(t,e){var r=void 0===e?t:e;return t.color||n(r)}}return t},e.utils.defaultColor=function(){return e.utils.getColor(d3.scale.category20().range())},e.utils.customTheme=function(t,n,r){n=n||function(t){return t.key};var i=(r=r||d3.scale.category20().range()).length;return function(o,a){var s=n(o);return e.utils.isFunction(t[s])?t[s]():void 0!==t[s]?t[s]:(i||(i=r.length),r[i-=1])}},e.utils.pjax=function(t,n){var r=function(r){d3.html(r,(function(r){var i=d3.select(n).node();i.parentNode.replaceChild(d3.select(r).select(n).node(),i),e.utils.pjax(t,n)}))};d3.selectAll(t).on("click",(function(){history.pushState(this.href,this.textContent,this.href),r(this.href),d3.event.preventDefault()})),d3.select(window).on("popstate",(function(){d3.event.state&&r(d3.event.state)}))},e.utils.calcApproxTextWidth=function(t){if(e.utils.isFunction(t.style)&&e.utils.isFunction(t.text)){var n=parseInt(t.style("font-size").replace("px",""),10),r=t.text().length;return e.utils.NaNtoZero(r*n*.5)}return 0},e.utils.NaNtoZero=function(t){return!e.utils.isNumber(t)||isNaN(t)||null===t||t===1/0||t===-1/0?0:t},d3.selection.prototype.watchTransition=function(t){var e=[this].concat([].slice.call(arguments,1));return t.transition.apply(t,e)},e.utils.renderWatch=function(t,n){if(!(this instanceof e.utils.renderWatch))return new e.utils.renderWatch(t,n);var r=void 0!==n?n:250,i=[],o=this;this.models=function(t){return(t=[].slice.call(arguments,0)).forEach((function(t){var e;t.__rendered=!1,(e=t).dispatch.on("renderEnd",(function(t){e.__rendered=!0,o.renderEnd("model")})),i.indexOf(t)<0&&i.push(t)})),this},this.reset=function(t){void 0!==t&&(r=t),i=[]},this.transition=function(t,e,n){if(n=(e=arguments.length>1?[].slice.call(arguments,1):[]).length>1?e.pop():void 0!==r?r:250,t.__rendered=!1,i.indexOf(t)<0&&i.push(t),0===n)return t.__rendered=!0,t.delay=function(){return this},t.duration=function(){return this},t;0===t.length||t.every((function(t){return!t.length}))?t.__rendered=!0:t.__rendered=!1;var a=0;return t.transition().duration(n).each((function(){++a})).each("end",(function(n,r){0==--a&&(t.__rendered=!0,o.renderEnd.apply(this,e))}))},this.renderEnd=function(){i.every((function(t){return t.__rendered}))&&(i.forEach((function(t){t.__rendered=!1})),t.renderEnd.apply(this,arguments))}},e.utils.deepExtend=function(t){var n=arguments.length>1?[].slice.call(arguments,1):[];n.forEach((function(n){for(var r in n){var i=e.utils.isArray(t[r]),o=e.utils.isObject(t[r]),a=e.utils.isObject(n[r]);o&&!i&&a?e.utils.deepExtend(t[r],n[r]):t[r]=n[r]}}))},e.utils.state=function(){if(!(this instanceof e.utils.state))return new e.utils.state;var t={},n=function(){},r=function(){return{}},i=null;this.dispatch=d3.dispatch("change","set"),this.dispatch.on("set",(function(t){n(t,!0)})),this.getter=function(t){return r=t,this},this.setter=function(t,e){return e||(e=function(){}),n=function(n,r){t(n),r&&e()},this},this.init=function(t){i=i||{},e.utils.deepExtend(i,t)};var o=function(){var e=r();if(JSON.stringify(e)===JSON.stringify(t))return!1;for(var n in e)void 0===t[n]&&(t[n]={}),t[n]=e[n];return!0};this.update=function(){i&&(n(i,!1),i=null),o.call(this)&&this.dispatch.change(t)}},e.utils.optionsFunc=function(t){return t&&d3.map(t).forEach(function(t,n){e.utils.isFunction(this[t])&&this[t](n)}.bind(this)),this},e.utils.calcTicksX=function(t,n){for(var r=1,i=0;i<n.length;i+=1){var o=n[i]&&n[i].values?n[i].values.length:0;r=o>r?o:r}return e.log("Requested number of ticks: ",t),e.log("Calculated max values to be: ",r),t=(t=t>r?t=r-1:t)<1?1:t,t=Math.floor(t),e.log("Calculating tick count as: ",t),t},e.utils.calcTicksY=function(t,n){return e.utils.calcTicksX(t,n)},e.utils.initOption=function(t,e){t._calls&&t._calls[e]?t[e]=t._calls[e]:(t[e]=function(n){return arguments.length?(t._overrides[e]=!0,t._options[e]=n,t):t._options[e]},t["_"+e]=function(n){return arguments.length?(t._overrides[e]||(t._options[e]=n),t):t._options[e]})},e.utils.initOptions=function(t){t._overrides=t._overrides||{};var n=Object.getOwnPropertyNames(t._options||{}),r=Object.getOwnPropertyNames(t._calls||{});for(var i in n=n.concat(r))e.utils.initOption(t,n[i])},e.utils.inheritOptionsD3=function(t,e,n){t._d3options=n.concat(t._d3options||[]),t._d3options=(t._d3options||[]).filter((function(t,e,n){return n.indexOf(t)===e})),n.unshift(e),n.unshift(t),d3.rebind.apply(this,n)},e.utils.arrayUnique=function(t){return t.sort().filter((function(e,n){return!n||e!=t[n-1]}))},e.utils.symbolMap=d3.map(),e.utils.symbol=function(){var t,n=64;function r(r,i){var o=t.call(this,r,i),a=n.call(this,r,i);return-1!==d3.svg.symbolTypes.indexOf(o)?d3.svg.symbol().type(o).size(a)():e.utils.symbolMap.get(o)(a)}return r.type=function(e){return arguments.length?(t=d3.functor(e),r):t},r.size=function(t){return arguments.length?(n=d3.functor(t),r):n},r},e.utils.inheritOptions=function(t,n){var r=Object.getOwnPropertyNames(n._options||{}),i=Object.getOwnPropertyNames(n._calls||{}),o=n._inherited||[],a=n._d3options||[],s=r.concat(i).concat(o).concat(a);s.unshift(n),s.unshift(t),d3.rebind.apply(this,s),t._inherited=e.utils.arrayUnique(r.concat(i).concat(o).concat(r).concat(t._inherited||[])),t._d3options=e.utils.arrayUnique(a.concat(t._d3options||[]))},e.utils.initSVG=function(t){t.classed({"nvd3-svg":!0})},e.utils.sanitizeHeight=function(t,e){return t||parseInt(e.style("height"),10)||400},e.utils.sanitizeWidth=function(t,e){return t||parseInt(e.style("width"),10)||960},e.utils.availableHeight=function(t,n,r){return Math.max(0,e.utils.sanitizeHeight(t,n)-r.top-r.bottom)},e.utils.availableWidth=function(t,n,r){return Math.max(0,e.utils.sanitizeWidth(t,n)-r.left-r.right)},e.utils.noData=function(t,n){var r=t.options(),i=r.margin(),o=r.noData(),a=null==o?["No Data Available."]:[o],s=e.utils.availableHeight(null,n,i),l=e.utils.availableWidth(null,n,i),u=i.left+l/2,c=i.top+s/2;n.selectAll("g").remove();var d=n.selectAll(".nv-noData").data(a);d.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),d.attr("x",u).attr("y",c).text((function(t){return t}))},e.utils.wrapTicks=function(t,e){t.each((function(){for(var t,n=d3.select(this),r=n.text().split(/\s+/).reverse(),i=[],o=0,a=n.attr("y"),s=parseFloat(n.attr("dy")),l=n.text(null).append("tspan").attr("x",0).attr("y",a).attr("dy",s+"em");t=r.pop();)i.push(t),l.text(i.join(" ")),l.node().getComputedTextLength()>e&&(i.pop(),l.text(i.join(" ")),i=[t],l=n.append("tspan").attr("x",0).attr("y",a).attr("dy",1.1*++o+s+"em").text(t))}))},e.utils.arrayEquals=function(t,n){if(t===n)return!0;if(!t||!n)return!1;if(t.length!=n.length)return!1;for(var r=0,i=t.length;r<i;r++)if(t[r]instanceof Array&&n[r]instanceof Array){if(!e.arrayEquals(t[r],n[r]))return!1}else if(t[r]!=n[r])return!1;return!0},e.utils.pointIsInArc=function(t,e,n){var r=n.innerRadius()(e),i=n.outerRadius()(e),o=n.startAngle()(e),a=n.endAngle()(e),s=t.x*t.x+t.y*t.y,l=Math.atan2(t.x,-t.y);return l=l<0?l+2*Math.PI:l,r*r<=s&&s<=i*i&&o<=l&&l<=a},e.models.axis=function(){"use strict";var t,n,r=d3.svg.axis(),i=d3.scale.linear(),o={top:0,right:0,bottom:0,left:0},a=75,s=60,l=null,u=!0,c=0,d=!0,f=!1,p=!1,h=null,g=0,v=void 0,m=250,y=d3.dispatch("renderEnd");r.scale(i).orient("bottom").tickFormat((function(t){return t}));var b=e.utils.renderWatch(y,m);function x(s){return b.reset(),s.each((function(s){var m=d3.select(this);e.utils.initSVG(m);var y=m.selectAll("g.nv-wrap.nv-axis").data([s]),x=(y.enter().append("g").attr("class","nvd3 nv-wrap nv-axis").append("g"),y.select("g"));null!==h?r.ticks(h):"top"!=r.orient()&&"bottom"!=r.orient()||r.ticks(Math.abs(i.range()[1]-i.range()[0])/100),x.watchTransition(b,"axis").call(r),n=n||r.scale();var k=r.tickFormat();null==k&&(k=n.tickFormat());var w,M,C,A=x.selectAll("text.nv-axislabel").data([l||null]);switch(A.exit().remove(),void 0!==v&&x.selectAll("g").select("text").style("font-size",v),r.orient()){case"top":A.enter().append("text").attr("class","nv-axislabel"),C=0,1===i.range().length?C=p?2*i.range()[0]+i.rangeBand():0:2===i.range().length?C=p?i.range()[0]+i.range()[1]+i.rangeBand():i.range()[1]:i.range().length>2&&(C=i.range()[i.range().length-1]+(i.range()[1]-i.range()[0])),A.attr("text-anchor","middle").attr("y",0).attr("x",C/2),u&&((M=y.selectAll("g.nv-axisMaxMin").data(i.domain())).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-x",0==e?"nv-axisMin-x":"nv-axisMax-x"].join(" ")})).append("text"),M.exit().remove(),M.attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i(t))+",0)"})).select("text").attr("dy","-0.5em").attr("y",-r.tickPadding()).attr("text-anchor","middle").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max top").attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i.range()[n])+",0)"})));break;case"bottom":w=g+36;var S=30,D=0,E=x.selectAll("g").select("text"),F="";if(c%360){E.attr("transform",""),E.each((function(t,e){var n=this.getBoundingClientRect(),r=n.width;D=n.height,r>S&&(S=r)})),F="rotate("+c+" 0,"+(D/2+r.tickPadding())+")";var T=Math.abs(Math.sin(c*Math.PI/180));w=(T?T*S:S)+30,E.attr("transform",F).style("text-anchor",c%360>0?"start":"end")}else f?E.attr("transform",(function(t,e){return"translate(0,"+(e%2==0?"0":"12")+")"})):E.attr("transform","translate(0,0)");A.enter().append("text").attr("class","nv-axislabel"),C=0,1===i.range().length?C=p?2*i.range()[0]+i.rangeBand():0:2===i.range().length?C=p?i.range()[0]+i.range()[1]+i.rangeBand():i.range()[1]:i.range().length>2&&(C=i.range()[i.range().length-1]+(i.range()[1]-i.range()[0])),A.attr("text-anchor","middle").attr("y",w).attr("x",C/2),u&&((M=y.selectAll("g.nv-axisMaxMin").data([i.domain()[0],i.domain()[i.domain().length-1]])).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-x",0==e?"nv-axisMin-x":"nv-axisMax-x"].join(" ")})).append("text"),M.exit().remove(),M.attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i(t)+(p?i.rangeBand()/2:0))+",0)"})).select("text").attr("dy",".71em").attr("y",r.tickPadding()).attr("transform",F).style("text-anchor",c?c%360>0?"start":"end":"middle").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max bottom").attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i(t)+(p?i.rangeBand()/2:0))+",0)"})));break;case"right":A.enter().append("text").attr("class","nv-axislabel"),A.style("text-anchor",d?"middle":"begin").attr("transform",d?"rotate(90)":"").attr("y",d?12-Math.max(o.right,a)-(g||0):-10).attr("x",d?d3.max(i.range())/2:r.tickPadding()),u&&((M=y.selectAll("g.nv-axisMaxMin").data(i.domain())).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-y",0==e?"nv-axisMin-y":"nv-axisMax-y"].join(" ")})).append("text").style("opacity",0),M.exit().remove(),M.attr("transform",(function(t,n){return"translate(0,"+e.utils.NaNtoZero(i(t))+")"})).select("text").attr("dy",".32em").attr("y",0).attr("x",r.tickPadding()).style("text-anchor","start").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max right").attr("transform",(function(t,n){return"translate(0,"+e.utils.NaNtoZero(i.range()[n])+")"})).select("text").style("opacity",1));break;case"left":A.enter().append("text").attr("class","nv-axislabel"),A.style("text-anchor",d?"middle":"end").attr("transform",d?"rotate(-90)":"").attr("y",d?25-Math.max(o.left,a)-(g||0):-10).attr("x",d?-d3.max(i.range())/2:-r.tickPadding()),u&&((M=y.selectAll("g.nv-axisMaxMin").data(i.domain())).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-y",0==e?"nv-axisMin-y":"nv-axisMax-y"].join(" ")})).append("text").style("opacity",0),M.exit().remove(),M.attr("transform",(function(t,r){return"translate(0,"+e.utils.NaNtoZero(n(t))+")"})).select("text").attr("dy",".32em").attr("y",0).attr("x",-r.tickPadding()).attr("text-anchor","end").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max right").attr("transform",(function(t,n){return"translate(0,"+e.utils.NaNtoZero(i.range()[n])+")"})).select("text").style("opacity",1))}if(A.text((function(t){return t})),!u||"left"!==r.orient()&&"right"!==r.orient()||(x.selectAll("g").each((function(t,e){d3.select(this).select("text").attr("opacity",1),(i(t)<i.range()[1]+10||i(t)>i.range()[0]-10)&&((t>1e-10||t<-1e-10)&&d3.select(this).attr("opacity",0),d3.select(this).select("text").attr("opacity",0))})),i.domain()[0]==i.domain()[1]&&0==i.domain()[0]&&y.selectAll("g.nv-axisMaxMin").style("opacity",(function(t,e){return e?0:1}))),u&&("top"===r.orient()||"bottom"===r.orient())){var W=[];y.selectAll("g.nv-axisMaxMin").each((function(t,e){try{e?W.push(i(t)-this.getBoundingClientRect().width-4):W.push(i(t)+this.getBoundingClientRect().width+4)}catch(n){e?W.push(i(t)-4):W.push(i(t)+4)}})),x.selectAll("g").each((function(t,e){(i(t)<W[0]||i(t)>W[1])&&(t>1e-10||t<-1e-10?d3.select(this).remove():d3.select(this).select("text").remove())}))}x.selectAll(".tick").filter((function(t){return!parseFloat(Math.round(1e5*t)/1e6)&&void 0!==t})).classed("zero",!0),n=i.copy()})),b.renderEnd("axis immediate"),x}return x.axis=r,x.dispatch=y,x.options=e.utils.optionsFunc.bind(x),x._options=Object.create({},{axisLabelDistance:{get:function(){return g},set:function(t){g=t}},staggerLabels:{get:function(){return f},set:function(t){f=t}},rotateLabels:{get:function(){return c},set:function(t){c=t}},rotateYLabel:{get:function(){return d},set:function(t){d=t}},showMaxMin:{get:function(){return u},set:function(t){u=t}},axisLabel:{get:function(){return l},set:function(t){l=t}},height:{get:function(){return s},set:function(t){s=t}},ticks:{get:function(){return h},set:function(t){h=t}},width:{get:function(){return a},set:function(t){a=t}},fontSize:{get:function(){return v},set:function(t){v=t}},tickFormatMaxMin:{get:function(){return t},set:function(e){t=e}},margin:{get:function(){return o},set:function(t){o.top=void 0!==t.top?t.top:o.top,o.right=void 0!==t.right?t.right:o.right,o.bottom=void 0!==t.bottom?t.bottom:o.bottom,o.left=void 0!==t.left?t.left:o.left}},duration:{get:function(){return m},set:function(t){m=t,b.reset(m)}},scale:{get:function(){return i},set:function(t){i=t,r.scale(i),p="function"==typeof i.rangeBands,e.utils.inheritOptionsD3(x,i,["domain","range","rangeBand","rangeBands"])}}}),e.utils.initOptions(x),e.utils.inheritOptionsD3(x,r,["orient","tickValues","tickSubdivide","tickSize","tickPadding","tickFormat"]),e.utils.inheritOptionsD3(x,i,["domain","range","rangeBand","rangeBands"]),x},e.models.boxPlot=function(){"use strict";var t,n,r,i,o,a,s={top:0,right:0,bottom:0,left:0},l=960,u=500,c=Math.floor(1e4*Math.random()),d=d3.scale.ordinal(),f=d3.scale.linear(),p=function(t){return t.label},h=function(t){return t.values.Q1},g=function(t){return t.values.Q2},v=function(t){return t.values.Q3},m=function(t){return t.values.whisker_low},y=function(t){return t.values.whisker_high},b=function(t){return t.color},x=function(t){return t.values.outliers},k=function(t,e,n){return t},w=function(t,e,n){return t},M=function(t,e,n){},C=e.utils.defaultColor(),A=null,S=d3.dispatch("elementMouseover","elementMouseout","elementMousemove","renderEnd"),D=250,E=null,F=e.utils.renderWatch(S,D);function T(c){return F.reset(),c.each((function(c){var T=l-s.left-s.right,W=u-s.top-s.bottom;A=d3.select(this),e.utils.initSVG(A),d.domain(t||c.map((function(t,e){return p(t,e)}))).rangeBands(n||[0,T],.1);var N=[];if(!r){var O=[];c.forEach((function(t,e){var n=h(t),r=v(t),i=m(t),o=y(t),a=x(t);a&&a.forEach((function(t,e){O.push(k(t,e,void 0))})),i&&O.push(i),n&&O.push(n),r&&O.push(r),o&&O.push(o)})),N=[d3.min(O),d3.max(O)]}f.domain(r||N),f.range(i||[W,0]),o=o||d,a=a||f.copy().range([f(0),f(0)]);var _=A.selectAll("g.nv-wrap").data([c]);_.enter().append("g").attr("class","nvd3 nv-wrap"),_.attr("transform","translate("+s.left+","+s.top+")");var L=_.selectAll(".nv-boxplot").data((function(t){return t})),P=L.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6);L.attr("class","nv-boxplot").attr("transform",(function(t,e,n){return"translate("+(d(p(t,e))+.05*d.rangeBand())+", 0)"})).classed("hover",(function(t){return t.hover})),L.watchTransition(F,"nv-boxplot: boxplots").style("stroke-opacity",1).style("fill-opacity",.75).delay((function(t,e){return e*D/c.length})).attr("transform",(function(t,e){return"translate("+(d(p(t,e))+.05*d.rangeBand())+", 0)"})),L.exit().remove(),P.each((function(t,e){var n=d3.select(this);[m,y].forEach((function(r){if(void 0!==r(t)&&null!==r(t)){var i=r===m?"low":"high";n.append("line").style("stroke",b(t)||C(t,e)).attr("class","nv-boxplot-whisker nv-boxplot-"+i),n.append("line").style("stroke",b(t)||C(t,e)).attr("class","nv-boxplot-tick nv-boxplot-"+i)}}))}));var B=function(){return null===E?.9*d.rangeBand():Math.min(75,.9*d.rangeBand())},I=function(){return.45*d.rangeBand()-B()/2},V=function(){return.45*d.rangeBand()+B()/2};[m,y].forEach((function(t){var e=t===m?"low":"high",n=t===m?h:v;L.select("line.nv-boxplot-whisker.nv-boxplot-"+e).watchTransition(F,"nv-boxplot: boxplots").attr("x1",.45*d.rangeBand()).attr("y1",(function(e,n){return f(t(e))})).attr("x2",.45*d.rangeBand()).attr("y2",(function(t,e){return f(n(t))})),L.select("line.nv-boxplot-tick.nv-boxplot-"+e).watchTransition(F,"nv-boxplot: boxplots").attr("x1",I).attr("y1",(function(e,n){return f(t(e))})).attr("x2",V).attr("y2",(function(e,n){return f(t(e))}))})),[m,y].forEach((function(t){var e=t===m?"low":"high";P.selectAll(".nv-boxplot-"+e).on("mouseover",(function(e,n,r){d3.select(this).classed("hover",!0),S.elementMouseover({series:{key:t(e),color:b(e)||C(e,r)},e:d3.event})})).on("mouseout",(function(e,n,r){d3.select(this).classed("hover",!1),S.elementMouseout({series:{key:t(e),color:b(e)||C(e,r)},e:d3.event})})).on("mousemove",(function(t,e){S.elementMousemove({e:d3.event})}))})),P.append("rect").attr("class","nv-boxplot-box").on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),S.elementMouseover({key:p(t),value:p(t),series:[{key:"Q3",value:v(t),color:b(t)||C(t,e)},{key:"Q2",value:g(t),color:b(t)||C(t,e)},{key:"Q1",value:h(t),color:b(t)||C(t,e)}],data:t,index:e,e:d3.event})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),S.elementMouseout({key:p(t),value:p(t),series:[{key:"Q3",value:v(t),color:b(t)||C(t,e)},{key:"Q2",value:g(t),color:b(t)||C(t,e)},{key:"Q1",value:h(t),color:b(t)||C(t,e)}],data:t,index:e,e:d3.event})})).on("mousemove",(function(t,e){S.elementMousemove({e:d3.event})})),L.select("rect.nv-boxplot-box").watchTransition(F,"nv-boxplot: boxes").attr("y",(function(t,e){return f(v(t))})).attr("width",B).attr("x",I).attr("height",(function(t,e){return Math.abs(f(v(t))-f(h(t)))||1})).style("fill",(function(t,e){return b(t)||C(t,e)})).style("stroke",(function(t,e){return b(t)||C(t,e)})),P.append("line").attr("class","nv-boxplot-median"),L.select("line.nv-boxplot-median").watchTransition(F,"nv-boxplot: boxplots line").attr("x1",I).attr("y1",(function(t,e){return f(g(t))})).attr("x2",V).attr("y2",(function(t,e){return f(g(t))}));var j=L.selectAll(".nv-boxplot-outlier").data((function(t){return x(t)||[]}));j.enter().append("circle").style("fill",(function(t,e,n){return M(t,e,n)||C(t,n)})).style("stroke",(function(t,e,n){return M(t,e,n)||C(t,n)})).style("z-index",9e3).on("mouseover",(function(t,e,n){d3.select(this).classed("hover",!0),S.elementMouseover({series:{key:w(t,e,n),color:M(t,e,n)||C(t,n)},e:d3.event})})).on("mouseout",(function(t,e,n){d3.select(this).classed("hover",!1),S.elementMouseout({series:{key:w(t,e,n),color:M(t,e,n)||C(t,n)},e:d3.event})})).on("mousemove",(function(t,e){S.elementMousemove({e:d3.event})})),j.attr("class","nv-boxplot-outlier"),j.watchTransition(F,"nv-boxplot: nv-boxplot-outlier").attr("cx",.45*d.rangeBand()).attr("cy",(function(t,e,n){return f(k(t,e,n))})).attr("r","3"),j.exit().remove(),o=d.copy(),a=f.copy()})),F.renderEnd("nv-boxplot immediate"),T}return T.dispatch=S,T.options=e.utils.optionsFunc.bind(T),T._options=Object.create({},{width:{get:function(){return l},set:function(t){l=t}},height:{get:function(){return u},set:function(t){u=t}},maxBoxWidth:{get:function(){return E},set:function(t){E=t}},x:{get:function(){return p},set:function(t){p=t}},q1:{get:function(){return h},set:function(t){h=t}},q2:{get:function(){return g},set:function(t){g=t}},q3:{get:function(){return v},set:function(t){v=t}},wl:{get:function(){return m},set:function(t){m=t}},wh:{get:function(){return y},set:function(t){y=t}},itemColor:{get:function(){return b},set:function(t){b=t}},outliers:{get:function(){return x},set:function(t){x=t}},outlierValue:{get:function(){return k},set:function(t){k=t}},outlierLabel:{get:function(){return w},set:function(t){w=t}},outlierColor:{get:function(){return M},set:function(t){M=t}},xScale:{get:function(){return d},set:function(t){d=t}},yScale:{get:function(){return f},set:function(t){f=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return n},set:function(t){n=t}},yRange:{get:function(){return i},set:function(t){i=t}},id:{get:function(){return c},set:function(t){c=t}},y:{get:function(){return console.warn("BoxPlot 'y' chart option is deprecated. Please use model overrides instead."),{}},set:function(t){console.warn("BoxPlot 'y' chart option is deprecated. Please use model overrides instead.")}},margin:{get:function(){return s},set:function(t){s.top=void 0!==t.top?t.top:s.top,s.right=void 0!==t.right?t.right:s.right,s.bottom=void 0!==t.bottom?t.bottom:s.bottom,s.left=void 0!==t.left?t.left:s.left}},color:{get:function(){return C},set:function(t){C=e.utils.getColor(t)}},duration:{get:function(){return D},set:function(t){D=t,F.reset(D)}}}),e.utils.initOptions(T),T},e.models.boxPlotChart=function(){"use strict";var t,n,r=e.models.boxPlot(),i=e.models.axis(),o=e.models.axis(),a={top:15,right:10,bottom:50,left:60},s=null,l=null,u=e.utils.getColor(),c=!0,d=!0,f=!1,p=!1,h=e.models.tooltip(),g="No Data Available.",v=d3.dispatch("beforeUpdate","renderEnd"),m=250;i.orient("bottom").showMaxMin(!1).tickFormat((function(t){return t})),o.orient(f?"right":"left").tickFormat(d3.format(",.1f")),h.duration(0);var y=e.utils.renderWatch(v,m);function b(u){return y.reset(),y.models(r),c&&y.models(i),d&&y.models(o),u.each((function(u){var h=d3.select(this);e.utils.initSVG(h);var y=(s||parseInt(h.style("width"))||960)-a.left-a.right,x=(l||parseInt(h.style("height"))||400)-a.top-a.bottom;if(b.update=function(){v.beforeUpdate(),h.transition().duration(m).call(b)},b.container=this,!u||!u.length){var k=h.selectAll(".nv-noData").data([g]);return k.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),k.attr("x",a.left+y/2).attr("y",a.top+x/2).text((function(t){return t})),b}h.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale().clamp(!0);var w=h.selectAll("g.nv-wrap.nv-boxPlotWithAxes").data([u]),M=w.enter().append("g").attr("class","nvd3 nv-wrap nv-boxPlotWithAxes").append("g"),C=M.append("defs"),A=w.select("g");if(M.append("g").attr("class","nv-x nv-axis"),M.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),M.append("g").attr("class","nv-barsWrap"),A.attr("transform","translate("+a.left+","+a.top+")"),f&&A.select(".nv-y.nv-axis").attr("transform","translate("+y+",0)"),r.width(y).height(x),A.select(".nv-barsWrap").datum(u.filter((function(t){return!t.disabled}))).transition().call(r),C.append("clipPath").attr("id","nv-x-label-clip-"+r.id()).append("rect"),A.select("#nv-x-label-clip-"+r.id()+" rect").attr("width",t.rangeBand()*(p?2:1)).attr("height",16).attr("x",-t.rangeBand()/(p?1:2)),c){i.scale(t).ticks(e.utils.calcTicksX(y/100,u)).tickSize(-x,0),A.select(".nv-x.nv-axis").attr("transform","translate(0,"+n.range()[0]+")"),A.select(".nv-x.nv-axis").call(i);var S=A.select(".nv-x.nv-axis").selectAll("g");p&&S.selectAll("text").attr("transform",(function(t,e,n){return"translate(0,"+(n%2==0?"5":"17")+")"}))}d&&(o.scale(n).ticks(Math.floor(x/36)).tickSize(-y,0),A.select(".nv-y.nv-axis").call(o)),A.select(".nv-zeroLine line").attr("x1",0).attr("x2",y).attr("y1",n(0)).attr("y2",n(0))})),y.renderEnd("nv-boxplot chart immediate"),b}return r.dispatch.on("elementMouseover.tooltip",(function(t){h.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){h.data(t).hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){h()})),b.dispatch=v,b.boxplot=r,b.xAxis=i,b.yAxis=o,b.tooltip=h,b.options=e.utils.optionsFunc.bind(b),b._options=Object.create({},{width:{get:function(){return s},set:function(t){s=t}},height:{get:function(){return l},set:function(t){l=t}},staggerLabels:{get:function(){return p},set:function(t){p=t}},showXAxis:{get:function(){return c},set:function(t){c=t}},showYAxis:{get:function(){return d},set:function(t){d=t}},tooltipContent:{get:function(){return h},set:function(t){h=t}},noData:{get:function(){return g},set:function(t){g=t}},margin:{get:function(){return a},set:function(t){a.top=void 0!==t.top?t.top:a.top,a.right=void 0!==t.right?t.right:a.right,a.bottom=void 0!==t.bottom?t.bottom:a.bottom,a.left=void 0!==t.left?t.left:a.left}},duration:{get:function(){return m},set:function(t){m=t,y.reset(m),r.duration(m),i.duration(m),o.duration(m)}},color:{get:function(){return u},set:function(t){u=e.utils.getColor(t),r.color(u)}},rightAlignYAxis:{get:function(){return f},set:function(t){f=t,o.orient(t?"right":"left")}}}),e.utils.inheritOptions(b,r),e.utils.initOptions(b),b},e.models.bullet=function(){"use strict";var t={top:0,right:0,bottom:0,left:0},n="left",r=!1,i=function(t){return t.ranges},o=function(t){return t.markers?t.markers:[]},a=function(t){return t.markerLines?t.markerLines:[0]},s=function(t){return t.measures},l=function(t){return t.rangeLabels?t.rangeLabels:[]},u=function(t){return t.markerLabels?t.markerLabels:[]},c=function(t){return t.markerLineLabels?t.markerLineLabels:[]},d=function(t){return t.measureLabels?t.measureLabels:[]},f=[0],p=380,h=30,g=null,v=null,m=e.utils.getColor(["#1f77b4"]),y=d3.dispatch("elementMouseover","elementMouseout","elementMousemove"),b=["Maximum","Mean","Minimum"],x=["Max","Avg","Min"],k=1e3;function w(t,e){var n=t.slice();t.sort((function(t,r){var i=n.indexOf(t),o=n.indexOf(r);return d3.descending(e[i],e[o])}))}function M(n){return n.each((function(n,v){var M=p-t.left-t.right,C=h-t.top-t.bottom;g=d3.select(this),e.utils.initSVG(g);var A=i.call(this,n,v).slice(),S=o.call(this,n,v).slice(),D=a.call(this,n,v).slice(),E=s.call(this,n,v).slice(),F=l.call(this,n,v).slice(),T=u.call(this,n,v).slice(),W=c.call(this,n,v).slice(),N=d.call(this,n,v).slice();w(F,A),w(T,S),w(W,D),w(N,E),A.sort(d3.descending),S.sort(d3.descending),D.sort(d3.descending),E.sort(d3.descending);var O=d3.scale.linear().domain(d3.extent(d3.merge([f,A]))).range(r?[M,0]:[0,M]);this.__chart__||d3.scale.linear().domain([0,1/0]).range(O.range()),this.__chart__=O,d3.min(A),d3.max(A),A[1];for(var _=g.selectAll("g.nv-wrap.nv-bullet").data([n]),L=_.enter().append("g").attr("class","nvd3 nv-wrap nv-bullet").append("g"),P=_.select("g"),B=(v=0,A.length);v<B;v++){var I="nv-range nv-range"+v;v<=2&&(I=I+" nv-range"+x[v]),L.append("rect").attr("class",I)}L.append("rect").attr("class","nv-measure"),_.attr("transform","translate("+t.left+","+t.top+")");var V=function(t){return Math.abs(O(t)-O(0))},j=function(t){return O(t<0?t:0)};for(v=0,B=A.length;v<B;v++){var H=A[v];P.select("rect.nv-range"+v).datum(H).attr("height",C).transition().duration(k).attr("width",V(H)).attr("x",j(H))}P.select("rect.nv-measure").style("fill",m).attr("height",C/3).attr("y",C/3).on("mouseover",(function(){y.elementMouseover({value:E[0],label:N[0]||"Current",color:d3.select(this).style("fill")})})).on("mousemove",(function(){y.elementMousemove({value:E[0],label:N[0]||"Current",color:d3.select(this).style("fill")})})).on("mouseout",(function(){y.elementMouseout({value:E[0],label:N[0]||"Current",color:d3.select(this).style("fill")})})).transition().duration(k).attr("width",E<0?O(0)-O(E[0]):O(E[0])-O(0)).attr("x",j(E));var R=C/6,z=S.map((function(t,e){return{value:t,label:T[e]}}));L.selectAll("path.nv-markerTriangle").data(z).enter().append("path").attr("class","nv-markerTriangle").attr("d","M0,"+R+"L"+R+","+-R+" "+-R+","+-R+"Z").on("mouseover",(function(t){y.elementMouseover({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill"),pos:[O(t.value),C/2]})})).on("mousemove",(function(t){y.elementMousemove({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){y.elementMouseout({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})),P.selectAll("path.nv-markerTriangle").data(z).transition().duration(k).attr("transform",(function(t){return"translate("+O(t.value)+","+C/2+")"}));var q=D.map((function(t,e){return{value:t,label:W[e]}}));L.selectAll("line.nv-markerLine").data(q).enter().append("line").attr("cursor","").attr("class","nv-markerLine").attr("x1",(function(t){return O(t.value)})).attr("y1","2").attr("x2",(function(t){return O(t.value)})).attr("y2",C-2).on("mouseover",(function(t){y.elementMouseover({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill"),pos:[O(t.value),C/2]})})).on("mousemove",(function(t){y.elementMousemove({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){y.elementMouseout({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})),P.selectAll("line.nv-markerLine").data(q).transition().duration(k).attr("x1",(function(t){return O(t.value)})).attr("x2",(function(t){return O(t.value)})),_.selectAll(".nv-range").on("mouseover",(function(t,e){var n=F[e]||b[e];y.elementMouseover({value:t,label:n,color:d3.select(this).style("fill")})})).on("mousemove",(function(){y.elementMousemove({value:E[0],label:N[0]||"Previous",color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){var n=F[e]||b[e];y.elementMouseout({value:t,label:n,color:d3.select(this).style("fill")})}))})),M}return M.dispatch=y,M.options=e.utils.optionsFunc.bind(M),M._options=Object.create({},{ranges:{get:function(){return i},set:function(t){i=t}},markers:{get:function(){return o},set:function(t){o=t}},measures:{get:function(){return s},set:function(t){s=t}},forceX:{get:function(){return f},set:function(t){f=t}},width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},tickFormat:{get:function(){return v},set:function(t){v=t}},duration:{get:function(){return k},set:function(t){k=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},orient:{get:function(){return n},set:function(t){r="right"==(n=t)||"bottom"==n}},color:{get:function(){return m},set:function(t){m=e.utils.getColor(t)}}}),e.utils.initOptions(M),M},e.models.bulletChart=function(){"use strict";var t=e.models.bullet(),n=e.models.tooltip(),r="left",i=!1,o={top:5,right:40,bottom:20,left:120},a=function(t){return t.ranges},s=function(t){return t.markers?t.markers:[]},l=function(t){return t.measures},u=null,c=55,d=null,f=null,p=null,h=d3.dispatch();function g(n){return n.each((function(r,p){var h=d3.select(this);e.utils.initSVG(h);var v=e.utils.availableWidth(u,h,o),m=c-o.top-o.bottom;if(g.update=function(){g(n)},g.container=this,!r||!a.call(this,r,p))return e.utils.noData(g,h),g;h.selectAll(".nv-noData").remove();var y=a.call(this,r,p).slice().sort(d3.descending),b=s.call(this,r,p).slice().sort(d3.descending),x=l.call(this,r,p).slice().sort(d3.descending),k=h.selectAll("g.nv-wrap.nv-bulletChart").data([r]),w=k.enter().append("g").attr("class","nvd3 nv-wrap nv-bulletChart").append("g"),M=k.select("g");w.append("g").attr("class","nv-bulletWrap"),w.append("g").attr("class","nv-titles"),k.attr("transform","translate("+o.left+","+o.top+")");var C=d3.scale.linear().domain([0,Math.max(y[0],b[0]||0,x[0])]).range(i?[v,0]:[0,v]),A=this.__chart__||d3.scale.linear().domain([0,1/0]).range(C.range());this.__chart__=C;var S=w.select(".nv-titles").append("g").attr("text-anchor","end").attr("transform","translate(-6,"+(c-o.top-o.bottom)/2+")");S.append("text").attr("class","nv-title").text((function(t){return t.title})),S.append("text").attr("class","nv-subtitle").attr("dy","1em").text((function(t){return t.subtitle})),t.width(v).height(m);var D=M.select(".nv-bulletWrap");d3.transition(D).call(t);var E=d||C.tickFormat(v/100),F=M.selectAll("g.nv-tick").data(C.ticks(f||v/50),(function(t){return this.textContent||E(t)})),T=F.enter().append("g").attr("class","nv-tick").attr("transform",(function(t){return"translate("+A(t)+",0)"})).style("opacity",1e-6);T.append("line").attr("y1",m).attr("y2",7*m/6),T.append("text").attr("text-anchor","middle").attr("dy","1em").attr("y",7*m/6).text(E);var W=d3.transition(F).transition().duration(t.duration()).attr("transform",(function(t){return"translate("+C(t)+",0)"})).style("opacity",1);W.select("line").attr("y1",m).attr("y2",7*m/6),W.select("text").attr("y",7*m/6),d3.transition(F.exit()).transition().duration(t.duration()).attr("transform",(function(t){return"translate("+C(t)+",0)"})).style("opacity",1e-6).remove()})),d3.timer.flush(),g}return n.duration(0).headerEnabled(!1),t.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:t.label,value:t.value,color:t.color},n.data(t).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){n.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(t){n()})),g.bullet=t,g.dispatch=h,g.tooltip=n,g.options=e.utils.optionsFunc.bind(g),g._options=Object.create({},{ranges:{get:function(){return a},set:function(t){a=t}},markers:{get:function(){return s},set:function(t){s=t}},measures:{get:function(){return l},set:function(t){l=t}},width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},tickFormat:{get:function(){return d},set:function(t){d=t}},ticks:{get:function(){return f},set:function(t){f=t}},noData:{get:function(){return p},set:function(t){p=t}},margin:{get:function(){return o},set:function(t){o.top=void 0!==t.top?t.top:o.top,o.right=void 0!==t.right?t.right:o.right,o.bottom=void 0!==t.bottom?t.bottom:o.bottom,o.left=void 0!==t.left?t.left:o.left}},orient:{get:function(){return r},set:function(t){i="right"==(r=t)||"bottom"==r}}}),e.utils.inheritOptions(g,t),e.utils.initOptions(g),g},e.models.candlestickBar=function(){"use strict";var t,n,r,i,o,a={top:0,right:0,bottom:0,left:0},s=null,l=null,u=Math.floor(1e4*Math.random()),c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=function(t){return t.open},g=function(t){return t.close},v=function(t){return t.high},m=function(t){return t.low},y=[],b=[],x=!1,k=!0,w=e.utils.defaultColor(),M=!1,C=d3.dispatch("stateChange","changeState","renderEnd","chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove");function A(w){return w.each((function(w){t=d3.select(this);var M=e.utils.availableWidth(s,t,a),A=e.utils.availableHeight(l,t,a);e.utils.initSVG(t);var S=M/w[0].values.length*.45;c.domain(n||d3.extent(w[0].values.map(f).concat(y))),x?c.range(i||[.5*M/w[0].values.length,M*(w[0].values.length-.5)/w[0].values.length]):c.range(i||[5+S/2,M-S/2-5]),d.domain(r||[d3.min(w[0].values.map(m).concat(b)),d3.max(w[0].values.map(v).concat(b))]).range(o||[A,0]),c.domain()[0]===c.domain()[1]&&(c.domain()[0]?c.domain([c.domain()[0]-.01*c.domain()[0],c.domain()[1]+.01*c.domain()[1]]):c.domain([-1,1])),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]+.01*d.domain()[0],d.domain()[1]-.01*d.domain()[1]]):d.domain([-1,1]));var D=d3.select(this).selectAll("g.nv-wrap.nv-candlestickBar").data([w[0].values]),E=D.enter().append("g").attr("class","nvd3 nv-wrap nv-candlestickBar"),F=E.append("defs"),T=E.append("g"),W=D.select("g");T.append("g").attr("class","nv-ticks"),D.attr("transform","translate("+a.left+","+a.top+")"),t.on("click",(function(t,e){C.chartClick({data:t,index:e,pos:d3.event,id:u})})),F.append("clipPath").attr("id","nv-chart-clip-path-"+u).append("rect"),D.select("#nv-chart-clip-path-"+u+" rect").attr("width",M).attr("height",A),W.attr("clip-path",k?"url(#nv-chart-clip-path-"+u+")":"");var N=D.select(".nv-ticks").selectAll(".nv-tick").data((function(t){return t}));N.exit().remove();var O=N.enter().append("g");N.attr("class",(function(t,e,n){return(h(t,e)>g(t,e)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+e})),O.append("line").attr("class","nv-candlestick-lines").attr("transform",(function(t,e){return"translate("+c(f(t,e))+",0)"})).attr("x1",0).attr("y1",(function(t,e){return d(v(t,e))})).attr("x2",0).attr("y2",(function(t,e){return d(m(t,e))})),O.append("rect").attr("class","nv-candlestick-rects nv-bars").attr("transform",(function(t,e){return"translate("+(c(f(t,e))-S/2)+","+(d(p(t,e))-(h(t,e)>g(t,e)?d(g(t,e))-d(h(t,e)):0))+")"})).attr("x",0).attr("y",0).attr("width",S).attr("height",(function(t,e){var n=h(t,e),r=g(t,e);return n>r?d(r)-d(n):d(n)-d(r)})),N.select(".nv-candlestick-lines").transition().attr("transform",(function(t,e){return"translate("+c(f(t,e))+",0)"})).attr("x1",0).attr("y1",(function(t,e){return d(v(t,e))})).attr("x2",0).attr("y2",(function(t,e){return d(m(t,e))})),N.select(".nv-candlestick-rects").transition().attr("transform",(function(t,e){return"translate("+(c(f(t,e))-S/2)+","+(d(p(t,e))-(h(t,e)>g(t,e)?d(g(t,e))-d(h(t,e)):0))+")"})).attr("x",0).attr("y",0).attr("width",S).attr("height",(function(t,e){var n=h(t,e),r=g(t,e);return n>r?d(r)-d(n):d(n)-d(r)}))})),A}return A.highlightPoint=function(e,n){A.clearHighlights(),t.select(".nv-candlestickBar .nv-tick-0-"+e).classed("hover",n)},A.clearHighlights=function(){t.select(".nv-candlestickBar .nv-tick.hover").classed("hover",!1)},A.dispatch=C,A.options=e.utils.optionsFunc.bind(A),A._options=Object.create({},{width:{get:function(){return s},set:function(t){s=t}},height:{get:function(){return l},set:function(t){l=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return o},set:function(t){o=t}},forceX:{get:function(){return y},set:function(t){y=t}},forceY:{get:function(){return b},set:function(t){b=t}},padData:{get:function(){return x},set:function(t){x=t}},clipEdge:{get:function(){return k},set:function(t){k=t}},id:{get:function(){return u},set:function(t){u=t}},interactive:{get:function(){return M},set:function(t){M=t}},x:{get:function(){return f},set:function(t){f=t}},y:{get:function(){return p},set:function(t){p=t}},open:{get:function(){return h()},set:function(t){h=t}},close:{get:function(){return g()},set:function(t){g=t}},high:{get:function(){return v},set:function(t){v=t}},low:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return a},set:function(t){a.top=null!=t.top?t.top:a.top,a.right=null!=t.right?t.right:a.right,a.bottom=null!=t.bottom?t.bottom:a.bottom,a.left=null!=t.left?t.left:a.left}},color:{get:function(){return w},set:function(t){w=e.utils.getColor(t)}}}),e.utils.initOptions(A),A},e.models.cumulativeLineChart=function(){"use strict";var t,n,r=e.models.line(),i=e.models.axis(),o=e.models.axis(),a=e.models.legend(),s=e.models.legend(),l=e.interactiveGuideline(),u=e.models.tooltip(),c={top:30,right:30,bottom:50,left:60},d=null,f=e.utils.defaultColor(),p=null,h=null,g=!0,v=!0,m=!0,y=!1,b=!0,x=!1,k=!0,w=r.id(),M=e.utils.state(),C=null,A=null,S=function(t){return t.average},D=d3.dispatch("stateChange","changeState","renderEnd"),E=250,F=!1;M.index=0,M.rescaleY=k,i.orient("bottom").tickPadding(7),o.orient(y?"right":"left"),u.valueFormatter((function(t,e){return o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),s.updateState(!1);var T,W=d3.scale.linear(),N={i:0,x:0},O=e.utils.renderWatch(D,E);function _(u){return O.reset(),O.models(r),v&&O.models(i),m&&O.models(o),u.each((function(u){var A=d3.select(this);e.utils.initSVG(A),A.classed("nv-chart-"+w,!0);var O,B=e.utils.availableWidth(p,A,c),I=e.utils.availableHeight(h,A,c);if(_.update=function(){0===E?A.call(_):A.transition().duration(E).call(_)},_.container=this,M.setter(function(t){return function(e){void 0!==e.index&&(N.i=e.index),void 0!==e.rescaleY&&(k=e.rescaleY),void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(u),_.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),index:N.i,rescaleY:k}}}(u)).update(),M.disabled=u.map((function(t){return!!t.disabled})),!C)for(O in C={},M)M[O]instanceof Array?C[O]=M[O].slice(0):C[O]=M[O];var V=d3.behavior.drag().on("dragstart",(function(t,e){d3.select(_.container).style("cursor","ew-resize")})).on("drag",(function(t,e){N.x=d3.event.x,N.i=Math.round(W.invert(N.x)),U()})).on("dragend",(function(t,e){d3.select(_.container).style("cursor","auto"),M.index=N.i,D.stateChange(M)}));if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(_,A),_;A.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale(),W.domain([0,u[0].values.length-1]).range([0,B]).clamp(!0),u=function(t,e){return L||(L=r.y()),e.map((function(e,n){if(!e.values)return e;var r=e.values[t];if(null==r)return e;var i=L(r,t);return Math.abs(i)<1e-5&&!F?(e.tempDisabled=!0,e):(e.tempDisabled=!1,e.values=e.values.map((function(t,e){return t.display={y:(L(t,e)-i)/i},t})),e)}))}(N.i,u),void 0===T&&(T=P(u)),k?r.yDomain(null):(r.yDomain(T),r.clipEdge(!0));var j=x?"none":"all",H=A.selectAll("g.nv-wrap.nv-cumulativeLine").data([u]),R=H.enter().append("g").attr("class","nvd3 nv-wrap nv-cumulativeLine").append("g"),z=H.select("g");if(R.append("g").attr("class","nv-interactive"),R.append("g").attr("class","nv-x nv-axis").style("pointer-events","none"),R.append("g").attr("class","nv-y nv-axis"),R.append("g").attr("class","nv-background"),R.append("g").attr("class","nv-linesWrap").style("pointer-events",j),R.append("g").attr("class","nv-avgLinesWrap").style("pointer-events","none"),R.append("g").attr("class","nv-legendWrap"),R.append("g").attr("class","nv-controlsWrap"),g?(a.width(B),z.select(".nv-legendWrap").datum(u).call(a),d||a.height()===c.top||(c.top=a.height(),I=e.utils.availableHeight(h,A,c)),z.select(".nv-legendWrap").attr("transform","translate(0,"+-c.top+")")):z.select(".nv-legendWrap").selectAll("*").remove(),b){var q=[{key:"Re-scale y-axis",disabled:!k}];s.width(140).color(["#444","#444","#444"]).rightAlign(!1).margin({top:5,right:0,bottom:5,left:20}),z.select(".nv-controlsWrap").datum(q).attr("transform","translate(0,"+-c.top+")").call(s)}else z.select(".nv-controlsWrap").selectAll("*").remove();H.attr("transform","translate("+c.left+","+c.top+")"),y&&z.select(".nv-y.nv-axis").attr("transform","translate("+B+",0)");var G=u.filter((function(t){return t.tempDisabled}));H.select(".tempDisabled").remove(),G.length&&H.append("text").attr("class","tempDisabled").attr("x",B/2).attr("y","-.71em").style("text-anchor","end").text(G.map((function(t){return t.key})).join(", ")+" values cannot be calculated for this time period."),x&&(l.width(B).height(I).margin({left:c.left,top:c.top}).svgContainer(A).xScale(t),H.select(".nv-interactive").call(l)),R.select(".nv-background").append("rect"),z.select(".nv-background rect").attr("width",B).attr("height",I),r.y((function(t){return t.display.y})).width(B).height(I).color(u.map((function(t,e){return t.color||f(t,e)})).filter((function(t,e){return!u[e].disabled&&!u[e].tempDisabled})));var Y=z.select(".nv-linesWrap").datum(u.filter((function(t){return!t.disabled&&!t.tempDisabled})));Y.call(r),u.forEach((function(t,e){t.seriesIndex=e}));var X=u.filter((function(t){return!t.disabled&&!!S(t)})),$=z.select(".nv-avgLinesWrap").selectAll("line").data(X,(function(t){return t.key})),Q=function(t){var e=n(S(t));return e<0?0:e>I?I:e};$.enter().append("line").style("stroke-width",2).style("stroke-dasharray","10,10").style("stroke",(function(t,e){return r.color()(t,t.seriesIndex)})).attr("x1",0).attr("x2",B).attr("y1",Q).attr("y2",Q),$.style("stroke-opacity",(function(t){var e=n(S(t));return e<0||e>I?0:1})).attr("x1",0).attr("x2",B).attr("y1",Q).attr("y2",Q),$.exit().remove();var Z=Y.selectAll(".nv-indexLine").data([N]);function U(){Z.data([N]);var t=_.duration();_.duration(0),_.update(),_.duration(t)}Z.enter().append("rect").attr("class","nv-indexLine").attr("width",3).attr("x",-2).attr("fill","red").attr("fill-opacity",.5).style("pointer-events","all").call(V),Z.attr("transform",(function(t){return"translate("+W(t.i)+",0)"})).attr("height",I),v&&(i.scale(t)._ticks(e.utils.calcTicksX(B/70,u)).tickSize(-I,0),z.select(".nv-x.nv-axis").attr("transform","translate(0,"+n.range()[0]+")"),z.select(".nv-x.nv-axis").call(i)),m&&(o.scale(n)._ticks(e.utils.calcTicksY(I/36,u)).tickSize(-B,0),z.select(".nv-y.nv-axis").call(o)),z.select(".nv-background rect").on("click",(function(){N.x=d3.mouse(this)[0],N.i=Math.round(W.invert(N.x)),M.index=N.i,D.stateChange(M),U()})),r.dispatch.on("elementClick",(function(t){N.i=t.pointIndex,N.x=W(N.i),M.index=N.i,D.stateChange(M),U()})),s.dispatch.on("legendClick",(function(t,e){t.disabled=!t.disabled,k=!t.disabled,M.rescaleY=k,k||(T=P(u)),D.stateChange(M),_.update()})),a.dispatch.on("stateChange",(function(t){for(var e in t)M[e]=t[e];D.stateChange(M),_.update()})),l.dispatch.on("elementMousemove",(function(t){r.clearHighlights();var n,a,s,c=[];if(u.filter((function(t,e){return t.seriesIndex=e,!(t.disabled||t.tempDisabled)})).forEach((function(i,o){a=e.interactiveBisect(i.values,t.pointXValue,_.x()),r.highlightPoint(o,a,!0);var l=i.values[a];void 0!==l&&(void 0===n&&(n=l),void 0===s&&(s=_.xScale()(_.x()(l,a))),c.push({key:i.key,value:_.y()(l,a),color:f(i,i.seriesIndex)}))})),c.length>2){var d=_.yScale().invert(t.mouseY),p=.03*Math.abs(_.yScale().domain()[0]-_.yScale().domain()[1]),h=e.nearestValueIndex(c.map((function(t){return t.value})),d,p);null!==h&&(c[h].highlight=!0)}var g=i.tickFormat()(_.x()(n,a),a);l.tooltip.valueFormatter((function(t,e){return o.tickFormat()(t)})).data({value:g,series:c})(),l.renderGuideLine(s)})),l.dispatch.on("elementMouseout",(function(t){r.clearHighlights()})),D.on("changeState",(function(t){void 0!==t.disabled&&(u.forEach((function(e,n){e.disabled=t.disabled[n]})),M.disabled=t.disabled),void 0!==t.index&&(N.i=t.index,N.x=W(N.i),M.index=t.index,Z.data([N])),void 0!==t.rescaleY&&(k=t.rescaleY),_.update()}))})),O.renderEnd("cumulativeLineChart immediate"),_}r.dispatch.on("elementMouseover.tooltip",(function(t){var e={x:_.x()(t.point),y:_.y()(t.point),color:t.point.color};t.point=e,u.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)}));var L=null;function P(t){var e=t.filter((function(t){return!(t.disabled||t.tempDisabled)})).map((function(t,e){return d3.extent(t.values,(function(t){return t.display.y}))}));return[d3.min(e,(function(t){return t[0]})),d3.max(e,(function(t){return t[1]}))]}return _.dispatch=D,_.lines=r,_.legend=a,_.controls=s,_.xAxis=i,_.yAxis=o,_.interactiveLayer=l,_.state=M,_.tooltip=u,_.options=e.utils.optionsFunc.bind(_),_._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showControls:{get:function(){return b},set:function(t){b=t}},showLegend:{get:function(){return g},set:function(t){g=t}},average:{get:function(){return S},set:function(t){S=t}},defaultState:{get:function(){return C},set:function(t){C=t}},noData:{get:function(){return A},set:function(t){A=t}},showXAxis:{get:function(){return v},set:function(t){v=t}},showYAxis:{get:function(){return m},set:function(t){m=t}},noErrorCheck:{get:function(){return F},set:function(t){F=t}},rescaleY:{get:function(){return k},set:function(t){k=t,_.state.rescaleY=t}},margin:{get:function(){return c},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),a.color(f)}},useInteractiveGuideline:{get:function(){return x},set:function(t){x=t,!0===t&&(_.interactive(!1),_.useVoronoi(!1))}},rightAlignYAxis:{get:function(){return y},set:function(t){y=t,o.orient(t?"right":"left")}},duration:{get:function(){return E},set:function(t){E=t,r.duration(E),i.duration(E),o.duration(E),O.reset(E)}}}),e.utils.inheritOptions(_,r),e.utils.initOptions(_),_},e.models.discreteBar=function(){"use strict";var t,n,r,i,o,a,s,l={top:0,right:0,bottom:0,left:0},u=960,c=500,d=Math.floor(1e4*Math.random()),f=d3.scale.ordinal(),p=d3.scale.linear(),h=function(t){return t.x},g=function(t){return t.y},v=[0],m=e.utils.defaultColor(),y=!1,b=d3.format(",.2f"),x=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),k="discreteBar",w=250,M=e.utils.renderWatch(x,w);function C(d){return M.reset(),d.each((function(d){var w=u-l.left-l.right,C=c-l.top-l.bottom;t=d3.select(this),e.utils.initSVG(t),d.forEach((function(t,e){t.values.forEach((function(t){t.series=e}))}));var A=n&&r?[]:d.map((function(t){return t.values.map((function(t,e){return{x:h(t,e),y:g(t,e),y0:t.y0}}))}));f.domain(n||d3.merge(A).map((function(t){return t.x}))).rangeBands(i||[0,w],.1),p.domain(r||d3.extent(d3.merge(A).map((function(t){return t.y})).concat(v))),y?p.range(o||[C-(p.domain()[0]<0?12:0),p.domain()[1]>0?12:0]):p.range(o||[C,0]),a=a||f,s=s||p.copy().range([p(0),p(0)]);var S=t.selectAll("g.nv-wrap.nv-discretebar").data([d]),D=S.enter().append("g").attr("class","nvd3 nv-wrap nv-discretebar").append("g");S.select("g"),D.append("g").attr("class","nv-groups"),S.attr("transform","translate("+l.left+","+l.top+")");var E=S.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t){return t.key}));E.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),E.exit().watchTransition(M,"discreteBar: exit groups").style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),E.attr("class",(function(t,e){return"nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})),E.watchTransition(M,"discreteBar: groups").style("stroke-opacity",1).style("fill-opacity",.75);var F=E.selectAll("g.nv-bar").data((function(t){return t.values}));F.exit().remove();var T=F.enter().append("g").attr("transform",(function(t,e,n){return"translate("+(f(h(t,e))+.05*f.rangeBand())+", "+p(0)+")"})).on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),x.elementMouseover({data:t,index:e,color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),x.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")})})).on("mousemove",(function(t,e){x.elementMousemove({data:t,index:e,color:d3.select(this).style("fill")})})).on("click",(function(t,e){x.elementClick({data:t,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation()})).on("dblclick",(function(t,e){x.elementDblClick({data:t,index:e,color:d3.select(this).style("fill")}),d3.event.stopPropagation()}));T.append("rect").attr("height",0).attr("width",.9*f.rangeBand()/d.length),y?(T.append("text").attr("text-anchor","middle"),F.select("text").text((function(t,e){return b(g(t,e))})).watchTransition(M,"discreteBar: bars text").attr("x",.9*f.rangeBand()/2).attr("y",(function(t,e){return g(t,e)<0?p(g(t,e))-p(0)+12:-4}))):F.selectAll("text").remove(),F.attr("class",(function(t,e){return g(t,e)<0?"nv-bar negative":"nv-bar positive"})).style("fill",(function(t,e){return t.color||m(t,e)})).style("stroke",(function(t,e){return t.color||m(t,e)})).select("rect").attr("class",k).watchTransition(M,"discreteBar: bars rect").attr("width",.9*f.rangeBand()/d.length),F.watchTransition(M,"discreteBar: bars").attr("transform",(function(t,e){return"translate("+(f(h(t,e))+.05*f.rangeBand())+", "+(g(t,e)<0?p(0):p(0)-p(g(t,e))<1?p(0)-1:p(g(t,e)))+")"})).select("rect").attr("height",(function(t,e){return Math.max(Math.abs(p(g(t,e))-p(0)),1)})),a=f.copy(),s=p.copy()})),M.renderEnd("discreteBar immediate"),C}return C.dispatch=x,C.options=e.utils.optionsFunc.bind(C),C._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},forceY:{get:function(){return v},set:function(t){v=t}},showValues:{get:function(){return y},set:function(t){y=t}},x:{get:function(){return h},set:function(t){h=t}},y:{get:function(){return g},set:function(t){g=t}},xScale:{get:function(){return f},set:function(t){f=t}},yScale:{get:function(){return p},set:function(t){p=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return o},set:function(t){o=t}},valueFormat:{get:function(){return b},set:function(t){b=t}},id:{get:function(){return d},set:function(t){d=t}},rectClass:{get:function(){return k},set:function(t){k=t}},margin:{get:function(){return l},set:function(t){l.top=void 0!==t.top?t.top:l.top,l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},color:{get:function(){return m},set:function(t){m=e.utils.getColor(t)}},duration:{get:function(){return w},set:function(t){w=t,M.reset(w)}}}),e.utils.initOptions(C),C},e.models.discreteBarChart=function(){"use strict";var t,n,r=e.models.discreteBar(),i=e.models.axis(),o=e.models.axis(),a=e.models.legend(),s=e.models.tooltip(),l={top:15,right:10,bottom:50,left:60},u=null,c=null,d=null,f=e.utils.getColor(),p=!1,h=!0,g=!0,v=!1,m=!1,y=!1,b=0,x=null,k=d3.dispatch("beforeUpdate","renderEnd"),w=250;i.orient("bottom").showMaxMin(!1).tickFormat((function(t){return t})),o.orient(v?"right":"left").tickFormat(d3.format(",.1f")),s.duration(0).headerEnabled(!1).valueFormatter((function(t,e){return o.tickFormat()(t,e)})).keyFormatter((function(t,e){return i.tickFormat()(t,e)}));var M=e.utils.renderWatch(k,w);function C(s){return M.reset(),M.models(r),h&&M.models(i),g&&M.models(o),s.each((function(s){var f=d3.select(this);e.utils.initSVG(f);var x=e.utils.availableWidth(c,f,l),M=e.utils.availableHeight(d,f,l);if(C.update=function(){k.beforeUpdate(),f.transition().duration(w).call(C)},C.container=this,!(s&&s.length&&s.filter((function(t){return t.values.length})).length))return e.utils.noData(C,f),C;f.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale().clamp(!0);var A=f.selectAll("g.nv-wrap.nv-discreteBarWithAxes").data([s]),S=A.enter().append("g").attr("class","nvd3 nv-wrap nv-discreteBarWithAxes").append("g"),D=S.append("defs"),E=A.select("g");if(S.append("g").attr("class","nv-x nv-axis"),S.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),S.append("g").attr("class","nv-barsWrap"),S.append("g").attr("class","nv-legendWrap"),E.attr("transform","translate("+l.left+","+l.top+")"),p?(a.width(x),E.select(".nv-legendWrap").datum(s).call(a),u||a.height()===l.top||(l.top=a.height(),M=e.utils.availableHeight(d,f,l)),A.select(".nv-legendWrap").attr("transform","translate(0,"+-l.top+")")):E.select(".nv-legendWrap").selectAll("*").remove(),v&&E.select(".nv-y.nv-axis").attr("transform","translate("+x+",0)"),r.width(x).height(M),E.select(".nv-barsWrap").datum(s.filter((function(t){return!t.disabled}))).transition().call(r),D.append("clipPath").attr("id","nv-x-label-clip-"+r.id()).append("rect"),E.select("#nv-x-label-clip-"+r.id()+" rect").attr("width",t.rangeBand()*(m?2:1)).attr("height",16).attr("x",-t.rangeBand()/(m?1:2)),h){i.scale(t)._ticks(e.utils.calcTicksX(x/100,s)).tickSize(-M,0),E.select(".nv-x.nv-axis").attr("transform","translate(0,"+(n.range()[0]+(r.showValues()&&n.domain()[0]<0?16:0))+")"),E.select(".nv-x.nv-axis").call(i);var F=E.select(".nv-x.nv-axis").selectAll("g");m&&F.selectAll("text").attr("transform",(function(t,e,n){return"translate(0,"+(n%2==0?"5":"17")+")"})),b&&F.selectAll(".tick text").attr("transform","rotate("+b+" 0,0)").style("text-anchor",b>0?"start":"end"),y&&E.selectAll(".tick text").call(e.utils.wrapTicks,C.xAxis.rangeBand())}g&&(o.scale(n)._ticks(e.utils.calcTicksY(M/36,s)).tickSize(-x,0),E.select(".nv-y.nv-axis").call(o)),E.select(".nv-zeroLine line").attr("x1",0).attr("x2",v?-x:x).attr("y1",n(0)).attr("y2",n(0))})),M.renderEnd("discreteBar chart immediate"),C}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:C.x()(t.data),value:C.y()(t.data),color:t.color},s.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){s.hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){s()})),C.dispatch=k,C.discretebar=r,C.legend=a,C.xAxis=i,C.yAxis=o,C.tooltip=s,C.options=e.utils.optionsFunc.bind(C),C._options=Object.create({},{width:{get:function(){return c},set:function(t){c=t}},height:{get:function(){return d},set:function(t){d=t}},showLegend:{get:function(){return p},set:function(t){p=t}},staggerLabels:{get:function(){return m},set:function(t){m=t}},rotateLabels:{get:function(){return b},set:function(t){b=t}},wrapLabels:{get:function(){return y},set:function(t){y=!!t}},showXAxis:{get:function(){return h},set:function(t){h=t}},showYAxis:{get:function(){return g},set:function(t){g=t}},noData:{get:function(){return x},set:function(t){x=t}},margin:{get:function(){return l},set:function(t){void 0!==t.top&&(l.top=t.top,u=t.top),l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},duration:{get:function(){return w},set:function(t){w=t,M.reset(w),r.duration(w),i.duration(w),o.duration(w)}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),r.color(f),a.color(f)}},rightAlignYAxis:{get:function(){return v},set:function(t){v=t,o.orient(t?"right":"left")}}}),e.utils.inheritOptions(C,r),e.utils.initOptions(C),C},e.models.distribution=function(){"use strict";var t,n={top:0,right:0,bottom:0,left:0},r=400,i=8,o="x",a=function(t){return t[o]},s=e.utils.defaultColor(),l=d3.scale.linear(),u=250,c=d3.dispatch("renderEnd"),d=e.utils.renderWatch(c,u);function f(r){return d.reset(),r.each((function(r){"x"===o?(n.left,n.right):(n.top,n.bottom);var u="x"==o?"y":"x",c=d3.select(this);e.utils.initSVG(c),t=t||l;var f=c.selectAll("g.nv-distribution").data([r]),p=(f.enter().append("g").attr("class","nvd3 nv-distribution").append("g"),f.select("g"));f.attr("transform","translate("+n.left+","+n.top+")");var h=p.selectAll("g.nv-dist").data((function(t){return t}),(function(t){return t.key}));h.enter().append("g"),h.attr("class",(function(t,e){return"nv-dist nv-series-"+e})).style("stroke",(function(t,e){return s(t,e)}));var g=h.selectAll("line.nv-dist"+o).data((function(t){return t.values}));g.enter().append("line").attr(o+"1",(function(e,n){return t(a(e,n))})).attr(o+"2",(function(e,n){return t(a(e,n))})),d.transition(h.exit().selectAll("line.nv-dist"+o),"dist exit").attr(o+"1",(function(t,e){return l(a(t,e))})).attr(o+"2",(function(t,e){return l(a(t,e))})).style("stroke-opacity",0).remove(),g.attr("class",(function(t,e){return"nv-dist"+o+" nv-dist"+o+"-"+e})).attr(u+"1",0).attr(u+"2",i),d.transition(g,"dist").attr(o+"1",(function(t,e){return l(a(t,e))})).attr(o+"2",(function(t,e){return l(a(t,e))})),t=l.copy()})),d.renderEnd("distribution immediate"),f}return f.options=e.utils.optionsFunc.bind(f),f.dispatch=c,f.margin=function(t){return arguments.length?(n.top=void 0!==t.top?t.top:n.top,n.right=void 0!==t.right?t.right:n.right,n.bottom=void 0!==t.bottom?t.bottom:n.bottom,n.left=void 0!==t.left?t.left:n.left,f):n},f.width=function(t){return arguments.length?(r=t,f):r},f.axis=function(t){return arguments.length?(o=t,f):o},f.size=function(t){return arguments.length?(i=t,f):i},f.getData=function(t){return arguments.length?(a=d3.functor(t),f):a},f.scale=function(t){return arguments.length?(l=t,f):l},f.color=function(t){return arguments.length?(s=e.utils.getColor(t),f):s},f.duration=function(t){return arguments.length?(u=t,d.reset(u),f):u},f},e.models.focus=function(t){"use strict";t=t||e.models.line();var n,r,i=e.models.axis(),o=e.models.axis(),a=d3.svg.brush(),s={top:10,right:0,bottom:30,left:0},l=e.utils.defaultColor(),u=null,c=70,d=!0,f=!1,p=!1,h=null,g=250,v=d3.dispatch("brush","onBrush","renderEnd"),m=!0;t.interactive(!1),t.pointActive((function(t){return!1}));var y=e.utils.renderWatch(v,g);function b(x){return y.reset(),y.models(t),d&&y.models(i),f&&y.models(o),x.each((function(y){var x=d3.select(this);e.utils.initSVG(x);var k=e.utils.availableWidth(u,x,s),w=c-s.top-s.bottom;b.update=function(){0===g?x.call(b):x.transition().duration(g).call(b)},b.container=this,n=t.xScale(),r=t.yScale();var M=x.selectAll("g.nv-focus").data([y]),C=M.enter().append("g").attr("class","nvd3 nv-focus").append("g"),A=M.select("g");M.attr("transform","translate("+s.left+","+s.top+")"),C.append("g").attr("class","nv-background").append("rect"),C.append("g").attr("class","nv-x nv-axis"),C.append("g").attr("class","nv-y nv-axis"),C.append("g").attr("class","nv-contentWrap"),C.append("g").attr("class","nv-brushBackground"),C.append("g").attr("class","nv-x nv-brush"),p&&A.select(".nv-y.nv-axis").attr("transform","translate("+k+",0)"),A.select(".nv-background rect").attr("width",k).attr("height",w),t.width(k).height(w).color(y.map((function(t,e){return t.color||l(t,e)})).filter((function(t,e){return!y[e].disabled})));var S=A.select(".nv-contentWrap").datum(y.filter((function(t){return!t.disabled})));d3.transition(S).call(t),a.x(n).on("brush",(function(){T(m)})),a.on("brushend",(function(){m||v.onBrush(a.empty()?n.domain():a.extent())})),h&&a.extent(h);var D=A.select(".nv-brushBackground").selectAll("g").data([h||a.extent()]),E=D.enter().append("g");E.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",w),E.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",w);var F=A.select(".nv-x.nv-brush").call(a);function T(t){h=a.empty()?null:a.extent();var e=a.empty()?n.domain():a.extent();v.brush({extent:e,brush:a}),a.empty()||a.extent(h),D.data([a.empty()?n.domain():h]).each((function(t,e){var r=n(t[0])-n.range()[0],i=k-n(t[1]);d3.select(this).select(".left").attr("width",r<0?0:r),d3.select(this).select(".right").attr("x",n(t[1])).attr("width",i<0?0:i)})),t&&v.onBrush(e)}F.selectAll("rect").attr("height",w),F.selectAll(".resize").append("path").attr("d",(function(t){var e=+("e"==t),n=e?1:-1,r=w/3;return"M"+.5*n+","+r+"A6,6 0 0 "+e+" "+6.5*n+","+(r+6)+"V"+(2*r-6)+"A6,6 0 0 "+e+" "+.5*n+","+2*r+"ZM"+2.5*n+","+(r+8)+"V"+(2*r-8)+"M"+4.5*n+","+(r+8)+"V"+(2*r-8)})),T(!0),A.select(".nv-background rect").attr("width",k).attr("height",w),d&&(i.scale(n)._ticks(e.utils.calcTicksX(k/100,y)).tickSize(-w,0),A.select(".nv-x.nv-axis").attr("transform","translate(0,"+r.range()[0]+")"),d3.transition(A.select(".nv-x.nv-axis")).call(i)),f&&(o.scale(r)._ticks(e.utils.calcTicksY(w/36,y)).tickSize(-k,0),d3.transition(A.select(".nv-y.nv-axis")).call(o)),A.select(".nv-x.nv-axis").attr("transform","translate(0,"+r.range()[0]+")")})),y.renderEnd("focus immediate"),b}return b.dispatch=v,b.content=t,b.brush=a,b.xAxis=i,b.yAxis=o,b.options=e.utils.optionsFunc.bind(b),b._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},showXAxis:{get:function(){return d},set:function(t){d=t}},showYAxis:{get:function(){return f},set:function(t){f=t}},brushExtent:{get:function(){return h},set:function(t){h=t}},syncBrushing:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return s},set:function(t){s.top=void 0!==t.top?t.top:s.top,s.right=void 0!==t.right?t.right:s.right,s.bottom=void 0!==t.bottom?t.bottom:s.bottom,s.left=void 0!==t.left?t.left:s.left}},duration:{get:function(){return g},set:function(e){g=e,y.reset(g),t.duration(g),i.duration(g),o.duration(g)}},color:{get:function(){return l},set:function(n){l=e.utils.getColor(n),t.color(l)}},interpolate:{get:function(){return t.interpolate()},set:function(e){t.interpolate(e)}},xTickFormat:{get:function(){return i.tickFormat()},set:function(t){i.tickFormat(t)}},yTickFormat:{get:function(){return o.tickFormat()},set:function(t){o.tickFormat(t)}},x:{get:function(){return t.x()},set:function(e){t.x(e)}},y:{get:function(){return t.y()},set:function(e){t.y(e)}},rightAlignYAxis:{get:function(){return p},set:function(t){p=t,o.orient(p?"right":"left")}}}),e.utils.inheritOptions(b,t),e.utils.initOptions(b),b},e.models.forceDirectedGraph=function(){"use strict";var t={top:2,right:0,bottom:2,left:0},n=400,r=32,i=null,o=d3.dispatch("renderEnd"),a=e.utils.getColor(["#000"]),s=e.models.tooltip(),l=null,u=.1,c=.9,d=30,f=-120,p=.1,h=.8,g=.1,v=5,m=function(t){},y=function(t){},b=d3.functor(0),x=d3.functor(0),k=e.utils.renderWatch(o);function w(o){return k.reset(),o.each((function(o){i=d3.select(this),e.utils.initSVG(i);var l=e.utils.availableWidth(n,i,t),b=e.utils.availableHeight(r,i,t);if(i.attr("width",l).attr("height",b),!(o&&o.links&&o.nodes))return e.utils.noData(w,i),w;i.selectAll(".nv-noData").remove(),i.selectAll("*").remove();var x=new Set;o.nodes.forEach((function(t){Object.keys(t).forEach((function(t){x.add(t)}))}));var k=d3.layout.force().nodes(o.nodes).links(o.links).size([l,b]).linkStrength(u).friction(c).linkDistance(d).charge(f).gravity(p).theta(h).alpha(g).start(),M=i.selectAll(".link").data(o.links).enter().append("line").attr("class","nv-force-link").style("stroke-width",(function(t){return Math.sqrt(t.value)})),C=i.selectAll(".node").data(o.nodes).enter().append("g").attr("class","nv-force-node").call(k.drag);C.append("circle").attr("r",v).style("fill",(function(t){return a(t)})).on("mouseover",(function(t){i.select(".nv-series-"+t.seriesIndex+" .nv-distx-"+t.pointIndex).attr("y1",t.py),i.select(".nv-series-"+t.seriesIndex+" .nv-disty-"+t.pointIndex).attr("x2",t.px);var e=a(t);t.series=[],x.forEach((function(n){t.series.push({color:e,key:n,value:t[n]})})),s.data(t).hidden(!1)})).on("mouseout",(function(t){s.hidden(!0)})),s.headerFormatter((function(t){return"Node"})),y(M),m(C),k.on("tick",(function(){M.attr("x1",(function(t){return t.source.x})).attr("y1",(function(t){return t.source.y})).attr("x2",(function(t){return t.target.x})).attr("y2",(function(t){return t.target.y})),C.attr("transform",(function(t){return"translate("+t.x+", "+t.y+")"}))}))})),w}return w.options=e.utils.optionsFunc.bind(w),w._options=Object.create({},{width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},linkStrength:{get:function(){return u},set:function(t){u=t}},friction:{get:function(){return c},set:function(t){c=t}},linkDist:{get:function(){return d},set:function(t){d=t}},charge:{get:function(){return f},set:function(t){f=t}},gravity:{get:function(){return p},set:function(t){p=t}},theta:{get:function(){return h},set:function(t){h=t}},alpha:{get:function(){return g},set:function(t){g=t}},radius:{get:function(){return v},set:function(t){v=t}},x:{get:function(){return b},set:function(t){b=d3.functor(t)}},y:{get:function(){return x},set:function(t){x=d3.functor(t)}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},color:{get:function(){return a},set:function(t){a=e.utils.getColor(t)}},noData:{get:function(){return l},set:function(t){l=t}},nodeExtras:{get:function(){return m},set:function(t){m=t}},linkExtras:{get:function(){return y},set:function(t){y=t}}}),w.dispatch=o,w.tooltip=s,e.utils.initOptions(w),w},e.models.furiousLegend=function(){"use strict";var t={top:5,right:0,bottom:5,left:0},n=400,r=20,i=function(t){return t.key},o=function(t){return t},a=e.utils.getColor(),s=20,l=!0,u=28,c=!0,d=!0,f=!1,p=!1,h=d3.dispatch("legendClick","legendDblclick","legendMouseover","legendMouseout","stateChange"),g="classic";function v(m){function y(t,e){return"furious"!=g?"#000":p?t.disengaged?a(t,e):"#fff":p?void 0:t.disabled?a(t,e):"#fff"}function b(t,e){return p&&"furious"==g?t.disengaged?"#fff":a(t,e):t.disabled?"#fff":a(t,e)}return m.each((function(v){var m=n-t.left-t.right,x=d3.select(this);e.utils.initSVG(x);var k=x.selectAll("g.nv-legend").data([v]),w=(k.enter().append("g").attr("class","nvd3 nv-legend").append("g"),k.select("g"));k.attr("transform","translate("+t.left+","+t.top+")");var M,C=w.selectAll(".nv-series").data((function(t){return"furious"!=g?t:t.filter((function(t){return!!p||!t.disengaged}))})),A=C.enter().append("g").attr("class","nv-series");"classic"==g?(A.append("circle").style("stroke-width",2).attr("class","nv-legend-symbol").attr("r",5),M=C.select("circle")):"furious"==g&&(A.append("rect").style("stroke-width",2).attr("class","nv-legend-symbol").attr("rx",3).attr("ry",3),M=C.select("rect"),A.append("g").attr("class","nv-check-box").property("innerHTML",'<path d="M0.5,5 L22.5,5 L22.5,26.5 L0.5,26.5 L0.5,5 Z" class="nv-box"></path><path d="M5.5,12.8618467 L11.9185089,19.2803556 L31,0.198864511" class="nv-check"></path>').attr("transform","translate(-10,-8)scale(0.5)"),C.select(".nv-check-box").each((function(t,e){d3.select(this).selectAll("path").attr("stroke",y(t,e))}))),A.append("text").attr("text-anchor","start").attr("class","nv-legend-text").attr("dy",".32em").attr("dx","8");var S,D=C.select("text.nv-legend-text");switch(C.on("mouseover",(function(t,e){h.legendMouseover(t,e)})).on("mouseout",(function(t,e){h.legendMouseout(t,e)})).on("click",(function(t,e){h.legendClick(t,e);var n=C.data();d&&("classic"==g?f?(n.forEach((function(t){t.disabled=!0})),t.disabled=!1):(t.disabled=!t.disabled,n.every((function(t){return t.disabled}))&&n.forEach((function(t){t.disabled=!1}))):"furious"==g&&(p?(t.disengaged=!t.disengaged,t.userDisabled=null==t.userDisabled?!!t.disabled:t.userDisabled,t.disabled=t.disengaged||t.userDisabled):p||(t.disabled=!t.disabled,t.userDisabled=t.disabled,n.filter((function(t){return!t.disengaged})).every((function(t){return t.userDisabled}))&&n.forEach((function(t){t.disabled=t.userDisabled=!1})))),h.stateChange({disabled:n.map((function(t){return!!t.disabled})),disengaged:n.map((function(t){return!!t.disengaged}))}))})).on("dblclick",(function(t,e){if(("furious"!=g||!p)&&(h.legendDblclick(t,e),d)){var n=C.data();n.forEach((function(t){t.disabled=!0,"furious"==g&&(t.userDisabled=t.disabled)})),t.disabled=!1,"furious"==g&&(t.userDisabled=t.disabled),h.stateChange({disabled:n.map((function(t){return!!t.disabled}))})}})),C.classed("nv-disabled",(function(t){return t.userDisabled})),C.exit().remove(),D.attr("fill",y).text((function(t){return o(i(t))})),g){case"furious":S=23;break;case"classic":S=20}if(l){var E=[];C.each((function(t,n){var r,a;if(o(i(t))&&o(i(t)).length>s){var l=o(i(t)).substring(0,s);r=d3.select(this).select("text").text(l+"..."),d3.select(this).append("svg:title").text(o(i(t)))}else r=d3.select(this).select("text");try{if((a=r.node().getComputedTextLength())<=0)throw Error()}catch(t){a=e.utils.calcApproxTextWidth(r)}E.push(a+u)}));for(var F=0,T=0,W=[];T<m&&F<E.length;)W[F]=E[F],T+=E[F++];for(0===F&&(F=1);T>m&&F>1;){W=[],F--;for(var N=0;N<E.length;N++)E[N]>(W[N%F]||0)&&(W[N%F]=E[N]);T=W.reduce((function(t,e,n,r){return t+e}))}for(var O=[],_=0,L=0;_<F;_++)O[_]=L,L+=W[_];C.attr("transform",(function(t,e){return"translate("+O[e%F]+","+(5+Math.floor(e/F)*S)+")"})),c?w.attr("transform","translate("+(n-t.right-T)+","+t.top+")"):w.attr("transform","translate(0,"+t.top+")"),r=t.top+t.bottom+Math.ceil(E.length/F)*S}else{var P,B=5,I=5,V=0;C.attr("transform",(function(e,r){var i=d3.select(this).select("text").node().getComputedTextLength()+u;return P=I,n<t.left+t.right+P+i&&(I=P=5,B+=S),(I+=i)>V&&(V=I),"translate("+P+","+B+")"})),w.attr("transform","translate("+(n-t.right-V)+","+t.top+")"),r=t.top+t.bottom+B+15}"furious"==g&&M.attr("width",(function(t,e){return D[0][e].getComputedTextLength()+27})).attr("height",18).attr("y",-9).attr("x",-15),M.style("fill",b).style("stroke",(function(t,e){return t.color||a(t,e)}))})),v}return v.dispatch=h,v.options=e.utils.optionsFunc.bind(v),v._options=Object.create({},{width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},key:{get:function(){return i},set:function(t){i=t}},keyFormatter:{get:function(){return o},set:function(t){o=t}},align:{get:function(){return l},set:function(t){l=t}},rightAlign:{get:function(){return c},set:function(t){c=t}},maxKeyLength:{get:function(){return s},set:function(t){s=t}},padding:{get:function(){return u},set:function(t){u=t}},updateState:{get:function(){return d},set:function(t){d=t}},radioButtonMode:{get:function(){return f},set:function(t){f=t}},expanded:{get:function(){return p},set:function(t){p=t}},vers:{get:function(){return g},set:function(t){g=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},color:{get:function(){return a},set:function(t){a=e.utils.getColor(t)}}}),e.utils.initOptions(v),v},e.models.historicalBar=function(){"use strict";var t,n,r,i,o={top:0,right:0,bottom:0,left:0},a=null,s=null,l=Math.floor(1e4*Math.random()),u=null,c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=[],g=[0],v=!1,m=!0,y=e.utils.defaultColor(),b=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),x=!0,k=e.utils.renderWatch(b,0);function w(M){return M.each((function(w){k.reset(),u=d3.select(this);var M=e.utils.availableWidth(a,u,o),C=e.utils.availableHeight(s,u,o);e.utils.initSVG(u),c.domain(t||d3.extent(w[0].values.map(f).concat(h))),v?c.range(r||[.5*M/w[0].values.length,M*(w[0].values.length-.5)/w[0].values.length]):c.range(r||[0,M]),d.domain(n||d3.extent(w[0].values.map(p).concat(g))).range(i||[C,0]),c.domain()[0]===c.domain()[1]&&(c.domain()[0]?c.domain([c.domain()[0]-.01*c.domain()[0],c.domain()[1]+.01*c.domain()[1]]):c.domain([-1,1])),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]+.01*d.domain()[0],d.domain()[1]-.01*d.domain()[1]]):d.domain([-1,1]));var A=u.selectAll("g.nv-wrap.nv-historicalBar-"+l).data([w[0].values]),S=A.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBar-"+l),D=S.append("defs"),E=S.append("g"),F=A.select("g");E.append("g").attr("class","nv-bars"),A.attr("transform","translate("+o.left+","+o.top+")"),u.on("click",(function(t,e){b.chartClick({data:t,index:e,pos:d3.event,id:l})})),D.append("clipPath").attr("id","nv-chart-clip-path-"+l).append("rect"),A.select("#nv-chart-clip-path-"+l+" rect").attr("width",M).attr("height",C),F.attr("clip-path",m?"url(#nv-chart-clip-path-"+l+")":"");var T=A.select(".nv-bars").selectAll(".nv-bar").data((function(t){return t}),(function(t,e){return f(t,e)}));T.exit().remove(),T.enter().append("rect").attr("x",0).attr("y",(function(t,n){return e.utils.NaNtoZero(d(Math.max(0,p(t,n))))})).attr("height",(function(t,n){return e.utils.NaNtoZero(Math.abs(d(p(t,n))-d(0)))})).attr("transform",(function(t,e){return"translate("+(c(f(t,e))-M/w[0].values.length*.45)+",0)"})).on("mouseover",(function(t,e){x&&(d3.select(this).classed("hover",!0),b.elementMouseover({data:t,index:e,color:d3.select(this).style("fill")}))})).on("mouseout",(function(t,e){x&&(d3.select(this).classed("hover",!1),b.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")}))})).on("mousemove",(function(t,e){x&&b.elementMousemove({data:t,index:e,color:d3.select(this).style("fill")})})).on("click",(function(t,e){x&&(b.elementClick({data:t,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation())})).on("dblclick",(function(t,e){x&&(b.elementDblClick({data:t,index:e,color:d3.select(this).style("fill")}),d3.event.stopPropagation())})),T.attr("fill",(function(t,e){return y(t,e)})).attr("class",(function(t,e,n){return(p(t,e)<0?"nv-bar negative":"nv-bar positive")+" nv-bar-"+n+"-"+e})).watchTransition(k,"bars").attr("transform",(function(t,e){return"translate("+(c(f(t,e))-M/w[0].values.length*.45)+",0)"})).attr("width",M/w[0].values.length*.9),T.watchTransition(k,"bars").attr("y",(function(t,n){var r=p(t,n)<0?d(0):d(0)-d(p(t,n))<1?d(0)-1:d(p(t,n));return e.utils.NaNtoZero(r)})).attr("height",(function(t,n){return e.utils.NaNtoZero(Math.max(Math.abs(d(p(t,n))-d(0)),1))}))})),k.renderEnd("historicalBar immediate"),w}return w.highlightPoint=function(t,e){u.select(".nv-bars .nv-bar-0-"+t).classed("hover",e)},w.clearHighlights=function(){u.select(".nv-bars .nv-bar.hover").classed("hover",!1)},w.dispatch=b,w.options=e.utils.optionsFunc.bind(w),w._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return s},set:function(t){s=t}},forceX:{get:function(){return h},set:function(t){h=t}},forceY:{get:function(){return g},set:function(t){g=t}},padData:{get:function(){return v},set:function(t){v=t}},x:{get:function(){return f},set:function(t){f=t}},y:{get:function(){return p},set:function(t){p=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return n},set:function(t){n=t}},xRange:{get:function(){return r},set:function(t){r=t}},yRange:{get:function(){return i},set:function(t){i=t}},clipEdge:{get:function(){return m},set:function(t){m=t}},id:{get:function(){return l},set:function(t){l=t}},interactive:{get:function(){return x},set:function(t){x=t}},margin:{get:function(){return o},set:function(t){o.top=void 0!==t.top?t.top:o.top,o.right=void 0!==t.right?t.right:o.right,o.bottom=void 0!==t.bottom?t.bottom:o.bottom,o.left=void 0!==t.left?t.left:o.left}},color:{get:function(){return y},set:function(t){y=e.utils.getColor(t)}}}),e.utils.initOptions(w),w},e.models.historicalBarChart=function(t){"use strict";var n,r,i=t||e.models.historicalBar(),o=e.models.axis(),a=e.models.axis(),s=e.models.legend(),l=e.interactiveGuideline(),u=e.models.tooltip(),c={top:30,right:90,bottom:50,left:90},d=null,f=e.utils.defaultColor(),p=null,h=null,g=!1,v=!0,m=!0,y=!1,b=!1,x={},k=null,w=null,M=d3.dispatch("tooltipHide","stateChange","changeState","renderEnd"),C=250;o.orient("bottom").tickPadding(7),a.orient(y?"right":"left"),u.duration(0).headerEnabled(!1).valueFormatter((function(t,e){return a.tickFormat()(t,e)})).headerFormatter((function(t,e){return o.tickFormat()(t,e)}));var A=e.utils.renderWatch(M,0);function S(t){return t.each((function(u){A.reset(),A.models(i),v&&A.models(o),m&&A.models(a);var w=d3.select(this);e.utils.initSVG(w);var D,E=e.utils.availableWidth(p,w,c),F=e.utils.availableHeight(h,w,c);if(S.update=function(){w.transition().duration(C).call(S)},S.container=this,x.disabled=u.map((function(t){return!!t.disabled})),!k)for(D in k={},x)x[D]instanceof Array?k[D]=x[D].slice(0):k[D]=x[D];if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(S,w),S;w.selectAll(".nv-noData").remove(),n=i.xScale(),r=i.yScale();var T=w.selectAll("g.nv-wrap.nv-historicalBarChart").data([u]),W=T.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBarChart").append("g"),N=T.select("g");W.append("g").attr("class","nv-x nv-axis"),W.append("g").attr("class","nv-y nv-axis"),W.append("g").attr("class","nv-barsWrap"),W.append("g").attr("class","nv-legendWrap"),W.append("g").attr("class","nv-interactive"),g?(s.width(E),N.select(".nv-legendWrap").datum(u).call(s),d||s.height()===c.top||(c.top=s.height(),F=e.utils.availableHeight(h,w,c)),T.select(".nv-legendWrap").attr("transform","translate(0,"+-c.top+")")):N.select(".nv-legendWrap").selectAll("*").remove(),T.attr("transform","translate("+c.left+","+c.top+")"),y&&N.select(".nv-y.nv-axis").attr("transform","translate("+E+",0)"),b&&(l.width(E).height(F).margin({left:c.left,top:c.top}).svgContainer(w).xScale(n),T.select(".nv-interactive").call(l)),i.width(E).height(F).color(u.map((function(t,e){return t.color||f(t,e)})).filter((function(t,e){return!u[e].disabled}))),N.select(".nv-barsWrap").datum(u.filter((function(t){return!t.disabled}))).transition().call(i),v&&(o.scale(n)._ticks(e.utils.calcTicksX(E/100,u)).tickSize(-F,0),N.select(".nv-x.nv-axis").attr("transform","translate(0,"+r.range()[0]+")"),N.select(".nv-x.nv-axis").transition().call(o)),m&&(a.scale(r)._ticks(e.utils.calcTicksY(F/36,u)).tickSize(-E,0),N.select(".nv-y.nv-axis").transition().call(a)),l.dispatch.on("elementMousemove",(function(t){i.clearHighlights();var n,r,s,c=[];u.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(o,a){r=e.interactiveBisect(o.values,t.pointXValue,S.x()),i.highlightPoint(r,!0);var l=o.values[r];void 0!==l&&(void 0===n&&(n=l),void 0===s&&(s=S.xScale()(S.x()(l,r))),c.push({key:o.key,value:S.y()(l,r),color:f(o,o.seriesIndex),data:o.values[r]}))}));var d=o.tickFormat()(S.x()(n,r));l.tooltip.valueFormatter((function(t,e){return a.tickFormat()(t)})).data({value:d,index:r,series:c})(),l.renderGuideLine(s)})),l.dispatch.on("elementMouseout",(function(t){M.tooltipHide(),i.clearHighlights()})),s.dispatch.on("legendClick",(function(e,n){e.disabled=!e.disabled,u.filter((function(t){return!t.disabled})).length||u.map((function(t){return t.disabled=!1,T.selectAll(".nv-series").classed("disabled",!1),t})),x.disabled=u.map((function(t){return!!t.disabled})),M.stateChange(x),t.transition().call(S)})),s.dispatch.on("legendDblclick",(function(t){u.forEach((function(t){t.disabled=!0})),t.disabled=!1,x.disabled=u.map((function(t){return!!t.disabled})),M.stateChange(x),S.update()})),M.on("changeState",(function(t){void 0!==t.disabled&&(u.forEach((function(e,n){e.disabled=t.disabled[n]})),x.disabled=t.disabled),S.update()}))})),A.renderEnd("historicalBarChart immediate"),S}return i.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:S.x()(t.data),value:S.y()(t.data),color:t.color},u.data(t).hidden(!1)})),i.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)})),i.dispatch.on("elementMousemove.tooltip",(function(t){u()})),S.dispatch=M,S.bars=i,S.legend=s,S.xAxis=o,S.yAxis=a,S.interactiveLayer=l,S.tooltip=u,S.options=e.utils.optionsFunc.bind(S),S._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showLegend:{get:function(){return g},set:function(t){g=t}},showXAxis:{get:function(){return v},set:function(t){v=t}},showYAxis:{get:function(){return m},set:function(t){m=t}},defaultState:{get:function(){return k},set:function(t){k=t}},noData:{get:function(){return w},set:function(t){w=t}},margin:{get:function(){return c},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),s.color(f),i.color(f)}},duration:{get:function(){return C},set:function(t){C=t,A.reset(C),a.duration(C),o.duration(C)}},rightAlignYAxis:{get:function(){return y},set:function(t){y=t,a.orient(t?"right":"left")}},useInteractiveGuideline:{get:function(){return b},set:function(t){b=t,!0===t&&S.interactive(!1)}}}),e.utils.inheritOptions(S,i),e.utils.initOptions(S),S},e.models.ohlcBarChart=function(){var t=e.models.historicalBarChart(e.models.ohlcBar());return t.useInteractiveGuideline(!0),t.interactiveLayer.tooltip.contentGenerator((function(e){var n=e.series[0].data;return'<h3 style="color: #'+(n.open<n.close?"2ca02c":"d62728")+'">'+e.value+"</h3><table><tr><td>open:</td><td>"+t.yAxis.tickFormat()(n.open)+"</td></tr><tr><td>close:</td><td>"+t.yAxis.tickFormat()(n.close)+"</td></tr><tr><td>high</td><td>"+t.yAxis.tickFormat()(n.high)+"</td></tr><tr><td>low:</td><td>"+t.yAxis.tickFormat()(n.low)+"</td></tr></table>"})),t},e.models.candlestickBarChart=function(){var t=e.models.historicalBarChart(e.models.candlestickBar());return t.useInteractiveGuideline(!0),t.interactiveLayer.tooltip.contentGenerator((function(e){var n=e.series[0].data;return'<h3 style="color: #'+(n.open<n.close?"2ca02c":"d62728")+'">'+e.value+"</h3><table><tr><td>open:</td><td>"+t.yAxis.tickFormat()(n.open)+"</td></tr><tr><td>close:</td><td>"+t.yAxis.tickFormat()(n.close)+"</td></tr><tr><td>high</td><td>"+t.yAxis.tickFormat()(n.high)+"</td></tr><tr><td>low:</td><td>"+t.yAxis.tickFormat()(n.low)+"</td></tr></table>"})),t},e.models.legend=function(){"use strict";var t={top:5,right:0,bottom:5,left:0},n=400,r=20,i=function(t){return t.key},o=function(t){return t},a=e.utils.getColor(),s=20,l=!0,u=32,c=!0,d=!0,f=!0,p=!1,h=!1,g=d3.dispatch("legendClick","legendDblclick","legendMouseover","legendMouseout","stateChange"),v="classic";function m(y){function b(t,e){return"furious"!=v?"#000":h?t.disengaged?"#000":"#fff":h?void 0:(t.color||(t.color=a(t,e)),t.disabled?t.color:"#fff")}function x(t,e){return h&&"furious"==v&&t.disengaged?"#eee":t.color||a(t,e)}function k(t,e){return h&&"furious"==v?1:t.disabled?0:1}return y.each((function(a){var m=n-t.left-t.right,y=d3.select(this);e.utils.initSVG(y);var w=y.selectAll("g.nv-legend").data([a]),M=w.enter().append("g").attr("class","nvd3 nv-legend").append("g"),C=w.select("g");c?w.attr("transform","translate("+-t.right+","+t.top+")"):w.attr("transform","translate("+t.left+","+t.top+")");var A,S,D=C.selectAll(".nv-series").data((function(t){return"furious"!=v?t:t.filter((function(t){return!!h||!t.disengaged}))})),E=D.enter().append("g").attr("class","nv-series");switch(v){case"furious":S=23;break;case"classic":S=20}"classic"==v?(E.append("circle").style("stroke-width",2).attr("class","nv-legend-symbol").attr("r",5),A=D.select(".nv-legend-symbol")):"furious"==v&&(E.append("rect").style("stroke-width",2).attr("class","nv-legend-symbol").attr("rx",3).attr("ry",3),A=D.select(".nv-legend-symbol"),E.append("g").attr("class","nv-check-box").property("innerHTML",'<path d="M0.5,5 L22.5,5 L22.5,26.5 L0.5,26.5 L0.5,5 Z" class="nv-box"></path><path d="M5.5,12.8618467 L11.9185089,19.2803556 L31,0.198864511" class="nv-check"></path>').attr("transform","translate(-10,-8)scale(0.5)"),D.select(".nv-check-box").each((function(t,e){d3.select(this).selectAll("path").attr("stroke",b(t,e))}))),E.append("text").attr("text-anchor","start").attr("class","nv-legend-text").attr("dy",".32em").attr("dx","8");var F=D.select("text.nv-legend-text");D.on("mouseover",(function(t,e){g.legendMouseover(t,e)})).on("mouseout",(function(t,e){g.legendMouseout(t,e)})).on("click",(function(t,e){g.legendClick(t,e);var n=D.data();d&&("classic"==v?p?(n.forEach((function(t){t.disabled=!0})),t.disabled=!1):(t.disabled=!t.disabled,n.every((function(t){return t.disabled}))&&n.forEach((function(t){t.disabled=!1}))):"furious"==v&&(h?(t.disengaged=!t.disengaged,t.userDisabled=null==t.userDisabled?!!t.disabled:t.userDisabled,t.disabled=t.disengaged||t.userDisabled):h||(t.disabled=!t.disabled,t.userDisabled=t.disabled,n.filter((function(t){return!t.disengaged})).every((function(t){return t.userDisabled}))&&n.forEach((function(t){t.disabled=t.userDisabled=!1})))),g.stateChange({disabled:n.map((function(t){return!!t.disabled})),disengaged:n.map((function(t){return!!t.disengaged}))}))})).on("dblclick",(function(t,e){if(f){if("furious"==v&&h)return;if(g.legendDblclick(t,e),d){var n=D.data();n.forEach((function(t){t.disabled=!0,"furious"==v&&(t.userDisabled=t.disabled)})),t.disabled=!1,"furious"==v&&(t.userDisabled=t.disabled),g.stateChange({disabled:n.map((function(t){return!!t.disabled}))})}}})),D.classed("nv-disabled",(function(t){return t.userDisabled})),D.exit().remove(),F.attr("fill",b).text((function(t){return o(i(t))}));var T=0;if(l){var W=[];D.each((function(t,n){var r,a;if(o(i(t))&&o(i(t)).length>s){var l=o(i(t)).substring(0,s);r=d3.select(this).select("text").text(l+"..."),d3.select(this).append("svg:title").text(o(i(t)))}else r=d3.select(this).select("text");try{if((a=r.node().getComputedTextLength())<=0)throw Error()}catch(t){a=e.utils.calcApproxTextWidth(r)}W.push(a+u)}));var N=0,O=[];for(T=0;T<m&&N<W.length;)O[N]=W[N],T+=W[N++];for(0===N&&(N=1);T>m&&N>1;){O=[],N--;for(var _=0;_<W.length;_++)W[_]>(O[_%N]||0)&&(O[_%N]=W[_]);T=O.reduce((function(t,e,n,r){return t+e}))}for(var L=[],P=0,B=0;P<N;P++)L[P]=B,B+=O[P];D.attr("transform",(function(t,e){return"translate("+L[e%N]+","+(5+Math.floor(e/N)*S)+")"})),c?C.attr("transform","translate("+(n-t.right-T)+","+t.top+")"):C.attr("transform","translate(0,"+t.top+")"),r=t.top+t.bottom+Math.ceil(W.length/N)*S}else{var I,V=5,j=5,H=0;D.attr("transform",(function(e,r){var i=d3.select(this).select("text").node().getComputedTextLength()+u;return I=j,n<t.left+t.right+I+i&&(j=I=5,V+=S),(j+=i)>H&&(H=j),T<I+H&&(T=I+H),"translate("+I+","+V+")"})),C.attr("transform","translate("+(n-t.right-H)+","+t.top+")"),r=t.top+t.bottom+V+15}"furious"==v&&(A.attr("width",(function(t,e){return F[0][e].getComputedTextLength()+27})).attr("height",18).attr("y",-9).attr("x",-15),M.insert("rect",":first-child").attr("class","nv-legend-bg").attr("fill","#eee").attr("opacity",0),C.select(".nv-legend-bg").transition().duration(300).attr("x",-S).attr("width",T+S-12).attr("height",r+10).attr("y",-t.top-10).attr("opacity",h?1:0)),A.style("fill",x).style("fill-opacity",k).style("stroke",x)})),m}return m.dispatch=g,m.options=e.utils.optionsFunc.bind(m),m._options=Object.create({},{width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},key:{get:function(){return i},set:function(t){i=t}},keyFormatter:{get:function(){return o},set:function(t){o=t}},align:{get:function(){return l},set:function(t){l=t}},maxKeyLength:{get:function(){return s},set:function(t){s=t}},rightAlign:{get:function(){return c},set:function(t){c=t}},padding:{get:function(){return u},set:function(t){u=t}},updateState:{get:function(){return d},set:function(t){d=t}},enableDoubleClick:{get:function(){return f},set:function(t){f=t}},radioButtonMode:{get:function(){return p},set:function(t){p=t}},expanded:{get:function(){return h},set:function(t){h=t}},vers:{get:function(){return v},set:function(t){v=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},color:{get:function(){return a},set:function(t){a=e.utils.getColor(t)}}}),e.utils.initOptions(m),m},e.models.line=function(){"use strict";var t,n,r=e.models.scatter(),i={top:0,right:0,bottom:0,left:0},o=960,a=500,s=null,l=e.utils.defaultColor(),u=function(t){return t.x},c=function(t){return t.y},d=function(t,e){return!isNaN(c(t,e))&&null!==c(t,e)},f=function(t){return t.area},p=!1,h="linear",g=250,v=d3.dispatch("elementClick","elementMouseover","elementMouseout","renderEnd");r.pointSize(16).pointDomain([16,256]);var m,y,b=e.utils.renderWatch(v,g);function x(g){return b.reset(),b.models(r),g.each((function(g){s=d3.select(this);var v=e.utils.availableWidth(o,s,i),x=e.utils.availableHeight(a,s,i);e.utils.initSVG(s),t=r.xScale(),n=r.yScale(),m=m||t,y=y||n;var k=s.selectAll("g.nv-wrap.nv-line").data([g]),w=k.enter().append("g").attr("class","nvd3 nv-wrap nv-line"),M=w.append("defs"),C=w.append("g"),A=k.select("g");C.append("g").attr("class","nv-groups"),C.append("g").attr("class","nv-scatterWrap"),k.attr("transform","translate("+i.left+","+i.top+")"),r.width(v).height(x);var S=k.select(".nv-scatterWrap");S.call(r),M.append("clipPath").attr("id","nv-edge-clip-"+r.id()).append("rect"),k.select("#nv-edge-clip-"+r.id()+" rect").attr("width",v).attr("height",x>0?x:0),A.attr("clip-path",p?"url(#nv-edge-clip-"+r.id()+")":""),S.attr("clip-path",p?"url(#nv-edge-clip-"+r.id()+")":"");var D=k.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t){return t.key}));D.enter().append("g").style("stroke-opacity",1e-6).style("stroke-width",(function(t){return t.strokeWidth||1.5})).style("fill-opacity",1e-6),D.exit().remove(),D.attr("class",(function(t,e){return(t.classed||"")+" nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})).style("fill",(function(t,e){return l(t,e)})).style("stroke",(function(t,e){return l(t,e)})),D.watchTransition(b,"line: groups").style("stroke-opacity",1).style("fill-opacity",(function(t){return t.fillOpacity||.5}));var E=D.selectAll("path.nv-area").data((function(t){return f(t)?[t]:[]}));E.enter().append("path").attr("class","nv-area").attr("d",(function(t){return d3.svg.area().interpolate(h).defined(d).x((function(t,n){return e.utils.NaNtoZero(m(u(t,n)))})).y0((function(t,n){return e.utils.NaNtoZero(y(c(t,n)))})).y1((function(t,e){return y(n.domain()[0]<=0?n.domain()[1]>=0?0:n.domain()[1]:n.domain()[0])})).apply(this,[t.values])})),D.exit().selectAll("path.nv-area").remove(),E.watchTransition(b,"line: areaPaths").attr("d",(function(r){return d3.svg.area().interpolate(h).defined(d).x((function(n,r){return e.utils.NaNtoZero(t(u(n,r)))})).y0((function(t,r){return e.utils.NaNtoZero(n(c(t,r)))})).y1((function(t,e){return n(n.domain()[0]<=0?n.domain()[1]>=0?0:n.domain()[1]:n.domain()[0])})).apply(this,[r.values])}));var F=D.selectAll("path.nv-line").data((function(t){return[t.values]}));F.enter().append("path").attr("class","nv-line").attr("d",d3.svg.line().interpolate(h).defined(d).x((function(t,n){return e.utils.NaNtoZero(m(u(t,n)))})).y((function(t,n){return e.utils.NaNtoZero(y(c(t,n)))}))),F.watchTransition(b,"line: linePaths").attr("d",d3.svg.line().interpolate(h).defined(d).x((function(n,r){return e.utils.NaNtoZero(t(u(n,r)))})).y((function(t,r){return e.utils.NaNtoZero(n(c(t,r)))}))),m=t.copy(),y=n.copy()})),b.renderEnd("line immediate"),x}return x.dispatch=v,x.scatter=r,r.dispatch.on("elementClick",(function(){v.elementClick.apply(this,arguments)})),r.dispatch.on("elementMouseover",(function(){v.elementMouseover.apply(this,arguments)})),r.dispatch.on("elementMouseout",(function(){v.elementMouseout.apply(this,arguments)})),x.options=e.utils.optionsFunc.bind(x),x._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return a},set:function(t){a=t}},defined:{get:function(){return d},set:function(t){d=t}},interpolate:{get:function(){return h},set:function(t){h=t}},clipEdge:{get:function(){return p},set:function(t){p=t}},margin:{get:function(){return i},set:function(t){i.top=void 0!==t.top?t.top:i.top,i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}},duration:{get:function(){return g},set:function(t){g=t,b.reset(g),r.duration(g)}},isArea:{get:function(){return f},set:function(t){f=d3.functor(t)}},x:{get:function(){return u},set:function(t){u=t,r.x(t)}},y:{get:function(){return c},set:function(t){c=t,r.y(t)}},color:{get:function(){return l},set:function(t){l=e.utils.getColor(t),r.color(l)}}}),e.utils.inheritOptions(x,r),e.utils.initOptions(x),x},e.models.lineChart=function(){"use strict";var t,n,r=e.models.line(),i=e.models.axis(),o=e.models.axis(),a=e.models.legend(),s=e.interactiveGuideline(),l=e.models.tooltip(),u=e.models.focus(e.models.line()),c={top:30,right:20,bottom:50,left:60},d=null,f=e.utils.defaultColor(),p=null,h=null,g=!0,v="top",m=!0,y=!0,b=!1,x=!1,k=!1,w=e.utils.state(),M=null,C=null,A=d3.dispatch("stateChange","changeState","renderEnd"),S=250;i.orient("bottom").tickPadding(7),o.orient(b?"right":"left"),r.clipEdge(!0).duration(0),l.valueFormatter((function(t,e){return o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),s.tooltip.valueFormatter((function(t,e){return o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)}));var D=e.utils.renderWatch(A,S);function E(l){return D.reset(),D.models(r),m&&D.models(i),y&&D.models(o),l.each((function(l){var C=d3.select(this);e.utils.initSVG(C);var D,F=e.utils.availableWidth(p,C,c),T=e.utils.availableHeight(h,C,c)-(k?u.height():0);if(E.update=function(){0===S?C.call(E):C.transition().duration(S).call(E)},E.container=this,w.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(l),E.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(l)).update(),w.disabled=l.map((function(t){return!!t.disabled})),!M)for(D in M={},w)w[D]instanceof Array?M[D]=w[D].slice(0):M[D]=w[D];if(!(l&&l.length&&l.filter((function(t){return t.values.length})).length))return e.utils.noData(E,C),E;C.selectAll(".nv-noData").remove(),u.dispatch.on("onBrush",(function(t){V(t)})),t=r.xScale(),n=r.yScale();var W=C.selectAll("g.nv-wrap.nv-lineChart").data([l]),N=W.enter().append("g").attr("class","nvd3 nv-wrap nv-lineChart").append("g"),O=W.select("g");N.append("g").attr("class","nv-legendWrap");var _=N.append("g").attr("class","nv-focus");_.append("g").attr("class","nv-background").append("rect"),_.append("g").attr("class","nv-x nv-axis"),_.append("g").attr("class","nv-y nv-axis"),_.append("g").attr("class","nv-linesWrap"),_.append("g").attr("class","nv-interactive"),N.append("g").attr("class","nv-focusWrap"),g?(a.width(F),O.select(".nv-legendWrap").datum(l).call(a),"bottom"===v?(c.bottom=i.height()+a.height(),T=e.utils.availableHeight(h,C,c),O.select(".nv-legendWrap").attr("transform","translate(0,"+(T+i.height())+")")):"top"===v&&(d||a.height()===c.top||(c.top=a.height(),T=e.utils.availableHeight(h,C,c)-(k?u.height():0)),W.select(".nv-legendWrap").attr("transform","translate(0,"+-c.top+")"))):O.select(".nv-legendWrap").selectAll("*").remove(),W.attr("transform","translate("+c.left+","+c.top+")"),b&&O.select(".nv-y.nv-axis").attr("transform","translate("+F+",0)"),x&&(s.width(F).height(T).margin({left:c.left,top:c.top}).svgContainer(C).xScale(t),W.select(".nv-interactive").call(s)),O.select(".nv-focus .nv-background rect").attr("width",F).attr("height",T),r.width(F).height(T).color(l.map((function(t,e){return t.color||f(t,e)})).filter((function(t,e){return!l[e].disabled})));var L=O.select(".nv-linesWrap").datum(l.filter((function(t){return!t.disabled})));function P(){m&&O.select(".nv-focus .nv-x.nv-axis").transition().duration(S).call(i)}function B(){y&&O.select(".nv-focus .nv-y.nv-axis").transition().duration(S).call(o)}if(m&&i.scale(t)._ticks(e.utils.calcTicksX(F/100,l)).tickSize(-T,0),y&&o.scale(n)._ticks(e.utils.calcTicksY(T/36,l)).tickSize(-F,0),O.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+T+")"),k||null!==u.brush.extent()){u.width(F),O.select(".nv-focusWrap").style("display",k?"initial":"none").attr("transform","translate(0,"+(T+c.bottom+u.margin().top)+")").call(u);var I=u.brush.empty()?u.xDomain():u.brush.extent();null!==I&&V(I)}else L.call(r),P(),B();function V(t){O.select(".nv-focus .nv-linesWrap").datum(l.filter((function(t){return!t.disabled})).map((function(e,n){return{key:e.key,area:e.area,classed:e.classed,values:e.values.filter((function(e,n){return r.x()(e,n)>=t[0]&&r.x()(e,n)<=t[1]})),disableTooltip:e.disableTooltip}}))).transition().duration(S).call(r),P(),B()}a.dispatch.on("stateChange",(function(t){for(var e in t)w[e]=t[e];A.stateChange(w),E.update()})),s.dispatch.on("elementMousemove",(function(n){r.clearHighlights();var i,a,c,d=[];if(l.filter((function(t,e){return t.seriesIndex=e,!t.disabled&&!t.disableTooltip})).forEach((function(o,s){var l=null!==u.brush.extent()?u.brush.empty()?u.xScale().domain():u.brush.extent():t.domain(),p=o.values.filter((function(t,e){return l[0]<=l[1]?r.x()(t,e)>=l[0]&&r.x()(t,e)<=l[1]:r.x()(t,e)>=l[1]&&r.x()(t,e)<=l[0]})),h=p[a=e.interactiveBisect(p,n.pointXValue,r.x())],g=E.y()(h,a);null!==g&&r.highlightPoint(s,a,!0),void 0!==h&&(void 0===i&&(i=h),void 0===c&&(c=E.xScale()(E.x()(h,a))),d.push({key:o.key,value:g,color:f(o,o.seriesIndex),data:h}))})),d.length>2){var p=E.yScale().invert(n.mouseY),h=.03*Math.abs(E.yScale().domain()[0]-E.yScale().domain()[1]),g=e.nearestValueIndex(d.map((function(t){return t.value})),p,h);null!==g&&(d[g].highlight=!0)}s.tooltip.valueFormatter(s.tooltip.valueFormatter()||function(t,e){return null==t?"N/A":o.tickFormat()(t)}).data({value:E.x()(i,a),index:a,series:d})(),s.renderGuideLine(c)})),s.dispatch.on("elementClick",(function(t){var n,i=[];l.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(r){var o=e.interactiveBisect(r.values,t.pointXValue,E.x()),a=r.values[o];if(void 0!==a){void 0===n&&(n=E.xScale()(E.x()(a,o)));var s=E.yScale()(E.y()(a,o));i.push({point:a,pointIndex:o,pos:[n,s],seriesIndex:r.seriesIndex,series:r})}})),r.dispatch.elementClick(i)})),s.dispatch.on("elementMouseout",(function(t){r.clearHighlights()})),A.on("changeState",(function(t){void 0!==t.disabled&&l.length===t.disabled.length&&(l.forEach((function(e,n){e.disabled=t.disabled[n]})),w.disabled=t.disabled),E.update()}))})),D.renderEnd("lineChart immediate"),E}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.series.disableTooltip||l.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){l.hidden(!0)})),E.dispatch=A,E.lines=r,E.legend=a,E.focus=u,E.xAxis=i,E.x2Axis=u.xAxis,E.yAxis=o,E.y2Axis=u.yAxis,E.interactiveLayer=s,E.tooltip=l,E.state=w,E.dispatch=A,E.options=e.utils.optionsFunc.bind(E),E._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showLegend:{get:function(){return g},set:function(t){g=t}},legendPosition:{get:function(){return v},set:function(t){v=t}},showXAxis:{get:function(){return m},set:function(t){m=t}},showYAxis:{get:function(){return y},set:function(t){y=t}},defaultState:{get:function(){return M},set:function(t){M=t}},noData:{get:function(){return C},set:function(t){C=t}},focusEnable:{get:function(){return k},set:function(t){k=t}},focusHeight:{get:function(){return u.height()},set:function(t){u.height(t)}},focusShowAxisX:{get:function(){return u.showXAxis()},set:function(t){u.showXAxis(t)}},focusShowAxisY:{get:function(){return u.showYAxis()},set:function(t){u.showYAxis(t)}},brushExtent:{get:function(){return u.brushExtent()},set:function(t){u.brushExtent(t)}},focusMargin:{get:function(){return u.margin},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),u.margin.right=void 0!==t.right?t.right:u.margin.right,u.margin.bottom=void 0!==t.bottom?t.bottom:u.margin.bottom,u.margin.left=void 0!==t.left?t.left:u.margin.left}},margin:{get:function(){return c},set:function(t){c.top=void 0!==t.top?t.top:c.top,c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},duration:{get:function(){return S},set:function(t){S=t,D.reset(S),r.duration(S),u.duration(S),i.duration(S),o.duration(S)}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),a.color(f),r.color(f),u.color(f)}},interpolate:{get:function(){return r.interpolate()},set:function(t){r.interpolate(t),u.interpolate(t)}},xTickFormat:{get:function(){return i.tickFormat()},set:function(t){i.tickFormat(t),u.xTickFormat(t)}},yTickFormat:{get:function(){return o.tickFormat()},set:function(t){o.tickFormat(t),u.yTickFormat(t)}},x:{get:function(){return r.x()},set:function(t){r.x(t),u.x(t)}},y:{get:function(){return r.y()},set:function(t){r.y(t),u.y(t)}},rightAlignYAxis:{get:function(){return b},set:function(t){b=t,o.orient(b?"right":"left")}},useInteractiveGuideline:{get:function(){return x},set:function(t){(x=t)&&(r.interactive(!1),r.useVoronoi(!1))}}}),e.utils.inheritOptions(E,r),e.utils.initOptions(E),E},e.models.lineWithFocusChart=function(){return e.models.lineChart().margin({bottom:30}).focusEnable(!0)},e.models.linePlusBarChart=function(){"use strict";var t,n,r,i,o,a,s,l=e.models.line(),u=e.models.line(),c=e.models.historicalBar(),d=e.models.historicalBar(),f=e.models.axis(),p=e.models.axis(),h=e.models.axis(),g=e.models.axis(),v=e.models.axis(),m=e.models.axis(),y=e.models.legend(),b=d3.svg.brush(),x=e.models.tooltip(),k={top:30,right:30,bottom:30,left:60},w=null,M={top:0,right:30,bottom:20,left:60},C=null,A=null,S=function(t){return t.x},D=function(t){return t.y},E=e.utils.defaultColor(),F=!0,T=!0,W=!1,N=!0,O=50,_=null,L=null,P=d3.dispatch("brush","stateChange","changeState"),B=0,I=e.utils.state(),V=null,j=" (left axis)",H=" (right axis)",R=!1;l.clipEdge(!0),u.interactive(!1),u.pointActive((function(t){return!1})),f.orient("bottom").tickPadding(5),h.orient("left"),g.orient("right"),p.orient("bottom").tickPadding(5),v.orient("left"),m.orient("right"),x.headerEnabled(!0).headerFormatter((function(t,e){return f.tickFormat()(t,e)}));var z=function(t){return t.every((function(t){return t.disabled}))};function q(x){return x.each((function(x){var L=d3.select(this);e.utils.initSVG(L);var G,Y=e.utils.availableWidth(C,L,k),X=e.utils.availableHeight(A,L,k)-(T?O:0),$=O-M.top-M.bottom;if(q.update=function(){L.transition().duration(B).call(q)},q.container=this,I.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(x),q.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(x)).update(),I.disabled=x.map((function(t){return!!t.disabled})),!V)for(G in V={},I)I[G]instanceof Array?V[G]=I[G].slice(0):V[G]=I[G];if(!(x&&x.length&&x.filter((function(t){return t.values.length})).length))return e.utils.noData(q,L),q;L.selectAll(".nv-noData").remove();var Q=x.filter((function(t){return!t.disabled&&t.bar})),Z=x.filter((function(t){return!t.bar}));n=Q.length&&!R?c.xScale():l.xScale(),r=p.scale(),i=R?l.yScale():c.yScale(),o=R?c.yScale():l.yScale(),a=R?u.yScale():d.yScale(),s=R?d.yScale():u.yScale();var U=x.filter((function(t){return!t.disabled&&(R?!t.bar:t.bar)})).map((function(t){return t.values.map((function(t,e){return{x:S(t,e),y:D(t,e)}}))})),J=x.filter((function(t){return!t.disabled&&(R?t.bar:!t.bar)})).map((function(t){return t.values.map((function(t,e){return{x:S(t,e),y:D(t,e)}}))}));n.range([0,Y]),r.domain(d3.extent(d3.merge(U.concat(J)),(function(t){return t.x}))).range([0,Y]);var K=L.selectAll("g.nv-wrap.nv-linePlusBar").data([x]),tt=K.enter().append("g").attr("class","nvd3 nv-wrap nv-linePlusBar").append("g"),et=K.select("g");tt.append("g").attr("class","nv-legendWrap");var nt=tt.append("g").attr("class","nv-focus");nt.append("g").attr("class","nv-x nv-axis"),nt.append("g").attr("class","nv-y1 nv-axis"),nt.append("g").attr("class","nv-y2 nv-axis"),nt.append("g").attr("class","nv-barsWrap"),nt.append("g").attr("class","nv-linesWrap");var rt=tt.append("g").attr("class","nv-context");if(rt.append("g").attr("class","nv-x nv-axis"),rt.append("g").attr("class","nv-y1 nv-axis"),rt.append("g").attr("class","nv-y2 nv-axis"),rt.append("g").attr("class","nv-barsWrap"),rt.append("g").attr("class","nv-linesWrap"),rt.append("g").attr("class","nv-brushBackground"),rt.append("g").attr("class","nv-x nv-brush"),F){var it=y.align()?Y/2:Y,ot=y.align()?it:0;y.width(it),et.select(".nv-legendWrap").datum(x.map((function(t){return t.originalKey=void 0===t.originalKey?t.key:t.originalKey,t.key=R?t.originalKey+(t.bar?H:j):t.originalKey+(t.bar?j:H),t}))).call(y),w||y.height()===k.top||(k.top=y.height(),X=e.utils.availableHeight(A,L,k)-O),et.select(".nv-legendWrap").attr("transform","translate("+ot+","+-k.top+")")}else et.select(".nv-legendWrap").selectAll("*").remove();K.attr("transform","translate("+k.left+","+k.top+")"),et.select(".nv-context").style("display",T?"initial":"none"),d.width(Y).height($).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&x[e].bar}))),u.width(Y).height($).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&!x[e].bar})));var at=et.select(".nv-context .nv-barsWrap").datum(Q.length?Q:[{values:[]}]),st=et.select(".nv-context .nv-linesWrap").datum(z(Z)?[{values:[]}]:Z.filter((function(t){return!t.disabled})));et.select(".nv-context").attr("transform","translate(0,"+(X+k.bottom+M.top)+")"),at.transition().call(d),st.transition().call(u),N&&(p._ticks(e.utils.calcTicksX(Y/100,x)).tickSize(-$,0),et.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+a.range()[0]+")"),et.select(".nv-context .nv-x.nv-axis").transition().call(p)),W&&(v.scale(a)._ticks($/36).tickSize(-Y,0),m.scale(s)._ticks($/36).tickSize(Q.length?0:-Y,0),et.select(".nv-context .nv-y3.nv-axis").style("opacity",Q.length?1:0).attr("transform","translate(0,"+r.range()[0]+")"),et.select(".nv-context .nv-y2.nv-axis").style("opacity",Z.length?1:0).attr("transform","translate("+r.range()[1]+",0)"),et.select(".nv-context .nv-y1.nv-axis").transition().call(v),et.select(".nv-context .nv-y2.nv-axis").transition().call(m)),b.x(r).on("brush",dt),_&&b.extent(_);var lt=et.select(".nv-brushBackground").selectAll("g").data([_||b.extent()]),ut=lt.enter().append("g");ut.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",$),ut.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",$);var ct=et.select(".nv-x.nv-brush").call(b);function dt(){_=b.empty()?null:b.extent(),t=b.empty()?r.domain():b.extent(),P.brush({extent:t,brush:b}),b.empty()||b.extent(_),lt.data([b.empty()?r.domain():_]).each((function(t,e){var n=r(t[0])-r.range()[0],i=r.range()[1]-r(t[1]);d3.select(this).select(".left").attr("width",n<0?0:n),d3.select(this).select(".right").attr("x",r(t[1])).attr("width",i<0?0:i)})),c.width(Y).height(X).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&x[e].bar}))),l.width(Y).height(X).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&!x[e].bar})));var a=et.select(".nv-focus .nv-barsWrap").datum(Q.length?Q.map((function(e,n){return{key:e.key,values:e.values.filter((function(e,n){return c.x()(e,n)>=t[0]&&c.x()(e,n)<=t[1]}))}})):[{values:[]}]),s=et.select(".nv-focus .nv-linesWrap").datum(z(Z)?[{values:[]}]:Z.filter((function(t){return!t.disabled})).map((function(e,n){return{area:e.area,fillOpacity:e.fillOpacity,strokeWidth:e.strokeWidth,key:e.key,values:e.values.filter((function(e,n){return l.x()(e,n)>=t[0]&&l.x()(e,n)<=t[1]}))}})));n=Q.length&&!R?c.xScale():l.xScale(),f.scale(n)._ticks(e.utils.calcTicksX(Y/100,x)).tickSize(-X,0),f.domain([Math.ceil(t[0]),Math.floor(t[1])]),et.select(".nv-x.nv-axis").transition().duration(B).call(f),a.transition().duration(B).call(c),s.transition().duration(B).call(l),et.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+i.range()[0]+")"),h.scale(i)._ticks(e.utils.calcTicksY(X/36,x)).tickSize(-Y,0),g.scale(o)._ticks(e.utils.calcTicksY(X/36,x)),R?g.tickSize(Z.length?0:-Y,0):g.tickSize(Q.length?0:-Y,0);var u=Q.length?1:0,d=Z.length&&!z(Z)?1:0,p=R?d:u,v=R?u:d;et.select(".nv-focus .nv-y1.nv-axis").style("opacity",p),et.select(".nv-focus .nv-y2.nv-axis").style("opacity",v).attr("transform","translate("+n.range()[1]+",0)"),et.select(".nv-focus .nv-y1.nv-axis").transition().duration(B).call(h),et.select(".nv-focus .nv-y2.nv-axis").transition().duration(B).call(g)}ct.selectAll("rect").attr("height",$),ct.selectAll(".resize").append("path").attr("d",(function(t){var e=+("e"==t),n=e?1:-1,r=$/3;return"M"+.5*n+","+r+"A6,6 0 0 "+e+" "+6.5*n+","+(r+6)+"V"+(2*r-6)+"A6,6 0 0 "+e+" "+.5*n+","+2*r+"ZM"+2.5*n+","+(r+8)+"V"+(2*r-8)+"M"+4.5*n+","+(r+8)+"V"+(2*r-8)})),y.dispatch.on("stateChange",(function(t){for(var e in t)I[e]=t[e];P.stateChange(I),q.update()})),P.on("changeState",(function(t){void 0!==t.disabled&&(x.forEach((function(e,n){e.disabled=t.disabled[n]})),I.disabled=t.disabled),q.update()})),dt()})),q}return l.dispatch.on("elementMouseover.tooltip",(function(t){x.duration(100).valueFormatter((function(t,e){return(R?{main:h,focus:v}:{main:g,focus:m}).main.tickFormat()(t,e)})).data(t).hidden(!1)})),l.dispatch.on("elementMouseout.tooltip",(function(t){x.hidden(!0)})),c.dispatch.on("elementMouseover.tooltip",(function(t){t.value=q.x()(t.data),t.series={value:q.y()(t.data),color:t.color},x.duration(0).valueFormatter((function(t,e){return(R?{main:g,focus:m}:{main:h,focus:v}).main.tickFormat()(t,e)})).data(t).hidden(!1)})),c.dispatch.on("elementMouseout.tooltip",(function(t){x.hidden(!0)})),c.dispatch.on("elementMousemove.tooltip",(function(t){x()})),q.dispatch=P,q.legend=y,q.lines=l,q.lines2=u,q.bars=c,q.bars2=d,q.xAxis=f,q.x2Axis=p,q.y1Axis=h,q.y2Axis=g,q.y3Axis=v,q.y4Axis=m,q.tooltip=x,q.options=e.utils.optionsFunc.bind(q),q._options=Object.create({},{width:{get:function(){return C},set:function(t){C=t}},height:{get:function(){return A},set:function(t){A=t}},showLegend:{get:function(){return F},set:function(t){F=t}},brushExtent:{get:function(){return _},set:function(t){_=t}},noData:{get:function(){return L},set:function(t){L=t}},focusEnable:{get:function(){return T},set:function(t){T=t}},focusHeight:{get:function(){return O},set:function(t){O=t}},focusShowAxisX:{get:function(){return N},set:function(t){N=t}},focusShowAxisY:{get:function(){return W},set:function(t){W=t}},legendLeftAxisHint:{get:function(){return j},set:function(t){j=t}},legendRightAxisHint:{get:function(){return H},set:function(t){H=t}},margin:{get:function(){return k},set:function(t){void 0!==t.top&&(k.top=t.top,w=t.top),k.right=void 0!==t.right?t.right:k.right,k.bottom=void 0!==t.bottom?t.bottom:k.bottom,k.left=void 0!==t.left?t.left:k.left}},focusMargin:{get:function(){return M},set:function(t){M.top=void 0!==t.top?t.top:M.top,M.right=void 0!==t.right?t.right:M.right,M.bottom=void 0!==t.bottom?t.bottom:M.bottom,M.left=void 0!==t.left?t.left:M.left}},duration:{get:function(){return B},set:function(t){B=t}},color:{get:function(){return E},set:function(t){E=e.utils.getColor(t),y.color(E)}},x:{get:function(){return S},set:function(t){S=t,l.x(t),u.x(t),c.x(t),d.x(t)}},y:{get:function(){return D},set:function(t){D=t,l.y(t),u.y(t),c.y(t),d.y(t)}},switchYAxisOrder:{get:function(){return R},set:function(t){if(R!==t){var e=h;h=g,g=e;var n=v;v=m,m=n}R=t,h.orient("left"),g.orient("right"),v.orient("left"),m.orient("right")}}}),e.utils.inheritOptions(q,l),e.utils.initOptions(q),q},e.models.multiBar=function(){"use strict";var t,n,r,i,o,a,s,l={top:0,right:0,bottom:0,left:0},u=960,c=500,d=d3.scale.ordinal(),f=d3.scale.linear(),p=Math.floor(1e4*Math.random()),h=null,g=function(t){return t.x},v=function(t){return t.y},m=[0],y=!0,b=!1,x="zero",k=e.utils.defaultColor(),w=!1,M=null,C=500,A=.1,S=.75,D=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),E=e.utils.renderWatch(D,C),F=0;function T(W){return E.reset(),W.each((function(T){var W=u-l.left-l.right,N=c-l.top-l.bottom;h=d3.select(this),e.utils.initSVG(h);var O=0;if(w&&T.length&&(w=[{values:T[0].values.map((function(t){return{x:t.x,y:0,series:t.series,size:.01}}))}]),b){var _=d3.layout.stack().offset(x).values((function(t){return t.values})).y(v)(!T.length&&w?w:T);_.forEach((function(t,e){t.nonStackable?(T[e].nonStackableSeries=O++,_[e]=T[e]):e>0&&_[e-1].nonStackable&&_[e].values.map((function(t,n){t.y0-=_[e-1].values[n].y,t.y1=t.y0+t.y}))})),T=_}T.forEach((function(t,e){t.values.forEach((function(n){n.series=e,n.key=t.key}))})),b&&T.length>0&&T[0].values.map((function(t,e){var n=0,r=0;T.map((function(t,i){if(!T[i].nonStackable){var o=t.values[e];o.size=Math.abs(o.y),o.y<0?(o.y1=r,r-=o.size):(o.y1=o.size+n,n+=o.size)}}))}));var L=n&&r?[]:T.map((function(t,e){return t.values.map((function(t,n){return{x:g(t,n),y:v(t,n),y0:t.y0,y1:t.y1,idx:e}}))}));d.domain(n||d3.merge(L).map((function(t){return t.x}))).rangeBands(i||[0,W],A),f.domain(r||d3.extent(d3.merge(L).map((function(t){var e=t.y;return b&&!T[t.idx].nonStackable&&(e=t.y>0?t.y1:t.y1+t.y),e})).concat(m))).range(o||[N,0]),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]-.01*d.domain()[0],d.domain()[1]+.01*d.domain()[1]]):d.domain([-1,1])),f.domain()[0]===f.domain()[1]&&(f.domain()[0]?f.domain([f.domain()[0]+.01*f.domain()[0],f.domain()[1]-.01*f.domain()[1]]):f.domain([-1,1])),a=a||d,s=s||f;var P=h.selectAll("g.nv-wrap.nv-multibar").data([T]),B=P.enter().append("g").attr("class","nvd3 nv-wrap nv-multibar"),I=B.append("defs"),V=B.append("g"),j=P.select("g");V.append("g").attr("class","nv-groups"),P.attr("transform","translate("+l.left+","+l.top+")"),I.append("clipPath").attr("id","nv-edge-clip-"+p).append("rect"),P.select("#nv-edge-clip-"+p+" rect").attr("width",W).attr("height",N),j.attr("clip-path",y?"url(#nv-edge-clip-"+p+")":"");var H=P.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t,e){return e}));H.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6);var R=E.transition(H.exit().selectAll("rect.nv-bar"),"multibarExit",Math.min(100,C)).attr("y",(function(t,e,n){var r=s(0)||0;return b&&T[t.series]&&!T[t.series].nonStackable&&(r=s(t.y0)),r})).attr("height",0).remove();R.delay&&R.delay((function(t,e){return e*(C/(F+1))-e})),H.attr("class",(function(t,e){return"nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})).style("fill",(function(t,e){return k(t,e)})).style("stroke",(function(t,e){return k(t,e)})),H.style("stroke-opacity",1).style("fill-opacity",S);var z=H.selectAll("rect.nv-bar").data((function(t){return w&&!T.length?w.values:t.values}));z.exit().remove(),z.enter().append("rect").attr("class",(function(t,e){return v(t,e)<0?"nv-bar negative":"nv-bar positive"})).attr("x",(function(t,e,n){return b&&!T[n].nonStackable?0:n*d.rangeBand()/T.length})).attr("y",(function(t,e,n){return s(b&&!T[n].nonStackable?t.y0:0)||0})).attr("height",0).attr("width",(function(t,e,n){return d.rangeBand()/(b&&!T[n].nonStackable?1:T.length)})).attr("transform",(function(t,e){return"translate("+d(g(t,e))+",0)"})),z.style("fill",(function(t,e,n){return k(t,n,e)})).style("stroke",(function(t,e,n){return k(t,n,e)})).on("mouseover",(function(t,e,n){d3.select(this).classed("hover",!0),D.elementMouseover({data:t,index:e,series:T[n],color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e,n){d3.select(this).classed("hover",!1),D.elementMouseout({data:t,index:e,series:T[n],color:d3.select(this).style("fill")})})).on("mousemove",(function(t,e,n){D.elementMousemove({data:t,index:e,series:T[n],color:d3.select(this).style("fill")})})).on("click",(function(t,e,n){D.elementClick({data:t,index:e,series:T[n],color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation()})).on("dblclick",(function(t,e,n){D.elementDblClick({data:t,index:e,series:T[n],color:d3.select(this).style("fill")}),d3.event.stopPropagation()})),z.attr("class",(function(t,e){return v(t,e)<0?"nv-bar negative":"nv-bar positive"})).attr("transform",(function(t,e){return"translate("+d(g(t,e))+",0)"})),M&&(t||(t=T.map((function(){return!0}))),z.style("fill",(function(e,n,r){return d3.rgb(M(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()})).style("stroke",(function(e,n,r){return d3.rgb(M(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()})));var q=z.watchTransition(E,"multibar",Math.min(250,C)).delay((function(t,e){return e*C/T[0].values.length}));b?q.attr("y",(function(t,e,n){return T[n].nonStackable?v(t,e)<0?f(0):f(0)-f(v(t,e))<-1?f(0)-1:f(v(t,e))||0:f(t.y1)})).attr("height",(function(t,e,n){return T[n].nonStackable?Math.max(Math.abs(f(v(t,e))-f(0)),0)||0:Math.max(Math.abs(f(t.y+t.y0)-f(t.y0)),0)})).attr("x",(function(t,e,n){var r=0;return T[n].nonStackable&&(r=t.series*d.rangeBand()/T.length,T.length!==O&&(r=T[n].nonStackableSeries*d.rangeBand()/(2*O))),r})).attr("width",(function(t,e,n){if(T[n].nonStackable){var r=d.rangeBand()/O;return T.length!==O&&(r=d.rangeBand()/(2*O)),r}return d.rangeBand()})):q.attr("x",(function(t,e){return t.series*d.rangeBand()/T.length})).attr("width",d.rangeBand()/T.length).attr("y",(function(t,e){return v(t,e)<0?f(0):f(0)-f(v(t,e))<1?f(0)-1:f(v(t,e))||0})).attr("height",(function(t,e){return Math.max(Math.abs(f(v(t,e))-f(0)),1)||0})),a=d.copy(),s=f.copy(),T[0]&&T[0].values&&(F=T[0].values.length)})),E.renderEnd("multibar immediate"),T}return T.dispatch=D,T.options=e.utils.optionsFunc.bind(T),T._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},x:{get:function(){return g},set:function(t){g=t}},y:{get:function(){return v},set:function(t){v=t}},xScale:{get:function(){return d},set:function(t){d=t}},yScale:{get:function(){return f},set:function(t){f=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return o},set:function(t){o=t}},forceY:{get:function(){return m},set:function(t){m=t}},stacked:{get:function(){return b},set:function(t){b=t}},stackOffset:{get:function(){return x},set:function(t){x=t}},clipEdge:{get:function(){return y},set:function(t){y=t}},disabled:{get:function(){return t},set:function(e){t=e}},id:{get:function(){return p},set:function(t){p=t}},hideable:{get:function(){return w},set:function(t){w=t}},groupSpacing:{get:function(){return A},set:function(t){A=t}},fillOpacity:{get:function(){return S},set:function(t){S=t}},margin:{get:function(){return l},set:function(t){l.top=void 0!==t.top?t.top:l.top,l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},duration:{get:function(){return C},set:function(t){C=t,E.reset(C)}},color:{get:function(){return k},set:function(t){k=e.utils.getColor(t)}},barColor:{get:function(){return M},set:function(t){M=t?e.utils.getColor(t):null}}}),e.utils.initOptions(T),T},e.models.multiBarChart=function(){"use strict";var t,n,r=e.models.multiBar(),i=e.models.axis(),o=e.models.axis(),a=e.interactiveGuideline(),s=e.models.legend(),l=e.models.legend(),u=e.models.tooltip(),c={top:30,right:20,bottom:50,left:60},d=null,f=null,p=null,h=e.utils.defaultColor(),g=!0,v={},m=!0,y=null,b=!0,x=!0,k=!1,w=!0,M=!1,C=!1,A=0,S=e.utils.state(),D=null,E=null,F=d3.dispatch("stateChange","changeState","renderEnd"),T=function(){return g?180:0},W=250,N=!1;S.stacked=!1,r.stacked(!1),i.orient("bottom").tickPadding(7).showMaxMin(!1).tickFormat((function(t){return t})),o.orient(k?"right":"left").tickFormat(d3.format(",.1f")),u.duration(0).valueFormatter((function(t,e){return o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),a.tooltip.valueFormatter((function(t,e){return null==t?"N/A":o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),a.tooltip.valueFormatter((function(t,e){return null==t?"N/A":o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),a.tooltip.duration(0).valueFormatter((function(t,e){return o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),l.updateState(!1);var O=e.utils.renderWatch(F),_=!1;function L(E){return O.reset(),O.models(r),b&&O.models(i),x&&O.models(o),E.each((function(E){var O=d3.select(this);e.utils.initSVG(O);var P,B=e.utils.availableWidth(f,O,c),I=e.utils.availableHeight(p,O,c);if(L.update=function(){0===W?O.call(L):O.transition().duration(W).call(L)},L.container=this,S.setter(function(t){return function(e){void 0!==e.stacked&&(_=e.stacked),void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(E),L.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),stacked:_}}}(E)).update(),S.disabled=E.map((function(t){return!!t.disabled})),!D)for(P in D={},S)S[P]instanceof Array?D[P]=S[P].slice(0):D[P]=S[P];if(!(E&&E.length&&E.filter((function(t){return t.values.length})).length))return e.utils.noData(L,O),L;O.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale();var V=O.selectAll("g.nv-wrap.nv-multiBarWithLegend").data([E]),j=V.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarWithLegend").append("g"),H=V.select("g");if(j.append("g").attr("class","nv-x nv-axis"),j.append("g").attr("class","nv-y nv-axis"),j.append("g").attr("class","nv-barsWrap"),j.append("g").attr("class","nv-legendWrap"),j.append("g").attr("class","nv-controlsWrap"),j.append("g").attr("class","nv-interactive"),m?"bottom"===y?(s.width(B-c.right),H.select(".nv-legendWrap").datum(E).call(s),c.bottom=i.height()+s.height(),I=e.utils.availableHeight(p,O,c),H.select(".nv-legendWrap").attr("transform","translate(0,"+(I+i.height())+")")):(s.width(B-T()),H.select(".nv-legendWrap").datum(E).call(s),d||s.height()===c.top||(c.top=s.height(),I=e.utils.availableHeight(p,O,c)),H.select(".nv-legendWrap").attr("transform","translate("+T()+","+-c.top+")")):H.select(".nv-legendWrap").selectAll("*").remove(),g){var R=[{key:v.grouped||"Grouped",disabled:r.stacked()},{key:v.stacked||"Stacked",disabled:!r.stacked()}];l.width(T()).color(["#444","#444","#444"]),H.select(".nv-controlsWrap").datum(R).attr("transform","translate(0,"+-c.top+")").call(l)}else H.select(".nv-controlsWrap").selectAll("*").remove();if(V.attr("transform","translate("+c.left+","+c.top+")"),k&&H.select(".nv-y.nv-axis").attr("transform","translate("+B+",0)"),r.disabled(E.map((function(t){return t.disabled}))).width(B).height(I).color(E.map((function(t,e){return t.color||h(t,e)})).filter((function(t,e){return!E[e].disabled}))),H.select(".nv-barsWrap").datum(E.filter((function(t){return!t.disabled}))).call(r),b){i.scale(t)._ticks(e.utils.calcTicksX(B/100,E)).tickSize(-I,0),H.select(".nv-x.nv-axis").attr("transform","translate(0,"+n.range()[0]+")"),H.select(".nv-x.nv-axis").call(i);var z=H.select(".nv-x.nv-axis > g").selectAll("g");if(z.selectAll("line, text").style("opacity",1),M){var q=function(t,e){return"translate("+t+","+e+")"};z.selectAll("text").attr("transform",(function(t,e,n){return q(0,n%2==0?5:17)}));var G=d3.selectAll(".nv-x.nv-axis .nv-wrap g g text")[0].length;H.selectAll(".nv-x.nv-axis .nv-axisMaxMin text").attr("transform",(function(t,e){return q(0,0===e||G%2!=0?17:5)}))}C&&H.selectAll(".tick text").call(e.utils.wrapTicks,L.xAxis.rangeBand()),w&&z.filter((function(t,e){return e%Math.ceil(E[0].values.length/(B/100))!=0})).selectAll("text, line").style("opacity",0),A&&z.selectAll(".tick text").attr("transform","rotate("+A+" 0,0)").style("text-anchor",A>0?"start":"end"),H.select(".nv-x.nv-axis").selectAll("g.nv-axisMaxMin text").style("opacity",1)}x&&(o.scale(n)._ticks(e.utils.calcTicksY(I/36,E)).tickSize(-B,0),H.select(".nv-y.nv-axis").call(o)),N&&(a.width(B).height(I).margin({left:c.left,top:c.top}).svgContainer(O).xScale(t),V.select(".nv-interactive").call(a)),s.dispatch.on("stateChange",(function(t){for(var e in t)S[e]=t[e];F.stateChange(S),L.update()})),l.dispatch.on("legendClick",(function(t,e){if(t.disabled){switch(R=R.map((function(t){return t.disabled=!0,t})),t.disabled=!1,t.key){case"Grouped":case v.grouped:r.stacked(!1);break;case"Stacked":case v.stacked:r.stacked(!0)}S.stacked=r.stacked(),F.stateChange(S),L.update()}})),F.on("changeState",(function(t){void 0!==t.disabled&&(E.forEach((function(e,n){e.disabled=t.disabled[n]})),S.disabled=t.disabled),void 0!==t.stacked&&(r.stacked(t.stacked),S.stacked=t.stacked,_=t.stacked),L.update()})),N?(a.dispatch.on("elementMousemove",(function(e){if(null!=e.pointXValue){var n,r,i,o,s=[];E.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(a,l){r=t.domain().indexOf(e.pointXValue);var u=a.values[r];void 0!==u&&(o=u.x,void 0===n&&(n=u),void 0===i&&(i=e.mouseX),s.push({key:a.key,value:L.y()(u,r),color:h(a,a.seriesIndex),data:a.values[r]}))})),a.tooltip.data({value:o,index:r,series:s})(),a.renderGuideLine(i)}})),a.dispatch.on("elementMouseout",(function(t){a.tooltip.hidden(!0)}))):(r.dispatch.on("elementMouseover.tooltip",(function(t){t.value=L.x()(t.data),t.series={key:t.data.key,value:L.y()(t.data),color:t.color},u.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){u()})))})),O.renderEnd("multibarchart immediate"),L}return L.dispatch=F,L.multibar=r,L.legend=s,L.controls=l,L.xAxis=i,L.yAxis=o,L.state=S,L.tooltip=u,L.interactiveLayer=a,L.options=e.utils.optionsFunc.bind(L),L._options=Object.create({},{width:{get:function(){return f},set:function(t){f=t}},height:{get:function(){return p},set:function(t){p=t}},showLegend:{get:function(){return m},set:function(t){m=t}},legendPosition:{get:function(){return y},set:function(t){y=t}},showControls:{get:function(){return g},set:function(t){g=t}},controlLabels:{get:function(){return v},set:function(t){v=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return D},set:function(t){D=t}},noData:{get:function(){return E},set:function(t){E=t}},reduceXTicks:{get:function(){return w},set:function(t){w=t}},rotateLabels:{get:function(){return A},set:function(t){A=t}},staggerLabels:{get:function(){return M},set:function(t){M=t}},wrapLabels:{get:function(){return C},set:function(t){C=!!t}},margin:{get:function(){return c},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},duration:{get:function(){return W},set:function(t){W=t,r.duration(W),i.duration(W),o.duration(W),O.reset(W)}},color:{get:function(){return h},set:function(t){h=e.utils.getColor(t),s.color(h)}},rightAlignYAxis:{get:function(){return k},set:function(t){k=t,o.orient(k?"right":"left")}},useInteractiveGuideline:{get:function(){return N},set:function(t){N=t}},barColor:{get:function(){return r.barColor},set:function(t){r.barColor(t),s.color((function(t,e){return d3.rgb("#ccc").darker(1.5*e).toString()}))}}}),e.utils.inheritOptions(L,r),e.utils.initOptions(L),L},e.models.multiBarHorizontal=function(){"use strict";var t,n,r,i,o,a,s,l={top:0,right:0,bottom:0,left:0},u=960,c=500,d=Math.floor(1e4*Math.random()),f=null,p=d3.scale.ordinal(),h=d3.scale.linear(),g=function(t){return t.x},v=function(t){return t.y},m=function(t){return t.yErr},y=[0],b=e.utils.defaultColor(),x=null,k=!1,w=!1,M=60,C=.1,A=.75,S=d3.format(",.2f"),D=250,E=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),F=e.utils.renderWatch(E,D);function T(d){return F.reset(),d.each((function(d){var D=u-l.left-l.right,T=c-l.top-l.bottom;f=d3.select(this),e.utils.initSVG(f),k&&(d=d3.layout.stack().offset("zero").values((function(t){return t.values})).y(v)(d)),d.forEach((function(t,e){t.values.forEach((function(n){n.series=e,n.key=t.key}))})),k&&d[0].values.map((function(t,e){var n=0,r=0;d.map((function(t){var i=t.values[e];i.size=Math.abs(i.y),i.y<0?(i.y1=r-i.size,r-=i.size):(i.y1=n,n+=i.size)}))}));var W=n&&r?[]:d.map((function(t){return t.values.map((function(t,e){return{x:g(t,e),y:v(t,e),y0:t.y0,y1:t.y1}}))}));p.domain(n||d3.merge(W).map((function(t){return t.x}))).rangeBands(i||[0,T],C),h.domain(r||d3.extent(d3.merge(W).map((function(t){return k?t.y>0?t.y1+t.y:t.y1:t.y})).concat(y))),w&&!k?h.range(o||[h.domain()[0]<0?M:0,D-(h.domain()[1]>0?M:0)]):h.range(o||[0,D]),a=a||p,s=s||d3.scale.linear().domain(h.domain()).range([h(0),h(0)]);var N=d3.select(this).selectAll("g.nv-wrap.nv-multibarHorizontal").data([d]),O=N.enter().append("g").attr("class","nvd3 nv-wrap nv-multibarHorizontal"),_=(O.append("defs"),O.append("g"));N.select("g"),_.append("g").attr("class","nv-groups"),N.attr("transform","translate("+l.left+","+l.top+")");var L=N.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t,e){return e}));L.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),L.exit().watchTransition(F,"multibarhorizontal: exit groups").style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),L.attr("class",(function(t,e){return"nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})).style("fill",(function(t,e){return b(t,e)})).style("stroke",(function(t,e){return b(t,e)})),L.watchTransition(F,"multibarhorizontal: groups").style("stroke-opacity",1).style("fill-opacity",A);var P=L.selectAll("g.nv-bar").data((function(t){return t.values}));P.exit().remove();var B=P.enter().append("g").attr("transform",(function(t,e,n){return"translate("+s(k?t.y0:0)+","+(k?0:n*p.rangeBand()/d.length+p(g(t,e)))+")"}));B.append("rect").attr("width",0).attr("height",p.rangeBand()/(k?1:d.length)),P.on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),E.elementMouseover({data:t,index:e,color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),E.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){E.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")})})).on("mousemove",(function(t,e){E.elementMousemove({data:t,index:e,color:d3.select(this).style("fill")})})).on("click",(function(t,e){E.elementClick({data:t,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation()})).on("dblclick",(function(t,e){E.elementDblClick({data:t,index:e,color:d3.select(this).style("fill")}),d3.event.stopPropagation()})),m(d[0],0)&&(B.append("polyline"),P.select("polyline").attr("fill","none").attr("points",(function(t,e){var n=m(t,e),r=.8*p.rangeBand()/(2*(k?1:d.length));return[[(n=(n=n.length?n:[-Math.abs(n),Math.abs(n)]).map((function(n){return h(n+(v(t,e)<0?0:v(t,e)))-h(0)})))[0],-r],[n[0],r],[n[0],0],[n[1],0],[n[1],-r],[n[1],r]].map((function(t){return t.join(",")})).join(" ")})).attr("transform",(function(t,e){return"translate(0, "+p.rangeBand()/(2*(k?1:d.length))+")"}))),B.append("text"),w&&!k?(P.select("text").attr("text-anchor",(function(t,e){return v(t,e)<0?"end":"start"})).attr("y",p.rangeBand()/(2*d.length)).attr("dy",".32em").text((function(t,e){var n=S(v(t,e)),r=m(t,e);return void 0===r?n:r.length?n+"+"+S(Math.abs(r[1]))+"-"+S(Math.abs(r[0])):n+"±"+S(Math.abs(r))})),P.watchTransition(F,"multibarhorizontal: bars").select("text").attr("x",(function(t,e){return v(t,e)<0?-4:h(v(t,e))-h(0)+4}))):P.selectAll("text").text(""),P.selectAll("text.nv-bar-label").text(""),P.attr("class",(function(t,e){return v(t,e)<0?"nv-bar negative":"nv-bar positive"})),x&&(t||(t=d.map((function(){return!0}))),P.style("fill",(function(e,n,r){return d3.rgb(x(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()})).style("stroke",(function(e,n,r){return d3.rgb(x(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()}))),k?P.watchTransition(F,"multibarhorizontal: bars").attr("transform",(function(t,e){return"translate("+h(t.y1)+","+p(g(t,e))+")"})).select("rect").attr("width",(function(t,e){return Math.abs(h(v(t,e)+t.y0)-h(t.y0))||0})).attr("height",p.rangeBand()):P.watchTransition(F,"multibarhorizontal: bars").attr("transform",(function(t,e){return"translate("+(v(t,e)<0?h(v(t,e)):h(0))+","+(t.series*p.rangeBand()/d.length+p(g(t,e)))+")"})).select("rect").attr("height",p.rangeBand()/d.length).attr("width",(function(t,e){return Math.max(Math.abs(h(v(t,e))-h(0)),1)||0})),a=p.copy(),s=h.copy()})),F.renderEnd("multibarHorizontal immediate"),T}return T.dispatch=E,T.options=e.utils.optionsFunc.bind(T),T._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},x:{get:function(){return g},set:function(t){g=t}},y:{get:function(){return v},set:function(t){v=t}},yErr:{get:function(){return m},set:function(t){m=t}},xScale:{get:function(){return p},set:function(t){p=t}},yScale:{get:function(){return h},set:function(t){h=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return o},set:function(t){o=t}},forceY:{get:function(){return y},set:function(t){y=t}},stacked:{get:function(){return k},set:function(t){k=t}},showValues:{get:function(){return w},set:function(t){w=t}},disabled:{get:function(){return t},set:function(e){t=e}},id:{get:function(){return d},set:function(t){d=t}},valueFormat:{get:function(){return S},set:function(t){S=t}},valuePadding:{get:function(){return M},set:function(t){M=t}},groupSpacing:{get:function(){return C},set:function(t){C=t}},fillOpacity:{get:function(){return A},set:function(t){A=t}},margin:{get:function(){return l},set:function(t){l.top=void 0!==t.top?t.top:l.top,l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},duration:{get:function(){return D},set:function(t){D=t,F.reset(D)}},color:{get:function(){return b},set:function(t){b=e.utils.getColor(t)}},barColor:{get:function(){return x},set:function(t){x=t?e.utils.getColor(t):null}}}),e.utils.initOptions(T),T},e.models.multiBarHorizontalChart=function(){"use strict";var t,n,r=e.models.multiBarHorizontal(),i=e.models.axis(),o=e.models.axis(),a=e.models.legend().height(30),s=e.models.legend().height(30),l=e.models.tooltip(),u={top:30,right:20,bottom:50,left:60},c=null,d=null,f=null,p=e.utils.defaultColor(),h=!0,g="top",v={},m=!0,y="top",b=!0,x=!0,k=!1,w=e.utils.state(),M=null,C=null,A=d3.dispatch("stateChange","changeState","renderEnd"),S=function(){return h?180:0},D=250;w.stacked=!1,r.stacked(k),i.orient("left").tickPadding(5).showMaxMin(!1).tickFormat((function(t){return t})),o.orient("bottom").tickFormat(d3.format(",.1f")),l.duration(0).valueFormatter((function(t,e){return o.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),s.updateState(!1);var E=e.utils.renderWatch(A,D);function F(l){return E.reset(),E.models(r),b&&E.models(i),x&&E.models(o),l.each((function(l){var C=d3.select(this);e.utils.initSVG(C);var E,T=e.utils.availableWidth(d,C,u),W=e.utils.availableHeight(f,C,u);if(F.update=function(){C.transition().duration(D).call(F)},F.container=this,k=r.stacked(),w.setter(function(t){return function(e){void 0!==e.stacked&&(k=e.stacked),void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(l),F.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),stacked:k}}}(l)).update(),w.disabled=l.map((function(t){return!!t.disabled})),!M)for(E in M={},w)w[E]instanceof Array?M[E]=w[E].slice(0):M[E]=w[E];if(!(l&&l.length&&l.filter((function(t){return t.values.length})).length))return e.utils.noData(F,C),F;C.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale().clamp(!0);var N=C.selectAll("g.nv-wrap.nv-multiBarHorizontalChart").data([l]),O=N.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarHorizontalChart").append("g"),_=N.select("g");if(O.append("g").attr("class","nv-x nv-axis"),O.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),O.append("g").attr("class","nv-barsWrap"),O.append("g").attr("class","nv-legendWrap"),O.append("g").attr("class","nv-controlsWrap"),m?(a.width(T-S()),_.select(".nv-legendWrap").datum(l).call(a),"bottom"===y?(u.bottom=i.height()+a.height(),W=e.utils.availableHeight(f,C,u),_.select(".nv-legendWrap").attr("transform","translate("+S()+","+(W+i.height())+")")):"top"===y&&(c||a.height()===u.top||(u.top=a.height(),W=e.utils.availableHeight(f,C,u)),_.select(".nv-legendWrap").attr("transform","translate("+S()+","+-u.top+")"))):_.select(".nv-legendWrap").selectAll("*").remove(),h){var L=[{key:v.grouped||"Grouped",disabled:r.stacked()},{key:v.stacked||"Stacked",disabled:!r.stacked()}];s.width(S()).color(["#444","#444","#444"]),"bottom"===g?(u.bottom=i.height()+a.height(),W=e.utils.availableHeight(f,C,u),_.select(".nv-controlsWrap").datum(L).attr("transform","translate(0,"+(W+i.height())+")").call(s)):"top"===g&&_.select(".nv-controlsWrap").datum(L).attr("transform","translate(0,"+-u.top+")").call(s)}else _.select(".nv-controlsWrap").selectAll("*").remove();N.attr("transform","translate("+u.left+","+u.top+")"),r.disabled(l.map((function(t){return t.disabled}))).width(T).height(W).color(l.map((function(t,e){return t.color||p(t,e)})).filter((function(t,e){return!l[e].disabled}))),_.select(".nv-barsWrap").datum(l.filter((function(t){return!t.disabled}))).transition().call(r),b&&(i.scale(t)._ticks(e.utils.calcTicksY(W/24,l)).tickSize(-T,0),_.select(".nv-x.nv-axis").call(i),_.select(".nv-x.nv-axis").selectAll("g").selectAll("line, text")),x&&(o.scale(n)._ticks(e.utils.calcTicksX(T/100,l)).tickSize(-W,0),_.select(".nv-y.nv-axis").attr("transform","translate(0,"+W+")"),_.select(".nv-y.nv-axis").call(o)),_.select(".nv-zeroLine line").attr("x1",n(0)).attr("x2",n(0)).attr("y1",0).attr("y2",-W),a.dispatch.on("stateChange",(function(t){for(var e in t)w[e]=t[e];A.stateChange(w),F.update()})),s.dispatch.on("legendClick",(function(t,e){if(t.disabled){switch(L=L.map((function(t){return t.disabled=!0,t})),t.disabled=!1,t.key){case"Grouped":case v.grouped:r.stacked(!1);break;case"Stacked":case v.stacked:r.stacked(!0)}w.stacked=r.stacked(),A.stateChange(w),k=r.stacked(),F.update()}})),A.on("changeState",(function(t){void 0!==t.disabled&&(l.forEach((function(e,n){e.disabled=t.disabled[n]})),w.disabled=t.disabled),void 0!==t.stacked&&(r.stacked(t.stacked),w.stacked=t.stacked,k=t.stacked),F.update()}))})),E.renderEnd("multibar horizontal chart immediate"),F}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.value=F.x()(t.data),t.series={key:t.data.key,value:F.y()(t.data),color:t.color},l.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){l.hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){l()})),F.dispatch=A,F.multibar=r,F.legend=a,F.controls=s,F.xAxis=i,F.yAxis=o,F.state=w,F.tooltip=l,F.options=e.utils.optionsFunc.bind(F),F._options=Object.create({},{width:{get:function(){return d},set:function(t){d=t}},height:{get:function(){return f},set:function(t){f=t}},showLegend:{get:function(){return m},set:function(t){m=t}},legendPosition:{get:function(){return y},set:function(t){y=t}},controlsPosition:{get:function(){return g},set:function(t){g=t}},showControls:{get:function(){return h},set:function(t){h=t}},controlLabels:{get:function(){return v},set:function(t){v=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return M},set:function(t){M=t}},noData:{get:function(){return C},set:function(t){C=t}},margin:{get:function(){return u},set:function(t){void 0!==t.top&&(u.top=t.top,c=t.top),u.right=void 0!==t.right?t.right:u.right,u.bottom=void 0!==t.bottom?t.bottom:u.bottom,u.left=void 0!==t.left?t.left:u.left}},duration:{get:function(){return D},set:function(t){D=t,E.reset(D),r.duration(D),i.duration(D),o.duration(D)}},color:{get:function(){return p},set:function(t){p=e.utils.getColor(t),a.color(p)}},barColor:{get:function(){return r.barColor},set:function(t){r.barColor(t),a.color((function(t,e){return d3.rgb("#ccc").darker(1.5*e).toString()}))}}}),e.utils.inheritOptions(F,r),e.utils.initOptions(F),F},e.models.multiChart=function(){"use strict";var t,n,r={top:30,right:20,bottom:50,left:60},i=null,o=e.utils.defaultColor(),a=null,s=null,l=!0,u=null,c=function(t){return t.x},d=function(t){return t.y},f="linear",p=!0,h=e.interactiveGuideline(),g=!1,v=" (right axis)",m=250,y=d3.scale.linear(),b=d3.scale.linear(),x=d3.scale.linear(),k=e.models.line().yScale(b).duration(m),w=e.models.line().yScale(x).duration(m),M=e.models.scatter().yScale(b).duration(m),C=e.models.scatter().yScale(x).duration(m),A=e.models.multiBar().stacked(!1).yScale(b).duration(m),S=e.models.multiBar().stacked(!1).yScale(x).duration(m),D=e.models.stackedArea().yScale(b).duration(m),E=e.models.stackedArea().yScale(x).duration(m),F=e.models.axis().scale(y).orient("bottom").tickPadding(5).duration(m),T=e.models.axis().scale(b).orient("left").duration(m),W=e.models.axis().scale(x).orient("right").duration(m),N=e.models.legend().height(30),O=e.models.tooltip(),_=d3.dispatch(),L=[k,w,M,C,A,S,D,E];function P(u){return u.each((function(u){var p=d3.select(this);e.utils.initSVG(p),P.update=function(){p.transition().call(P)},P.container=this;var m=e.utils.availableWidth(a,p,r),_=e.utils.availableHeight(s,p,r),B=u.filter((function(t){return"line"==t.type&&1==t.yAxis})),I=u.filter((function(t){return"line"==t.type&&2==t.yAxis})),V=u.filter((function(t){return"scatter"==t.type&&1==t.yAxis})),j=u.filter((function(t){return"scatter"==t.type&&2==t.yAxis})),H=u.filter((function(t){return"bar"==t.type&&1==t.yAxis})),R=u.filter((function(t){return"bar"==t.type&&2==t.yAxis})),z=u.filter((function(t){return"area"==t.type&&1==t.yAxis})),q=u.filter((function(t){return"area"==t.type&&2==t.yAxis}));if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(P,p),P;p.selectAll(".nv-noData").remove();var G=u.filter((function(t){return!t.disabled&&1==t.yAxis})).map((function(t){return t.values.map((function(t,e){return{x:c(t),y:d(t)}}))})),Y=u.filter((function(t){return!t.disabled&&2==t.yAxis})).map((function(t){return t.values.map((function(t,e){return{x:c(t),y:d(t)}}))}));y.domain(d3.extent(d3.merge(G.concat(Y)),(function(t){return t.x}))).range([0,m]);var X=p.selectAll("g.wrap.multiChart").data([u]),$=X.enter().append("g").attr("class","wrap nvd3 multiChart").append("g");$.append("g").attr("class","nv-x nv-axis"),$.append("g").attr("class","nv-y1 nv-axis"),$.append("g").attr("class","nv-y2 nv-axis"),$.append("g").attr("class","stack1Wrap"),$.append("g").attr("class","stack2Wrap"),$.append("g").attr("class","bars1Wrap"),$.append("g").attr("class","bars2Wrap"),$.append("g").attr("class","scatters1Wrap"),$.append("g").attr("class","scatters2Wrap"),$.append("g").attr("class","lines1Wrap"),$.append("g").attr("class","lines2Wrap"),$.append("g").attr("class","legendWrap"),$.append("g").attr("class","nv-interactive");var Q=X.select("g"),Z=u.map((function(t,e){return u[e].color||o(t,e)}));if(l){var U=N.align()?m/2:m,J=N.align()?U:0;N.width(U),N.color(Z),Q.select(".legendWrap").datum(u.map((function(t){return t.originalKey=void 0===t.originalKey?t.key:t.originalKey,t.key=t.originalKey+(1==t.yAxis?"":v),t}))).call(N),i||N.height()===r.top||(r.top=N.height(),_=e.utils.availableHeight(s,p,r)),Q.select(".legendWrap").attr("transform","translate("+J+","+-r.top+")")}else Q.select(".legendWrap").selectAll("*").remove();k.width(m).height(_).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"line"==u[e].type}))),w.width(m).height(_).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"line"==u[e].type}))),M.width(m).height(_).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"scatter"==u[e].type}))),C.width(m).height(_).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"scatter"==u[e].type}))),A.width(m).height(_).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"bar"==u[e].type}))),S.width(m).height(_).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"bar"==u[e].type}))),D.width(m).height(_).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"area"==u[e].type}))),E.width(m).height(_).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"area"==u[e].type}))),Q.attr("transform","translate("+r.left+","+r.top+")");var K=Q.select(".lines1Wrap").datum(B.filter((function(t){return!t.disabled}))),tt=Q.select(".scatters1Wrap").datum(V.filter((function(t){return!t.disabled}))),et=Q.select(".bars1Wrap").datum(H.filter((function(t){return!t.disabled}))),nt=Q.select(".stack1Wrap").datum(z.filter((function(t){return!t.disabled}))),rt=Q.select(".lines2Wrap").datum(I.filter((function(t){return!t.disabled}))),it=Q.select(".scatters2Wrap").datum(j.filter((function(t){return!t.disabled}))),ot=Q.select(".bars2Wrap").datum(R.filter((function(t){return!t.disabled}))),at=Q.select(".stack2Wrap").datum(q.filter((function(t){return!t.disabled}))),st=[];A.stacked()&&H.length&&(st=H.filter((function(t){return!t.disabled})).map((function(t){return t.values}))).length>0&&(st=st.reduce((function(t,e){return t.map((function(t,n){return{x:t.x,y:t.y+e[n].y}}))}))),H.length&&st.push({x:0,y:0});var lt=[];function ut(t){var e=2===t.series.yAxis?W:T;t.value=t.point.x,t.series={value:t.point.y,color:t.point.color,key:t.series.key},O.duration(0).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function ct(t){var e=2===t.series.yAxis?W:T;t.value=t.point.x,t.series={value:t.point.y,color:t.point.color,key:t.series.key},O.duration(100).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function dt(t){var e=2===t.series.yAxis?W:T;t.point.x=D.x()(t.point),t.point.y=D.y()(t.point),O.duration(0).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function ft(t){var e=2===t.series.yAxis?W:T;t.value=A.x()(t.data),t.series={value:A.y()(t.data),color:t.color,key:t.data.key},O.duration(0).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function pt(){for(var t=0,e=L.length;t<e;t++){var n=L[t];try{n.clearHighlights()}catch(t){}}}S.stacked()&&R.length&&(lt=R.filter((function(t){return!t.disabled})).map((function(t){return t.values}))).length>0&&(lt=lt.reduce((function(t,e){return t.map((function(t,n){return{x:t.x,y:t.y+e[n].y}}))}))),R.length&&lt.push({x:0,y:0}),b.domain(t||d3.extent(d3.merge(G).concat(st),(function(t){return t.y}))).range([0,_]),x.domain(n||d3.extent(d3.merge(Y).concat(lt),(function(t){return t.y}))).range([0,_]),k.yDomain(b.domain()),M.yDomain(b.domain()),A.yDomain(b.domain()),D.yDomain(b.domain()),w.yDomain(x.domain()),C.yDomain(x.domain()),S.yDomain(x.domain()),E.yDomain(x.domain()),z.length&&d3.transition(nt).call(D),q.length&&d3.transition(at).call(E),H.length&&d3.transition(et).call(A),R.length&&d3.transition(ot).call(S),B.length&&d3.transition(K).call(k),I.length&&d3.transition(rt).call(w),V.length&&d3.transition(tt).call(M),j.length&&d3.transition(it).call(C),F._ticks(e.utils.calcTicksX(m/100,u)).tickSize(-_,0),Q.select(".nv-x.nv-axis").attr("transform","translate(0,"+_+")"),d3.transition(Q.select(".nv-x.nv-axis")).call(F),T._ticks(e.utils.calcTicksY(_/36,u)).tickSize(-m,0),d3.transition(Q.select(".nv-y1.nv-axis")).call(T),W._ticks(e.utils.calcTicksY(_/36,u)).tickSize(-m,0),d3.transition(Q.select(".nv-y2.nv-axis")).call(W),Q.select(".nv-y1.nv-axis").classed("nv-disabled",!G.length).attr("transform","translate("+y.range()[0]+",0)"),Q.select(".nv-y2.nv-axis").classed("nv-disabled",!Y.length).attr("transform","translate("+y.range()[1]+",0)"),N.dispatch.on("stateChange",(function(t){P.update()})),g&&(h.width(m).height(_).margin({left:r.left,top:r.top}).svgContainer(p).xScale(y),X.select(".nv-interactive").call(h)),g?(h.dispatch.on("elementMousemove",(function(t){pt();var n,r,i,a=[];u.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(s,l){var u=y.domain(),c=s.values.filter((function(t,e){return P.x()(t,e)>=u[0]&&P.x()(t,e)<=u[1]})),d=c[r=e.interactiveBisect(c,t.pointXValue,P.x())],f=P.y()(d,r);null!==f&&function(t,e,n){for(var r=0,i=L.length;r<i;r++){var o=L[r];try{o.highlightPoint(t,e,n)}catch(t){}}}(l,r,!0),void 0!==d&&(void 0===n&&(n=d),void 0===i&&(i=y(P.x()(d,r))),a.push({key:s.key,value:f,color:o(s,s.seriesIndex),data:d,yAxis:2==s.yAxis?W:T}))})),h.tooltip.headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter(h.tooltip.valueFormatter()||function(t,e){var n=a[e].yAxis;return null==t?"N/A":n.tickFormat()(t)}).data({value:P.x()(n,r),index:r,series:a})(),h.renderGuideLine(i)})),h.dispatch.on("elementMouseout",(function(t){pt()}))):(k.dispatch.on("elementMouseover.tooltip",ut),w.dispatch.on("elementMouseover.tooltip",ut),k.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),w.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),M.dispatch.on("elementMouseover.tooltip",ct),C.dispatch.on("elementMouseover.tooltip",ct),M.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),C.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),D.dispatch.on("elementMouseover.tooltip",dt),E.dispatch.on("elementMouseover.tooltip",dt),D.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),E.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),A.dispatch.on("elementMouseover.tooltip",ft),S.dispatch.on("elementMouseover.tooltip",ft),A.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),S.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),A.dispatch.on("elementMousemove.tooltip",(function(t){O()})),S.dispatch.on("elementMousemove.tooltip",(function(t){O()})))})),P}return P.dispatch=_,P.legend=N,P.lines1=k,P.lines2=w,P.scatters1=M,P.scatters2=C,P.bars1=A,P.bars2=S,P.stack1=D,P.stack2=E,P.xAxis=F,P.yAxis1=T,P.yAxis2=W,P.tooltip=O,P.interactiveLayer=h,P.options=e.utils.optionsFunc.bind(P),P._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return s},set:function(t){s=t}},showLegend:{get:function(){return l},set:function(t){l=t}},yDomain1:{get:function(){return t},set:function(e){t=e}},yDomain2:{get:function(){return n},set:function(t){n=t}},noData:{get:function(){return u},set:function(t){u=t}},interpolate:{get:function(){return f},set:function(t){f=t}},legendRightAxisHint:{get:function(){return v},set:function(t){v=t}},margin:{get:function(){return r},set:function(t){void 0!==t.top&&(r.top=t.top,i=t.top),r.right=void 0!==t.right?t.right:r.right,r.bottom=void 0!==t.bottom?t.bottom:r.bottom,r.left=void 0!==t.left?t.left:r.left}},color:{get:function(){return o},set:function(t){o=e.utils.getColor(t)}},x:{get:function(){return c},set:function(t){c=t,k.x(t),w.x(t),M.x(t),C.x(t),A.x(t),S.x(t),D.x(t),E.x(t)}},y:{get:function(){return d},set:function(t){d=t,k.y(t),w.y(t),M.y(t),C.y(t),D.y(t),E.y(t),A.y(t),S.y(t)}},useVoronoi:{get:function(){return p},set:function(t){p=t,k.useVoronoi(t),w.useVoronoi(t),D.useVoronoi(t),E.useVoronoi(t)}},useInteractiveGuideline:{get:function(){return g},set:function(t){(g=t)&&(k.interactive(!1),k.useVoronoi(!1),w.interactive(!1),w.useVoronoi(!1),D.interactive(!1),D.useVoronoi(!1),E.interactive(!1),E.useVoronoi(!1),M.interactive(!1),C.interactive(!1))}},duration:{get:function(){return m},set:function(t){m=t,[k,w,D,E,M,C,F,T,W].forEach((function(t){t.duration(m)}))}}}),e.utils.initOptions(P),P},e.models.ohlcBar=function(){"use strict";var t,n,r,i,o={top:0,right:0,bottom:0,left:0},a=null,s=null,l=Math.floor(1e4*Math.random()),u=null,c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=function(t){return t.open},g=function(t){return t.close},v=function(t){return t.high},m=function(t){return t.low},y=[],b=[],x=!1,k=!0,w=e.utils.defaultColor(),M=!1,C=d3.dispatch("stateChange","changeState","renderEnd","chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove");function A(M){return M.each((function(M){u=d3.select(this);var A=e.utils.availableWidth(a,u,o),S=e.utils.availableHeight(s,u,o);e.utils.initSVG(u);var D=A/M[0].values.length*.9;c.domain(t||d3.extent(M[0].values.map(f).concat(y))),x?c.range(r||[.5*A/M[0].values.length,A*(M[0].values.length-.5)/M[0].values.length]):c.range(r||[5+D/2,A-D/2-5]),d.domain(n||[d3.min(M[0].values.map(m).concat(b)),d3.max(M[0].values.map(v).concat(b))]).range(i||[S,0]),c.domain()[0]===c.domain()[1]&&(c.domain()[0]?c.domain([c.domain()[0]-.01*c.domain()[0],c.domain()[1]+.01*c.domain()[1]]):c.domain([-1,1])),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]+.01*d.domain()[0],d.domain()[1]-.01*d.domain()[1]]):d.domain([-1,1]));var E=d3.select(this).selectAll("g.nv-wrap.nv-ohlcBar").data([M[0].values]),F=E.enter().append("g").attr("class","nvd3 nv-wrap nv-ohlcBar"),T=F.append("defs"),W=F.append("g"),N=E.select("g");W.append("g").attr("class","nv-ticks"),E.attr("transform","translate("+o.left+","+o.top+")"),u.on("click",(function(t,e){C.chartClick({data:t,index:e,pos:d3.event,id:l})})),T.append("clipPath").attr("id","nv-chart-clip-path-"+l).append("rect"),E.select("#nv-chart-clip-path-"+l+" rect").attr("width",A).attr("height",S),N.attr("clip-path",k?"url(#nv-chart-clip-path-"+l+")":"");var O=E.select(".nv-ticks").selectAll(".nv-tick").data((function(t){return t}));O.exit().remove(),O.enter().append("path").attr("class",(function(t,e,n){return(h(t,e)>g(t,e)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+e})).attr("d",(function(t,e){return"m0,0l0,"+(d(h(t,e))-d(v(t,e)))+"l"+-D/2+",0l"+D/2+",0l0,"+(d(m(t,e))-d(h(t,e)))+"l0,"+(d(g(t,e))-d(m(t,e)))+"l"+D/2+",0l"+-D/2+",0z"})).attr("transform",(function(t,e){return"translate("+c(f(t,e))+","+d(v(t,e))+")"})).attr("fill",(function(t,e){return w[0]})).attr("stroke",(function(t,e){return w[0]})).attr("x",0).attr("y",(function(t,e){return d(Math.max(0,p(t,e)))})).attr("height",(function(t,e){return Math.abs(d(p(t,e))-d(0))})),O.attr("class",(function(t,e,n){return(h(t,e)>g(t,e)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+e})),d3.transition(O).attr("transform",(function(t,e){return"translate("+c(f(t,e))+","+d(v(t,e))+")"})).attr("d",(function(t,e){var n=A/M[0].values.length*.9;return"m0,0l0,"+(d(h(t,e))-d(v(t,e)))+"l"+-n/2+",0l"+n/2+",0l0,"+(d(m(t,e))-d(h(t,e)))+"l0,"+(d(g(t,e))-d(m(t,e)))+"l"+n/2+",0l"+-n/2+",0z"}))})),A}return A.highlightPoint=function(t,e){A.clearHighlights(),u.select(".nv-ohlcBar .nv-tick-0-"+t).classed("hover",e)},A.clearHighlights=function(){u.select(".nv-ohlcBar .nv-tick.hover").classed("hover",!1)},A.dispatch=C,A.options=e.utils.optionsFunc.bind(A),A._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return s},set:function(t){s=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return n},set:function(t){n=t}},xRange:{get:function(){return r},set:function(t){r=t}},yRange:{get:function(){return i},set:function(t){i=t}},forceX:{get:function(){return y},set:function(t){y=t}},forceY:{get:function(){return b},set:function(t){b=t}},padData:{get:function(){return x},set:function(t){x=t}},clipEdge:{get:function(){return k},set:function(t){k=t}},id:{get:function(){return l},set:function(t){l=t}},interactive:{get:function(){return M},set:function(t){M=t}},x:{get:function(){return f},set:function(t){f=t}},y:{get:function(){return p},set:function(t){p=t}},open:{get:function(){return h()},set:function(t){h=t}},close:{get:function(){return g()},set:function(t){g=t}},high:{get:function(){return v},set:function(t){v=t}},low:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return o},set:function(t){o.top=null!=t.top?t.top:o.top,o.right=null!=t.right?t.right:o.right,o.bottom=null!=t.bottom?t.bottom:o.bottom,o.left=null!=t.left?t.left:o.left}},color:{get:function(){return w},set:function(t){w=e.utils.getColor(t)}}}),e.utils.initOptions(A),A},e.models.parallelCoordinates=function(){"use strict";var t,n,r,i={top:30,right:0,bottom:10,left:0},o=null,a=null,s=null,l=null,u=d3.scale.ordinal(),c={},d="undefined values",f=[],p=[],h=[],g=!0,v=e.utils.defaultColor(),m=[],y=[],b=[],x=[],k=1,w=d3.svg.line(),M=d3.svg.axis(),C=d3.dispatch("brushstart","brush","brushEnd","dimensionsOrder","stateChange","elementClick","elementMouseover","elementMouseout","elementMousemove","renderEnd","activeChanged"),A=e.utils.renderWatch(C);function S(D){return A.reset(),D.each((function(A){var S=d3.select(this);if(s=e.utils.availableWidth(o,S,i),l=e.utils.availableHeight(a,S,i),e.utils.initSVG(S),void 0===A[0].values){var D=[];A.forEach((function(t){var e={};Object.keys(t).forEach((function(n){"name"!==n&&(e[n]=t[n])})),D.push({key:t.name,values:e})})),A=D}var E=A.map((function(t){return t.values}));0===y.length&&(y=A),h=f.sort((function(t,e){return t.currentPosition-e.currentPosition})).map((function(t){return t.key})),p=f.filter((function(t){return!t.disabled})),u.rangePoints([0,s],1).domain(p.map((function(t){return t.key})));var F={},T=!1,W=[];h.forEach((function(t){var e=d3.extent(E,(function(e){return+e[t]})),n=e[0],r=e[1],i=!1;(isNaN(n)||isNaN(r))&&(i=!0,n=0,r=0),n===r&&(n-=1,r+=1);var o=m.filter((function(e){return e.dimension==t}));0!==o.length&&(i?(n=c[t].domain()[0],r=c[t].domain()[1]):!o[0].hasOnlyNaN&&g?(n=n>o[0].extent[0]?o[0].extent[0]:n,r=r<o[0].extent[1]?o[0].extent[1]:r):o[0].hasNaN&&(r=r<o[0].extent[1]?o[0].extent[1]:r,F[t]=c[t].domain()[1],T=!0)),c[t]=d3.scale.linear().domain([n,r]).range([.9*(l-12),0]),x=[],c[t].brush=d3.svg.brush().y(c[t]).on("brushstart",Y).on("brush",X).on("brushend",$)}));var N=S.selectAll("g.nv-wrap.nv-parallelCoordinates").data([A]),O=N.enter().append("g").attr("class","nvd3 nv-wrap nv-parallelCoordinates").append("g"),_=N.select("g");O.append("g").attr("class","nv-parallelCoordinates background"),O.append("g").attr("class","nv-parallelCoordinates foreground"),O.append("g").attr("class","nv-parallelCoordinates missingValuesline"),N.attr("transform","translate("+i.left+","+i.top+")"),w.interpolate("cardinal").tension(k),M.orient("left");var L,P,B=d3.behavior.drag().on("dragstart",(function(t){b[t.key]=this.parentNode.__origin__=u(t.key),n.attr("visibility","hidden")})).on("drag",(function(e){b[e.key]=Math.min(s,Math.max(0,this.parentNode.__origin__+=d3.event.x)),t.attr("d",q),p.sort((function(t,e){return Z(t.key)-Z(e.key)})),p.forEach((function(t,e){return t.currentPosition=e})),u.domain(p.map((function(t){return t.key}))),r.attr("transform",(function(t){return"translate("+Z(t.key)+")"}))})).on("dragend",(function(e,r){delete this.parentNode.__origin__,delete b[e.key],d3.select(this.parentNode).attr("transform","translate("+u(e.key)+")"),t.attr("d",q),n.attr("d",q).attr("visibility",null),C.dimensionsOrder(p)})),I=u.range()[1]-u.range()[0];if(I=isNaN(I)?u.range()[0]:I,!isNaN(I)){var V=[0+I/2,l-12,s-I/2,l-12];(L=N.select(".missingValuesline").selectAll("line").data([V])).enter().append("line"),L.exit().remove(),L.attr("x1",(function(t){return t[0]})).attr("y1",(function(t){return t[1]})).attr("x2",(function(t){return t[2]})).attr("y2",(function(t){return t[3]})),(P=N.select(".missingValuesline").selectAll("text").data([d])).append("text").data([d]),P.enter().append("text"),P.exit().remove(),P.attr("y",l).attr("x",s-92-I/2).text((function(t){return t}))}(n=N.select(".background").selectAll("path").data(A)).enter().append("path"),n.exit().remove(),n.attr("d",q),(t=N.select(".foreground").selectAll("path").data(A)).enter().append("path"),t.exit().remove(),t.attr("d",q).style("stroke-width",(function(t,e){return isNaN(t.strokeWidth)&&(t.strokeWidth=1),t.strokeWidth})).attr("stroke",(function(t,e){return t.color||v(t,e)})),t.on("mouseover",(function(t,e){d3.select(this).classed("hover",!0).style("stroke-width",t.strokeWidth+2+"px").style("stroke-opacity",1),C.elementMouseover({label:t.name,color:t.color||v(t,e),values:t.values,dimensions:p})})),t.on("mouseout",(function(t,e){d3.select(this).classed("hover",!1).style("stroke-width",t.strokeWidth+"px").style("stroke-opacity",.7),C.elementMouseout({label:t.name,index:e})})),t.on("mousemove",(function(t,e){C.elementMousemove()})),t.on("click",(function(t){C.elementClick({id:t.id})}));var j=(r=_.selectAll(".dimension").data(p)).enter().append("g").attr("class","nv-parallelCoordinates dimension");r.attr("transform",(function(t){return"translate("+u(t.key)+",0)"})),j.append("g").attr("class","nv-axis"),j.append("text").attr("class","nv-label").style("cursor","move").attr("dy","-1em").attr("text-anchor","middle").on("mouseover",(function(t,e){C.elementMouseover({label:t.tooltip||t.key,color:t.color})})).on("mouseout",(function(t,e){C.elementMouseout({label:t.tooltip})})).on("mousemove",(function(t,e){C.elementMousemove()})).call(B),j.append("g").attr("class","nv-brushBackground"),r.exit().remove(),r.select(".nv-label").text((function(t){return t.key})),G(g);var H=h.filter((function(t){return!c[t].brush.empty()})),R=H.map((function(t){return c[t].brush.extent()})),z=y.slice(0);function q(t){return w(p.map((function(e){if(isNaN(t.values[e.key])||isNaN(parseFloat(t.values[e.key]))||T){var n=c[e.key].domain(),r=c[e.key].range(),i=n[0]-(n[1]-n[0])/9;if(x.indexOf(e.key)<0){var o=d3.scale.linear().domain([i,n[1]]).range([l-12,r[1]]);c[e.key].brush.y(o),x.push(e.key)}if(isNaN(t.values[e.key])||isNaN(parseFloat(t.values[e.key])))return[u(e.key),c[e.key](i)]}return void 0!==L&&(x.length>0||T?(L.style("display","inline"),P.style("display","inline")):(L.style("display","none"),P.style("display","none"))),[u(e.key),c[e.key](t.values[e.key])]})))}function G(t){m.forEach((function(e){var n=c[e.dimension].brush.y().domain();e.hasOnlyNaN&&(e.extent[1]=(c[e.dimension].domain()[1]-n[0])*(e.extent[1]-e.extent[0])/(F[e.dimension]-e.extent[0])+n[0]),e.hasNaN&&(e.extent[0]=n[0]),t&&c[e.dimension].brush.extent(e.extent)})),r.select(".nv-brushBackground").each((function(t){d3.select(this).call(c[t.key].brush)})).selectAll("rect").attr("x",-8).attr("width",16),Q()}function Y(){!1===g&&(g=!0,G(!0))}function X(){H=h.filter((function(t){return!c[t].brush.empty()})),R=H.map((function(t){return c[t].brush.extent()})),m=[],H.forEach((function(t,e){m[e]={dimension:t,extent:R[e],hasNaN:!1,hasOnlyNaN:!1}})),y=[],t.style("display",(function(t){var e=H.every((function(e,n){return!(!isNaN(t.values[e])&&!isNaN(parseFloat(t.values[e]))||R[n][0]!=c[e].brush.y().domain()[0])||R[n][0]<=t.values[e]&&t.values[e]<=R[n][1]&&!isNaN(parseFloat(t.values[e]))}));return e&&y.push(t),e?null:"none"})),Q(),C.brush({filters:m,active:y})}function $(){var t=H.length>0;m.forEach((function(t){t.extent[0]===c[t.dimension].brush.y().domain()[0]&&x.indexOf(t.dimension)>=0&&(t.hasNaN=!0),t.extent[1]<c[t.dimension].domain()[0]&&(t.hasOnlyNaN=!0)})),C.brushEnd(y,t)}function Q(){r.select(".nv-axis").each((function(t,e){var n=m.filter((function(e){return e.dimension==t.key}));W[t.key]=c[t.key].domain(),0!=n.length&&g&&(W[t.key]=[],n[0].extent[1]>c[t.key].domain()[0]&&(W[t.key]=[n[0].extent[1]]),n[0].extent[0]>=c[t.key].domain()[0]&&W[t.key].push(n[0].extent[0])),d3.select(this).call(M.scale(c[t.key]).tickFormat(t.format).tickValues(W[t.key]))}))}function Z(t){var e=b[t];return null==e?u(t):e}y=[],t.style("display",(function(t){var e=H.every((function(e,n){return!(!isNaN(t.values[e])&&!isNaN(parseFloat(t.values[e]))||R[n][0]!=c[e].brush.y().domain()[0])||R[n][0]<=t.values[e]&&t.values[e]<=R[n][1]&&!isNaN(parseFloat(t.values[e]))}));return e&&y.push(t),e?null:"none"})),(m.length>0||!e.utils.arrayEquals(y,z))&&C.activeChanged(y)})),S}return S.dispatch=C,S.options=e.utils.optionsFunc.bind(S),S._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return a},set:function(t){a=t}},dimensionData:{get:function(){return f},set:function(t){f=t}},displayBrush:{get:function(){return g},set:function(t){g=t}},filters:{get:function(){return m},set:function(t){m=t}},active:{get:function(){return y},set:function(t){y=t}},lineTension:{get:function(){return k},set:function(t){k=t}},undefinedValuesLabel:{get:function(){return d},set:function(t){d=t}},dimensions:{get:function(){return f.map((function(t){return t.key}))},set:function(t){e.deprecated("dimensions","use dimensionData instead"),0===f.length?t.forEach((function(t){f.push({key:t})})):t.forEach((function(t,e){f[e].key=t}))}},dimensionNames:{get:function(){return f.map((function(t){return t.key}))},set:function(t){e.deprecated("dimensionNames","use dimensionData instead"),h=[],0===f.length?t.forEach((function(t){f.push({key:t})})):t.forEach((function(t,e){f[e].key=t}))}},dimensionFormats:{get:function(){return f.map((function(t){return t.format}))},set:function(t){e.deprecated("dimensionFormats","use dimensionData instead"),0===f.length?t.forEach((function(t){f.push({format:t})})):t.forEach((function(t,e){f[e].format=t}))}},margin:{get:function(){return i},set:function(t){i.top=void 0!==t.top?t.top:i.top,i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}},color:{get:function(){return v},set:function(t){v=e.utils.getColor(t)}}}),e.utils.initOptions(S),S},e.models.parallelCoordinatesChart=function(){"use strict";var t=e.models.parallelCoordinates(),n=e.models.legend(),r=e.models.tooltip(),i=(e.models.tooltip(),{top:0,right:0,bottom:0,left:0}),o=null,a=null,s=null,l=!0,u=e.utils.defaultColor(),c=e.utils.state(),d=[],f=!0,p=null,h=null,g="undefined",v=d3.dispatch("dimensionsOrder","brushEnd","stateChange","changeState","renderEnd"),m=e.utils.renderWatch(v);function y(r){return m.reset(),m.models(t),r.each((function(r){var u=d3.select(this);e.utils.initSVG(u);var h,g=e.utils.availableWidth(a,u,i),m=e.utils.availableHeight(s,u,i);if(y.update=function(){u.call(y)},y.container=this,c.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(d),y.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(d)).update(),c.disabled=d.map((function(t){return!!t.disabled})),(d=d.map((function(t){return t.disabled=!!t.disabled,t}))).forEach((function(t,e){t.originalPosition=isNaN(t.originalPosition)?e:t.originalPosition,t.currentPosition=isNaN(t.currentPosition)?e:t.currentPosition})),!p)for(h in p={},c)c[h]instanceof Array?p[h]=c[h].slice(0):p[h]=c[h];if(!r||!r.length)return e.utils.noData(y,u),y;u.selectAll(".nv-noData").remove();var b=u.selectAll("g.nv-wrap.nv-parallelCoordinatesChart").data([r]),x=b.enter().append("g").attr("class","nvd3 nv-wrap nv-parallelCoordinatesChart").append("g"),k=b.select("g");x.append("g").attr("class","nv-parallelCoordinatesWrap"),x.append("g").attr("class","nv-legendWrap"),k.select("rect").attr("width",g).attr("height",m>0?m:0),l?(n.width(g).color((function(t){return"rgb(188,190,192)"})),k.select(".nv-legendWrap").datum(d.sort((function(t,e){return t.originalPosition-e.originalPosition}))).call(n),o||n.height()===i.top||(i.top=n.height(),m=e.utils.availableHeight(s,u,i)),b.select(".nv-legendWrap").attr("transform","translate( 0 ,"+-i.top+")")):k.select(".nv-legendWrap").selectAll("*").remove(),b.attr("transform","translate("+i.left+","+i.top+")"),t.width(g).height(m).dimensionData(d).displayBrush(f),k.select(".nv-parallelCoordinatesWrap ").datum(r).transition().call(t),t.dispatch.on("brushEnd",(function(t,e){e?(f=!0,v.brushEnd(t)):f=!1})),n.dispatch.on("stateChange",(function(t){for(var e in t)c[e]=t[e];v.stateChange(c),y.update()})),t.dispatch.on("dimensionsOrder",(function(t){d.sort((function(t,e){return t.currentPosition-e.currentPosition}));var e=!1;d.forEach((function(t,n){t.currentPosition=n,t.currentPosition!==t.originalPosition&&(e=!0)})),v.dimensionsOrder(d,e)})),v.on("changeState",(function(t){void 0!==t.disabled&&(d.forEach((function(e,n){e.disabled=t.disabled[n]})),c.disabled=t.disabled),y.update()}))})),m.renderEnd("parraleleCoordinateChart immediate"),y}return r.contentGenerator((function(t){var e='<table><thead><tr><td class="legend-color-guide"><div style="background-color:'+t.color+'"></div></td><td><strong>'+t.key+"</strong></td></tr></thead>";return 0!==t.series.length&&(e+='<tbody><tr><td height ="10px"></td></tr>',t.series.forEach((function(t){e=e+'<tr><td class="legend-color-guide"><div style="background-color:'+t.color+'"></div></td><td class="key">'+t.key+'</td><td class="value">'+t.value+"</td></tr>"})),e+="</tbody>"),e+="</table>"})),t.dispatch.on("elementMouseover.tooltip",(function(t){var e={key:t.label,color:t.color,series:[]};t.values&&(Object.keys(t.values).forEach((function(n){var r,i=t.dimensions.filter((function(t){return t.key===n}))[0];i&&(r=isNaN(t.values[n])||isNaN(parseFloat(t.values[n]))?g:i.format(t.values[n]),e.series.push({idx:i.currentPosition,key:n,value:r,color:i.color}))})),e.series.sort((function(t,e){return t.idx-e.idx}))),r.data(e).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){r.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(){r()})),y.dispatch=v,y.parallelCoordinates=t,y.legend=n,y.tooltip=r,y.options=e.utils.optionsFunc.bind(y),y._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return s},set:function(t){s=t}},showLegend:{get:function(){return l},set:function(t){l=t}},defaultState:{get:function(){return p},set:function(t){p=t}},dimensionData:{get:function(){return d},set:function(t){d=t}},displayBrush:{get:function(){return f},set:function(t){f=t}},noData:{get:function(){return h},set:function(t){h=t}},nanValue:{get:function(){return g},set:function(t){g=t}},margin:{get:function(){return i},set:function(t){void 0!==t.top&&(i.top=t.top,o=t.top),i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}},color:{get:function(){return u},set:function(r){u=e.utils.getColor(r),n.color(u),t.color(u)}}}),e.utils.inheritOptions(y,t),e.utils.initOptions(y),y},e.models.pie=function(){"use strict";var t={top:0,right:0,bottom:0,left:0},n=500,r=500,i=function(t){return t.x},o=function(t){return t.y},a=Math.floor(1e4*Math.random()),s=null,l=e.utils.defaultColor(),u=d3.format(",.2f"),c=!0,d=!1,f="key",p=.02,h=!1,g=!1,v=!1,m=!0,y=0,b=!1,x=!1,k=!1,w=!1,M=0,C=.5,A=250,S=[],D=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),E=[],F=[],T=e.utils.renderWatch(D);function W(N){return T.reset(),N.each((function(W){var N=n-t.left-t.right,O=r-t.top-t.bottom,_=Math.min(N,O)/2,L=[],P=[];if(s=d3.select(this),0===S.length)for(var B=_-_/10,I=C*_,V=0;V<W[0].length;V++)L.push(B),P.push(I);else m?(L=S.map((function(t){return(t.outer-t.outer/10)*_})),P=S.map((function(t){return(t.inner-t.inner/10)*_})),C=d3.min(S.map((function(t){return t.inner-t.inner/10})))):(L=S.map((function(t){return t.outer*_})),P=S.map((function(t){return t.inner*_})),C=d3.min(S.map((function(t){return t.inner}))));e.utils.initSVG(s);var j=s.selectAll(".nv-wrap.nv-pie").data(W),H=j.enter().append("g").attr("class","nvd3 nv-wrap nv-pie nv-chart-"+a).append("g"),R=j.select("g"),z=H.append("g").attr("class","nv-pie");for(H.append("g").attr("class","nv-pieLabels"),j.attr("transform","translate("+t.left+","+t.top+")"),R.select(".nv-pie").attr("transform","translate("+N/2+","+O/2+")"),R.select(".nv-pieLabels").attr("transform","translate("+N/2+","+O/2+")"),s.on("click",(function(t,e){D.chartClick({data:t,index:e,pos:d3.event,id:a})})),E=[],F=[],V=0;V<W[0].length;V++){var q=d3.svg.arc().outerRadius(L[V]),G=d3.svg.arc().outerRadius(L[V]+5);!1!==x&&(q.startAngle(x),G.startAngle(x)),!1!==w&&(q.endAngle(w),G.endAngle(w)),g&&(q.innerRadius(P[V]),G.innerRadius(P[V])),q.cornerRadius&&M&&(q.cornerRadius(M),G.cornerRadius(M)),E.push(q),F.push(G)}var Y=d3.layout.pie().sort(null).value((function(t){return t.disabled?0:o(t)}));Y.padAngle&&k&&Y.padAngle(k),g&&v&&(z.append("text").attr("class","nv-pie-title"),j.select(".nv-pie-title").style("text-anchor","middle").text((function(t){return v})).style("font-size",Math.min(N,O)*C*2/(v.length+2)+"px").attr("dy","0.35em").attr("transform",(function(t,e){return"translate(0, "+y+")"})));var X=j.select(".nv-pie").selectAll(".nv-slice").data(Y),$=j.select(".nv-pieLabels").selectAll(".nv-label").data(Y);X.exit().remove(),$.exit().remove();var Q=X.enter().append("g");if(Q.attr("class","nv-slice"),Q.on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),m&&d3.select(this).select("path").transition().duration(70).attr("d",F[e]),D.elementMouseover({data:t.data,index:e,color:d3.select(this).style("fill"),percent:(t.endAngle-t.startAngle)/(2*Math.PI)})})),Q.on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),m&&d3.select(this).select("path").transition().duration(50).attr("d",E[e]),D.elementMouseout({data:t.data,index:e})})),Q.on("mousemove",(function(t,e){D.elementMousemove({data:t.data,index:e})})),Q.on("click",(function(t,e){D.elementClick({data:t.data,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this})})),Q.on("dblclick",(function(t,e){D.elementDblClick({data:t.data,index:e,color:d3.select(this).style("fill")})})),X.attr("fill",(function(t,e){return l(t.data,e)})),X.attr("stroke",(function(t,e){return l(t.data,e)})),Q.append("path").each((function(t){this._current=t})),X.select("path").transition().duration(A).attr("d",(function(t,e){return E[e](t)})).attrTween("d",(function(t,e){t.endAngle=isNaN(t.endAngle)?0:t.endAngle,t.startAngle=isNaN(t.startAngle)?0:t.startAngle,g||(t.innerRadius=0);var n=d3.interpolate(this._current,t);return this._current=n(0),function(t){return E[e](n(t))}})),c){var Z=[];for(V=0;V<W[0].length;V++)Z.push(E[V]),d?g&&(Z[V]=d3.svg.arc().outerRadius(E[V].outerRadius()),!1!==x&&Z[V].startAngle(x),!1!==w&&Z[V].endAngle(w)):g||Z[V].innerRadius(0);$.enter().append("g").classed("nv-label",!0).each((function(t,e){var n=d3.select(this);n.attr("transform",(function(t,e){if(b){t.outerRadius=L[e]+10,t.innerRadius=L[e]+15;var n=(t.startAngle+t.endAngle)/2*(180/Math.PI);return(t.startAngle+t.endAngle)/2<Math.PI?n-=90:n+=90,"translate("+Z[e].centroid(t)+") rotate("+n+")"}return t.outerRadius=_+10,t.innerRadius=_+15,"translate("+Z[e].centroid(t)+")"})),n.append("rect").style("stroke","#fff").style("fill","#fff").attr("rx",3).attr("ry",3),n.append("text").style("text-anchor",b?(t.startAngle+t.endAngle)/2<Math.PI?"start":"end":"middle").style("fill","#000")}));var U={},J=function(t){return 140*Math.floor(t[0]/140)+","+14*Math.floor(t[1]/14)},K=function(t){return(t.endAngle-t.startAngle)/(2*Math.PI)};$.watchTransition(T,"pie labels").attr("transform",(function(t,e){if(b){t.outerRadius=L[e]+10,t.innerRadius=L[e]+15;var n=(t.startAngle+t.endAngle)/2*(180/Math.PI);return(t.startAngle+t.endAngle)/2<Math.PI?n-=90:n+=90,"translate("+Z[e].centroid(t)+") rotate("+n+")"}t.outerRadius=_+10,t.innerRadius=_+15;var r=Z[e].centroid(t),i=K(t);if(t.value&&i>=p){var o=J(r);U[o]&&(r[1]-=14),U[J(r)]=!0}return"translate("+r+")"})),$.select(".nv-label text").style("text-anchor",(function(t,e){return b?(t.startAngle+t.endAngle)/2<Math.PI?"start":"end":"middle"})).text((function(t,e){var n=K(t),r="";if(!t.value||n<p)return"";if("function"==typeof f)r=f(t,e,{key:i(t.data),value:o(t.data),percent:u(n)});else switch(f){case"key":r=i(t.data);break;case"value":r=u(o(t.data));break;case"percent":r=d3.format("%")(n)}return r})),h&&$.each((function(t,n){if(this.getBBox){var r=this.getBBox(),i=Z[n].centroid(t),o={x:i[0]+r.x,y:i[1]+r.y},a={x:o.x+r.width,y:o.y},s={x:o.x,y:o.y+r.height},l={x:o.x+r.width,y:o.y+r.height};t.visible=e.utils.pointIsInArc(o,t,q)&&e.utils.pointIsInArc(a,t,q)&&e.utils.pointIsInArc(s,t,q)&&e.utils.pointIsInArc(l,t,q)}})).style("display",(function(t){return t.visible?null:"none"}))}})),T.renderEnd("pie immediate"),W}return W.dispatch=D,W.options=e.utils.optionsFunc.bind(W),W._options=Object.create({},{arcsRadius:{get:function(){return S},set:function(t){S=t}},width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},showLabels:{get:function(){return c},set:function(t){c=t}},title:{get:function(){return v},set:function(t){v=t}},titleOffset:{get:function(){return y},set:function(t){y=t}},labelThreshold:{get:function(){return p},set:function(t){p=t}},hideOverlapLabels:{get:function(){return h},set:function(t){h=t}},valueFormat:{get:function(){return u},set:function(t){u=t}},x:{get:function(){return i},set:function(t){i=t}},id:{get:function(){return a},set:function(t){a=t}},endAngle:{get:function(){return w},set:function(t){w=t}},startAngle:{get:function(){return x},set:function(t){x=t}},padAngle:{get:function(){return k},set:function(t){k=t}},cornerRadius:{get:function(){return M},set:function(t){M=t}},donutRatio:{get:function(){return C},set:function(t){C=t}},labelsOutside:{get:function(){return d},set:function(t){d=t}},labelSunbeamLayout:{get:function(){return b},set:function(t){b=t}},donut:{get:function(){return g},set:function(t){g=t}},growOnHover:{get:function(){return m},set:function(t){m=t}},pieLabelsOutside:{get:function(){return d},set:function(t){d=t,e.deprecated("pieLabelsOutside","use labelsOutside instead")}},donutLabelsOutside:{get:function(){return d},set:function(t){d=t,e.deprecated("donutLabelsOutside","use labelsOutside instead")}},labelFormat:{get:function(){return u},set:function(t){u=t,e.deprecated("labelFormat","use valueFormat instead")}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},duration:{get:function(){return A},set:function(t){A=t,T.reset(A)}},y:{get:function(){return o},set:function(t){o=d3.functor(t)}},color:{get:function(){return l},set:function(t){l=e.utils.getColor(t)}},labelType:{get:function(){return f},set:function(t){f=t||"key"}}}),e.utils.initOptions(W),W},e.models.pieChart=function(){"use strict";var t=e.models.pie(),n=e.models.legend(),r=e.models.tooltip(),i={top:30,right:20,bottom:20,left:20},o=null,a=null,s=null,l=!1,u=!0,c="top",d=e.utils.defaultColor(),f=e.utils.state(),p=null,h=null,g=250,v=d3.dispatch("stateChange","changeState","renderEnd");r.duration(0).headerEnabled(!1).valueFormatter((function(e,n){return t.valueFormat()(e,n)}));var m=e.utils.renderWatch(v);function y(r){return m.reset(),m.models(t),r.each((function(r){var l=d3.select(this);e.utils.initSVG(l);var d,h=e.utils.availableWidth(a,l,i),g=e.utils.availableHeight(s,l,i);if(y.update=function(){l.transition().call(y)},y.container=this,f.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(r),y.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(r)).update(),f.disabled=r.map((function(t){return!!t.disabled})),!p)for(d in p={},f)f[d]instanceof Array?p[d]=f[d].slice(0):p[d]=f[d];if(!r||!r.length)return e.utils.noData(y,l),y;l.selectAll(".nv-noData").remove();var m=l.selectAll("g.nv-wrap.nv-pieChart").data([r]),b=m.enter().append("g").attr("class","nvd3 nv-wrap nv-pieChart").append("g"),x=m.select("g");if(b.append("g").attr("class","nv-pieWrap"),b.append("g").attr("class","nv-legendWrap"),u)if("top"===c)n.width(h).key(t.x()),m.select(".nv-legendWrap").datum(r).call(n),o||n.height()===i.top||(i.top=n.height(),g=e.utils.availableHeight(s,l,i)),m.select(".nv-legendWrap").attr("transform","translate(0,"+-i.top+")");else if("right"===c){var k=e.models.legend().width();h/2<k&&(k=h/2),n.height(g).key(t.x()),n.width(k),h-=n.width(),m.select(".nv-legendWrap").datum(r).call(n).attr("transform","translate("+h+",0)")}else"bottom"===c&&(n.width(h).key(t.x()),m.select(".nv-legendWrap").datum(r).call(n),i.bottom=n.height(),g=e.utils.availableHeight(s,l,i),m.select(".nv-legendWrap").attr("transform","translate(0,"+g+")"));else x.select(".nv-legendWrap").selectAll("*").remove();m.attr("transform","translate("+i.left+","+i.top+")"),t.width(h).height(g);var w=x.select(".nv-pieWrap").datum([r]);d3.transition(w).call(t),n.dispatch.on("stateChange",(function(t){for(var e in t)f[e]=t[e];v.stateChange(f),y.update()})),v.on("changeState",(function(t){void 0!==t.disabled&&(r.forEach((function(e,n){e.disabled=t.disabled[n]})),f.disabled=t.disabled),y.update()}))})),m.renderEnd("pieChart immediate"),y}return t.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:y.x()(t.data),value:y.y()(t.data),color:t.color,percent:t.percent},l||(delete t.percent,delete t.series.percent),r.data(t).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){r.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(t){r()})),y.legend=n,y.dispatch=v,y.pie=t,y.tooltip=r,y.options=e.utils.optionsFunc.bind(y),y._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return s},set:function(t){s=t}},noData:{get:function(){return h},set:function(t){h=t}},showTooltipPercent:{get:function(){return l},set:function(t){l=t}},showLegend:{get:function(){return u},set:function(t){u=t}},legendPosition:{get:function(){return c},set:function(t){c=t}},defaultState:{get:function(){return p},set:function(t){p=t}},color:{get:function(){return d},set:function(e){d=e,n.color(d),t.color(d)}},duration:{get:function(){return g},set:function(e){g=e,m.reset(g),t.duration(g)}},margin:{get:function(){return i},set:function(t){void 0!==t.top&&(i.top=t.top,o=t.top),i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}}}),e.utils.inheritOptions(y,t),e.utils.initOptions(y),y},e.models.sankey=function(){"use strict";var t={},n=24,r=8,i=[1,1],o=[],a=[],s=!0,l=function(t){o.forEach((function(t){t.sourceLinks=[],t.targetLinks=[]})),a.forEach((function(t){var e=t.source,n=t.target;"number"==typeof e&&(e=t.source=o[t.source]),"number"==typeof n&&(n=t.target=o[t.target]),e.sourceLinks.push(t),n.targetLinks.push(t)})),o.forEach((function(t){t.value=Math.max(d3.sum(t.sourceLinks,f),d3.sum(t.targetLinks,f))})),function(){for(var t,e,r=o,a=0;r.length&&a<o.length;)t=[],r.forEach((function(e){e.x=a,e.dx=n,e.sourceLinks.forEach((function(e){t.indexOf(e.target)<0&&t.push(e.target)}))})),r=t,++a;s&&function(t){o.forEach((function(e){e.sourceLinks.length||(e.x=t-1)}))}(a),e=(i[0]-n)/(a-1),o.forEach((function(t){t.x*=e}))}(),function(t){var e,n=d3.nest().key((function(t){return t.x})).sortKeys(d3.ascending).entries(o).map((function(t){return t.values}));e=d3.min(n,(function(t){return(i[1]-(t.length-1)*r)/d3.sum(t,f)})),n.forEach((function(t){t.forEach((function(t,n){t.y=n,t.dy=t.value*e}))})),a.forEach((function(t){t.dy=t.value*e})),p(),d();for(var s=1;t>0;--t)u(s*=.99),p(),d(),l(s),p(),d();function l(t){function e(t){return(t.source.y+t.sy+t.dy/2)*t.value}n.forEach((function(n,r){n.forEach((function(n){if(n.targetLinks.length){var r=d3.sum(n.targetLinks,e)/d3.sum(n.targetLinks,f);n.y+=(r-c(n))*t}}))}))}function u(t){function e(t){return(t.target.y+t.ty+t.dy/2)*t.value}n.slice().reverse().forEach((function(n){n.forEach((function(n){if(n.sourceLinks.length){var r=d3.sum(n.sourceLinks,e)/d3.sum(n.sourceLinks,f);n.y+=(r-c(n))*t}}))}))}function p(){n.forEach((function(t){var e,n,o,a=0,s=t.length;for(t.sort(h),o=0;o<s;++o)(n=a-(e=t[o]).y)>0&&(e.y+=n),a=e.y+e.dy+r;if((n=a-r-i[1])>0)for(a=e.y-=n,o=s-2;o>=0;--o)(n=(e=t[o]).y+e.dy+r-a)>0&&(e.y-=n),a=e.y}))}function h(t,e){return t.y-e.y}}(t)},u=function(){var t=.5;function e(e){var n=e.source.x+e.source.dx,r=e.target.x,i=d3.interpolateNumber(n,r),o=i(t),a=i(1-t),s=e.source.y+e.sy+e.dy/2,l=e.target.y+e.ty+e.dy/2;return"M"+n+","+s+"C"+o+","+s+" "+a+","+l+" "+r+","+l}return e.curvature=function(n){return arguments.length?(t=+n,e):t},e},c=function(t){return t.y+t.dy/2};function d(){function t(t,e){return t.source.y-e.source.y}function e(t,e){return t.target.y-e.target.y}o.forEach((function(n){n.sourceLinks.sort(e),n.targetLinks.sort(t)})),o.forEach((function(t){var e=0,n=0;t.sourceLinks.forEach((function(t){t.sy=e,e+=t.dy})),t.targetLinks.forEach((function(t){t.ty=n,n+=t.dy}))}))}function f(t){return t.value}return t.options=e.utils.optionsFunc.bind(t),t._options=Object.create({},{nodeWidth:{get:function(){return n},set:function(t){n=+t}},nodePadding:{get:function(){return r},set:function(t){r=t}},nodes:{get:function(){return o},set:function(t){o=t}},links:{get:function(){return a},set:function(t){a=t}},size:{get:function(){return i},set:function(t){i=t}},sinksRight:{get:function(){return s},set:function(t){s=t}},layout:{get:function(){l(32)},set:function(t){l(t)}},relayout:{get:function(){d()},set:function(t){}},center:{get:function(){return c()},set:function(t){"function"==typeof t&&(c=t)}},link:{get:function(){return u()},set:function(t){return"function"==typeof t&&(u=t),u()}}}),e.utils.initOptions(t),t},e.models.sankeyChart=function(){"use strict";var t={top:5,right:0,bottom:5,left:0},n=e.models.sankey(),r=600,i=400,o=36,a=40,s="units",l=void 0,u=d3.format(",.0f"),c=function(t){return u(t)+" "+s},d=d3.scale.category20(),f=function(t){return t.source.name+" → "+t.target.name+"\n"+c(t.value)},p=function(t){return t.color=d(t.name.replace(/ .*/,""))},h=function(t){return d3.rgb(t.color).darker(2)},g=function(t){return t.name+"\n"+c(t.value)},v=function(t,e){t.append("text").attr("x",0).attr("y",0).attr("class","nvd3-sankey-chart-error").attr("text-anchor","middle").text(e)};function m(t){return t.each((function(e){var s={nodes:[{node:1,name:"Test 1"},{node:2,name:"Test 2"},{node:3,name:"Test 3"},{node:4,name:"Test 4"},{node:5,name:"Test 5"},{node:6,name:"Test 6"}],links:[{source:0,target:1,value:2295},{source:0,target:5,value:1199},{source:1,target:2,value:1119},{source:1,target:5,value:1176},{source:2,target:3,value:487},{source:2,target:5,value:632},{source:3,target:4,value:301},{source:3,target:5,value:186}]},u=!1,c=!1;if(("object"==typeof e.nodes&&e.nodes.length)>=0&&("object"==typeof e.links&&e.links.length)>=0&&(u=!0),e.nodes&&e.nodes.length>0&&e.links&&e.links.length>0&&(c=!0),!u)return console.error("NVD3 Sankey chart error:","invalid data format for",e),console.info("Valid data format is: ",s,JSON.stringify(s)),v(t,"Error loading chart, data is invalid"),!1;if(!c)return v(t,"No data available"),!1;var d=t.append("svg").attr("width",r).attr("height",i).append("g").attr("class","nvd3 nv-wrap nv-sankeyChart");n.nodeWidth(o).nodePadding(a).size([r,i]);var m=n.link();n.nodes(e.nodes).links(e.links).layout(32).center(l);var y=d.append("g").selectAll(".link").data(e.links).enter().append("path").attr("class","link").attr("d",m).style("stroke-width",(function(t){return Math.max(1,t.dy)})).sort((function(t,e){return e.dy-t.dy}));y.append("title").text(f);var b=d.append("g").selectAll(".node").data(e.nodes).enter().append("g").attr("class","node").attr("transform",(function(t){return"translate("+t.x+","+t.y+")"})).call(d3.behavior.drag().origin((function(t){return t})).on("dragstart",(function(){this.parentNode.appendChild(this)})).on("drag",(function(t){d3.select(this).attr("transform","translate("+t.x+","+(t.y=Math.max(0,Math.min(i-t.dy,d3.event.y)))+")"),n.relayout(),y.attr("d",m)})));b.append("rect").attr("height",(function(t){return t.dy})).attr("width",n.nodeWidth()).style("fill",p).style("stroke",h).append("title").text(g),b.append("text").attr("x",-6).attr("y",(function(t){return t.dy/2})).attr("dy",".35em").attr("text-anchor","end").attr("transform",null).text((function(t){return t.name})).filter((function(t){return t.x<r/2})).attr("x",6+n.nodeWidth()).attr("text-anchor","start")})),m}return m.options=e.utils.optionsFunc.bind(m),m._options=Object.create({},{units:{get:function(){return s},set:function(t){s=t}},width:{get:function(){return r},set:function(t){r=t}},height:{get:function(){return i},set:function(t){i=t}},format:{get:function(){return c},set:function(t){c=t}},linkTitle:{get:function(){return f},set:function(t){f=t}},nodeWidth:{get:function(){return o},set:function(t){o=t}},nodePadding:{get:function(){return a},set:function(t){a=t}},center:{get:function(){return l},set:function(t){l=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},nodeStyle:{get:function(){return{}},set:function(t){p=void 0!==t.fillColor?t.fillColor:p,h=void 0!==t.strokeColor?t.strokeColor:h,g=void 0!==t.title?t.title:g}}}),e.utils.initOptions(m),m},e.models.scatter=function(){"use strict";var t,n,r,i,o,a,s,l,u={top:0,right:0,bottom:0,left:0},c=null,d=null,f=e.utils.defaultColor(),p=null,h=Math.floor(1e5*Math.random()),g=null,v=d3.scale.linear(),m=d3.scale.linear(),y=d3.scale.linear(),b=function(t){return t.x},x=function(t){return t.y},k=function(t){return t.size||1},w=function(t){return t.shape||"circle"},M=[],C=[],A=[],S=!0,D=function(t){return!t.notActive},E=!1,F=.1,T=!1,W=!0,N=!1,O=function(){return 25},_=null,L=null,P=null,B=null,I=null,V=null,j=!1,H=d3.dispatch("elementClick","elementDblClick","elementMouseover","elementMouseout","renderEnd"),R=!0,z=250,q=300,G=!1,Y=!1,X=e.utils.renderWatch(H,z),$=[16,256],Q={};function Z(t){var e;return e=t[0].series+":"+t[1],Q[e]=Q[e]||{}}function U(t){var e;e=t[0].series+":"+t[1],delete Q[e]}function J(t){var e,n,r,i=Z(t),o=!1;for(e=1;e<arguments.length;e+=2)n=arguments[e],r=arguments[e+1](t[0],t[1]),i[n]===r&&i.hasOwnProperty(n)||(i[n]=r,o=!0);return o}function K(z){return X.reset(),z.each((function(z){g=d3.select(this);var Q=e.utils.availableWidth(c,g,u),Z=e.utils.availableHeight(d,g,u);e.utils.initSVG(g),z.forEach((function(t,e){t.values.forEach((function(t){t.series=e}))}));var tt="function"==typeof K.yScale().base,et=_&&L&&I?[]:d3.merge(z.map((function(t){return t.values.map((function(t,e){return{x:b(t,e),y:x(t,e),size:k(t,e)}}))})));if(v.domain(_||d3.extent(et.map((function(t){return t.x})).concat(M))),E&&z[0]?v.range(P||[(Q*F+Q)/(2*z[0].values.length),Q-Q*(1+F)/(2*z[0].values.length)]):v.range(P||[0,Q]),tt){var nt=d3.min(et.map((function(t){if(0!==t.y)return t.y})));m.clamp(!0).domain(L||d3.extent(et.map((function(t){return 0!==t.y?t.y:.1*nt})).concat(C))).range(B||[Z,0])}else m.domain(L||d3.extent(et.map((function(t){return t.y})).concat(C))).range(B||[Z,0]);y.domain(I||d3.extent(et.map((function(t){return t.size})).concat(A))).range(V||$),j=v.domain()[0]===v.domain()[1]||m.domain()[0]===m.domain()[1],v.domain()[0]===v.domain()[1]&&(v.domain()[0]?v.domain([v.domain()[0]-.01*v.domain()[0],v.domain()[1]+.01*v.domain()[1]]):v.domain([-1,1])),m.domain()[0]===m.domain()[1]&&(m.domain()[0]?m.domain([m.domain()[0]-.01*m.domain()[0],m.domain()[1]+.01*m.domain()[1]]):m.domain([-1,1])),isNaN(v.domain()[0])&&v.domain([-1,1]),isNaN(m.domain()[0])&&m.domain([-1,1]),t=t||v,n=n||m,r=r||y;var rt=v(1)!==t(1)||m(1)!==n(1)||y(1)!==r(1);s=s||d;var it=(a=a||c)!==c||s!==d,ot=(i=i||[])[0]!==v.domain()[0]||i[1]!==v.domain()[1];i=v.domain(),o=o||[],ot=ot||o[0]!==m.domain()[0]||o[1]!==m.domain()[1],o=m.domain();var at=g.selectAll("g.nv-wrap.nv-scatter").data([z]),st=at.enter().append("g").attr("class","nvd3 nv-wrap nv-scatter nv-chart-"+h),lt=st.append("defs"),ut=st.append("g"),ct=at.select("g");function dt(){if(Y=!1,!S)return!1;if(!0===R){at.select(".nv-point-paths").selectAll("path").remove();var t=d3.merge(z.map((function(t,n){return t.values.map((function(t,r){var i=b(t,r),o=x(t,r);return[e.utils.NaNtoZero(v(i))+1e-4*Math.random(),e.utils.NaNtoZero(m(o))+1e-4*Math.random(),n,r,t]})).filter((function(t,e){return D(t[4],e)}))})));if(0==t.length)return!1;t.length<3&&(t.push([v.range()[0]-20,m.range()[0]-20,null,null]),t.push([v.range()[1]+20,m.range()[1]+20,null,null]),t.push([v.range()[0]-20,m.range()[0]+20,null,null]),t.push([v.range()[1]+20,m.range()[1]-20,null,null]));var n=d3.geom.polygon([[-10,-10],[-10,d+10],[c+10,d+10],[c+10,-10]]);t=t.sort((function(t,e){return t[0]-e[0]||t[1]-e[1]}));for(var r=0;r<t.length-1;)Math.abs(t[r][0]-t[r+1][0])<1e-4&&Math.abs(t[r][1]-t[r+1][1])<1e-4?t.splice(r+1,1):r++;var i=d3.geom.voronoi(t).map((function(e,r){return{data:n.clip(e),series:t[r][2],point:t[r][3]}})),o=at.select(".nv-point-paths").selectAll("path").data(i),a=o.enter().append("svg:path").attr("d",(function(t){return t&&t.data&&0!==t.data.length?"M"+t.data.join(",")+"Z":"M 0 0"})).attr("id",(function(t,e){return"nv-path-"+e})).attr("clip-path",(function(t,e){return"url(#nv-clip-"+h+"-"+e+")"}));N&&a.style("fill",d3.rgb(230,230,230)).style("fill-opacity",.4).style("stroke-opacity",1).style("stroke",d3.rgb(200,200,200)),W&&(at.select(".nv-point-clips").selectAll("*").remove(),at.select(".nv-point-clips").selectAll("clipPath").data(t).enter().append("svg:clipPath").attr("id",(function(t,e){return"nv-clip-"+h+"-"+e})).append("svg:circle").attr("cx",(function(t){return t[0]})).attr("cy",(function(t){return t[1]})).attr("r",O));var s=function(t,e,n){if(Y)return 0;var r=z[e.series];if(void 0!==r){var i=r.values[e.point];i.color=f(r,e.series),i.x=b(i),i.y=x(i);var o=g.node().getBoundingClientRect(),a=window.pageYOffset||document.documentElement.scrollTop,s=window.pageXOffset||document.documentElement.scrollLeft;n({point:i,series:r,pos:{left:v(b(i,e.point))+o.left+s+u.left+10,top:m(x(i,e.point))+o.top+a+u.top+10},relativePos:[v(b(i,e.point))+u.left,m(x(i,e.point))+u.top],seriesIndex:e.series,pointIndex:e.point,event:d3.event,element:t})}};o.on("click",(function(t){s(this,t,H.elementClick)})).on("dblclick",(function(t){s(this,t,H.elementDblClick)})).on("mouseover",(function(t){s(this,t,H.elementMouseover)})).on("mouseout",(function(t,e){s(this,t,H.elementMouseout)}))}else at.select(".nv-groups").selectAll(".nv-group").selectAll(".nv-point").on("click",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];H.elementClick({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e,event:d3.event,element:this})})).on("dblclick",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];H.elementDblClick({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e})})).on("mouseover",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];H.elementMouseover({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e,color:f(t,e)})})).on("mouseout",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];H.elementMouseout({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e,color:f(t,e)})}))}at.classed("nv-single-point",j),ut.append("g").attr("class","nv-groups"),ut.append("g").attr("class","nv-point-paths"),st.append("g").attr("class","nv-point-clips"),at.attr("transform","translate("+u.left+","+u.top+")"),lt.append("clipPath").attr("id","nv-edge-clip-"+h).append("rect").attr("transform","translate( -10, -10)"),at.select("#nv-edge-clip-"+h+" rect").attr("width",Q+20).attr("height",Z>0?Z+20:0),ct.attr("clip-path",T?"url(#nv-edge-clip-"+h+")":""),Y=!0;var ft=at.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t){return t.key}));ft.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),ft.exit().remove(),ft.attr("class",(function(t,e){return(t.classed||"")+" nv-group nv-series-"+e})).classed("nv-noninteractive",!S).classed("hover",(function(t){return t.hover})),ft.watchTransition(X,"scatter: groups").style("fill",(function(t,e){return f(t,e)})).style("stroke",(function(t,e){return t.pointBorderColor||p||f(t,e)})).style("stroke-opacity",1).style("fill-opacity",.5);var pt=ft.selectAll("path.nv-point").data((function(t){return t.values.map((function(t,e){return[t,e]})).filter((function(t,e){return D(t[0],e)}))}));if(pt.enter().append("path").attr("class",(function(t){return"nv-point nv-point-"+t[1]})).style("fill",(function(t){return t.color})).style("stroke",(function(t){return t.color})).attr("transform",(function(r){return"translate("+e.utils.NaNtoZero(t(b(r[0],r[1])))+","+e.utils.NaNtoZero(n(x(r[0],r[1])))+")"})).attr("d",e.utils.symbol().type((function(t){return w(t[0])})).size((function(t){return y(k(t[0],t[1]))}))),pt.exit().each(U).remove(),ft.exit().selectAll("path.nv-point").watchTransition(X,"scatter exit").attr("transform",(function(t){return"translate("+e.utils.NaNtoZero(v(b(t[0],t[1])))+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"})).remove(),pt.filter((function(t){return J(t,"x",b,"y",x)||rt||it||ot})).watchTransition(X,"scatter points").attr("transform",(function(t){return"translate("+e.utils.NaNtoZero(v(b(t[0],t[1])))+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"})),pt.filter((function(t){return J(t,"shape",w,"size",k)||rt||it||ot})).watchTransition(X,"scatter points").attr("d",e.utils.symbol().type((function(t){return w(t[0])})).size((function(t){return y(k(t[0],t[1]))}))),G){var ht=ft.selectAll(".nv-label").data((function(t){return t.values.map((function(t,e){return[t,e]})).filter((function(t,e){return D(t[0],e)}))}));ht.enter().append("text").style("fill",(function(t,e){return t.color})).style("stroke-opacity",0).style("fill-opacity",1).attr("transform",(function(r){return"translate("+(e.utils.NaNtoZero(t(b(r[0],r[1])))+Math.sqrt(y(k(r[0],r[1]))/Math.PI)+2)+","+e.utils.NaNtoZero(n(x(r[0],r[1])))+")"})).text((function(t,e){return t[0].label})),ht.exit().remove(),ft.exit().selectAll("path.nv-label").watchTransition(X,"scatter exit").attr("transform",(function(t){return"translate("+(e.utils.NaNtoZero(v(b(t[0],t[1])))+Math.sqrt(y(k(t[0],t[1]))/Math.PI)+2)+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"})).remove(),ht.each((function(t){d3.select(this).classed("nv-label",!0).classed("nv-label-"+t[1],!1).classed("hover",!1)})),ht.watchTransition(X,"scatter labels").attr("transform",(function(t){return"translate("+(e.utils.NaNtoZero(v(b(t[0],t[1])))+Math.sqrt(y(k(t[0],t[1]))/Math.PI)+2)+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"}))}q?(clearTimeout(l),l=setTimeout(dt,q)):dt(),t=v.copy(),n=m.copy(),r=y.copy(),a=c,s=d})),X.renderEnd("scatter immediate"),K}return K.dispatch=H,K.options=e.utils.optionsFunc.bind(K),K._calls=new function(){this.clearHighlights=function(){return e.dom.write((function(){g.selectAll(".nv-point.hover").classed("hover",!1)})),null},this.highlightPoint=function(t,n,r){e.dom.write((function(){g.select(".nv-groups").selectAll(".nv-series-"+t).selectAll(".nv-point-"+n).classed("hover",r)}))}},H.on("elementMouseover.point",(function(t){S&&K._calls.highlightPoint(t.seriesIndex,t.pointIndex,!0)})),H.on("elementMouseout.point",(function(t){S&&K._calls.highlightPoint(t.seriesIndex,t.pointIndex,!1)})),K._options=Object.create({},{width:{get:function(){return c},set:function(t){c=t}},height:{get:function(){return d},set:function(t){d=t}},xScale:{get:function(){return v},set:function(t){v=t}},yScale:{get:function(){return m},set:function(t){m=t}},pointScale:{get:function(){return y},set:function(t){y=t}},xDomain:{get:function(){return _},set:function(t){_=t}},yDomain:{get:function(){return L},set:function(t){L=t}},pointDomain:{get:function(){return I},set:function(t){I=t}},xRange:{get:function(){return P},set:function(t){P=t}},yRange:{get:function(){return B},set:function(t){B=t}},pointRange:{get:function(){return V},set:function(t){V=t}},forceX:{get:function(){return M},set:function(t){M=t}},forceY:{get:function(){return C},set:function(t){C=t}},forcePoint:{get:function(){return A},set:function(t){A=t}},interactive:{get:function(){return S},set:function(t){S=t}},pointActive:{get:function(){return D},set:function(t){D=t}},padDataOuter:{get:function(){return F},set:function(t){F=t}},padData:{get:function(){return E},set:function(t){E=t}},clipEdge:{get:function(){return T},set:function(t){T=t}},clipVoronoi:{get:function(){return W},set:function(t){W=t}},clipRadius:{get:function(){return O},set:function(t){O=t}},showVoronoi:{get:function(){return N},set:function(t){N=t}},id:{get:function(){return h},set:function(t){h=t}},interactiveUpdateDelay:{get:function(){return q},set:function(t){q=t}},showLabels:{get:function(){return G},set:function(t){G=t}},pointBorderColor:{get:function(){return p},set:function(t){p=t}},x:{get:function(){return b},set:function(t){b=d3.functor(t)}},y:{get:function(){return x},set:function(t){x=d3.functor(t)}},pointSize:{get:function(){return k},set:function(t){k=d3.functor(t)}},pointShape:{get:function(){return w},set:function(t){w=d3.functor(t)}},margin:{get:function(){return u},set:function(t){u.top=void 0!==t.top?t.top:u.top,u.right=void 0!==t.right?t.right:u.right,u.bottom=void 0!==t.bottom?t.bottom:u.bottom,u.left=void 0!==t.left?t.left:u.left}},duration:{get:function(){return z},set:function(t){z=t,X.reset(z)}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t)}},useVoronoi:{get:function(){return R},set:function(t){!1===(R=t)&&(W=!1)}}}),e.utils.initOptions(K),K},e.models.scatterChart=function(){"use strict";var t=e.models.scatter(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),o=e.models.distribution(),a=e.models.distribution(),s=e.models.tooltip(),l={top:30,right:20,bottom:50,left:75},u=null,c=null,d=null,f=null,p=e.utils.defaultColor(),h=t.xScale(),g=t.yScale(),v=!1,m=!1,y=!0,b=!0,x=!0,k=!1,w=e.utils.state(),M=null,C=d3.dispatch("stateChange","changeState","renderEnd"),A=null,S=250,D=!1;t.xScale(h).yScale(g),n.orient("bottom").tickPadding(10),r.orient(k?"right":"left").tickPadding(10),o.axis("x"),a.axis("y"),s.headerFormatter((function(t,e){return n.tickFormat()(t,e)})).valueFormatter((function(t,e){return r.tickFormat()(t,e)}));var E=e.utils.renderWatch(C,S);function F(A){return E.reset(),E.models(t),b&&E.models(n),x&&E.models(r),v&&E.models(o),m&&E.models(a),A.each((function(A){f=d3.select(this),e.utils.initSVG(f);var T,W=e.utils.availableWidth(c,f,l),N=e.utils.availableHeight(d,f,l);if(F.update=function(){0===S?f.call(F):f.transition().duration(S).call(F)},F.container=this,w.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(A),F.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(A)).update(),w.disabled=A.map((function(t){return!!t.disabled})),!M)for(T in M={},w)w[T]instanceof Array?M[T]=w[T].slice(0):M[T]=w[T];if(!(A&&A.length&&A.filter((function(t){return t.values.length})).length))return e.utils.noData(F,f),E.renderEnd("scatter immediate"),F;f.selectAll(".nv-noData").remove(),h=t.xScale(),g=t.yScale();var O=f.selectAll("g.nv-wrap.nv-scatterChart").data([A]),_=O.enter().append("g").attr("class","nvd3 nv-wrap nv-scatterChart nv-chart-"+t.id()).append("g"),L=O.select("g");if(_.append("rect").attr("class","nvd3 nv-background").style("pointer-events","none"),_.append("g").attr("class","nv-x nv-axis"),_.append("g").attr("class","nv-y nv-axis"),_.append("g").attr("class","nv-scatterWrap"),_.append("g").attr("class","nv-regressionLinesWrap"),_.append("g").attr("class","nv-distWrap"),_.append("g").attr("class","nv-legendWrap"),k&&L.select(".nv-y.nv-axis").attr("transform","translate("+W+",0)"),y){var P=W;i.width(P),O.select(".nv-legendWrap").datum(A).call(i),u||i.height()===l.top||(l.top=i.height(),N=e.utils.availableHeight(d,f,l)),O.select(".nv-legendWrap").attr("transform","translate(0,"+-l.top+")")}else L.select(".nv-legendWrap").selectAll("*").remove();O.attr("transform","translate("+l.left+","+l.top+")"),t.width(W).height(N).color(A.map((function(t,e){return t.color=t.color||p(t,e),t.color})).filter((function(t,e){return!A[e].disabled}))).showLabels(D),O.select(".nv-scatterWrap").datum(A.filter((function(t){return!t.disabled}))).call(t),O.select(".nv-regressionLinesWrap").attr("clip-path","url(#nv-edge-clip-"+t.id()+")");var B=O.select(".nv-regressionLinesWrap").selectAll(".nv-regLines").data((function(t){return t}));B.enter().append("g").attr("class","nv-regLines");var I=B.selectAll(".nv-regLine").data((function(t){return[t]}));I.enter().append("line").attr("class","nv-regLine").style("stroke-opacity",0),I.filter((function(t){return t.intercept&&t.slope})).watchTransition(E,"scatterPlusLineChart: regline").attr("x1",h.range()[0]).attr("x2",h.range()[1]).attr("y1",(function(t,e){return g(h.domain()[0]*t.slope+t.intercept)})).attr("y2",(function(t,e){return g(h.domain()[1]*t.slope+t.intercept)})).style("stroke",(function(t,e,n){return p(t,n)})).style("stroke-opacity",(function(t,e){return t.disabled||void 0===t.slope||void 0===t.intercept?0:1})),b&&(n.scale(h)._ticks(e.utils.calcTicksX(W/100,A)).tickSize(-N,0),L.select(".nv-x.nv-axis").attr("transform","translate(0,"+g.range()[0]+")").call(n)),x&&(r.scale(g)._ticks(e.utils.calcTicksY(N/36,A)).tickSize(-W,0),L.select(".nv-y.nv-axis").call(r)),v&&(o.getData(t.x()).scale(h).width(W).color(A.map((function(t,e){return t.color||p(t,e)})).filter((function(t,e){return!A[e].disabled}))),_.select(".nv-distWrap").append("g").attr("class","nv-distributionX"),L.select(".nv-distributionX").attr("transform","translate(0,"+g.range()[0]+")").datum(A.filter((function(t){return!t.disabled}))).call(o)),m&&(a.getData(t.y()).scale(g).width(N).color(A.map((function(t,e){return t.color||p(t,e)})).filter((function(t,e){return!A[e].disabled}))),_.select(".nv-distWrap").append("g").attr("class","nv-distributionY"),L.select(".nv-distributionY").attr("transform","translate("+(k?W:-a.size())+",0)").datum(A.filter((function(t){return!t.disabled}))).call(a)),i.dispatch.on("stateChange",(function(t){for(var e in t)w[e]=t[e];C.stateChange(w),F.update()})),C.on("changeState",(function(t){void 0!==t.disabled&&(A.forEach((function(e,n){e.disabled=t.disabled[n]})),w.disabled=t.disabled),F.update()})),t.dispatch.on("elementMouseout.tooltip",(function(e){s.hidden(!0),f.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-distx-"+e.pointIndex).attr("y1",0),f.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-disty-"+e.pointIndex).attr("x2",a.size())})),t.dispatch.on("elementMouseover.tooltip",(function(t){f.select(".nv-series-"+t.seriesIndex+" .nv-distx-"+t.pointIndex).attr("y1",t.relativePos[1]-N),f.select(".nv-series-"+t.seriesIndex+" .nv-disty-"+t.pointIndex).attr("x2",t.relativePos[0]+o.size()),s.data(t).hidden(!1)})),h.copy(),g.copy()})),E.renderEnd("scatter with line immediate"),F}return F.dispatch=C,F.scatter=t,F.legend=i,F.xAxis=n,F.yAxis=r,F.distX=o,F.distY=a,F.tooltip=s,F.options=e.utils.optionsFunc.bind(F),F._options=Object.create({},{width:{get:function(){return c},set:function(t){c=t}},height:{get:function(){return d},set:function(t){d=t}},container:{get:function(){return f},set:function(t){f=t}},showDistX:{get:function(){return v},set:function(t){v=t}},showDistY:{get:function(){return m},set:function(t){m=t}},showLegend:{get:function(){return y},set:function(t){y=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return M},set:function(t){M=t}},noData:{get:function(){return A},set:function(t){A=t}},duration:{get:function(){return S},set:function(t){S=t}},showLabels:{get:function(){return D},set:function(t){D=t}},margin:{get:function(){return l},set:function(t){void 0!==t.top&&(l.top=t.top,u=t.top),l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},rightAlignYAxis:{get:function(){return k},set:function(t){k=t,r.orient(t?"right":"left")}},color:{get:function(){return p},set:function(t){p=e.utils.getColor(t),i.color(p),o.color(p),a.color(p)}}}),e.utils.inheritOptions(F,t),e.utils.initOptions(F),F},e.models.sparkline=function(){"use strict";var t,n,r,i,o={top:2,right:0,bottom:2,left:0},a=400,s=32,l=null,u=!0,c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=e.utils.getColor(["#000"]),g=!0,v=!0,m=d3.dispatch("renderEnd"),y=e.utils.renderWatch(m);function b(u){return y.reset(),u.each((function(u){var m=a-o.left-o.right,y=s-o.top-o.bottom;l=d3.select(this),e.utils.initSVG(l),c.domain(t||d3.extent(u,f)).range(r||[0,m]),d.domain(n||d3.extent(u,p)).range(i||[y,0]);var b=l.selectAll("g.nv-wrap.nv-sparkline").data([u]);b.enter().append("g").attr("class","nvd3 nv-wrap nv-sparkline").append("g"),b.select("g"),b.attr("transform","translate("+o.left+","+o.top+")");var x=b.selectAll("path").data((function(t){return[t]}));x.enter().append("path"),x.exit().remove(),x.style("stroke",(function(t,e){return t.color||h(t,e)})).attr("d",d3.svg.line().x((function(t,e){return c(f(t,e))})).y((function(t,e){return d(p(t,e))})));var k=b.selectAll("circle.nv-point").data((function(t){var e=t.map((function(t,e){return p(t,e)}));function n(e){if(-1!=e){var n=t[e];return n.pointIndex=e,n}return null}var r=n(e.lastIndexOf(d.domain()[1])),i=n(e.indexOf(d.domain()[0])),o=n(e.length-1);return[g?i:null,g?r:null,v?o:null].filter((function(t){return null!=t}))}));k.enter().append("circle"),k.exit().remove(),k.attr("cx",(function(t,e){return c(f(t,t.pointIndex))})).attr("cy",(function(t,e){return d(p(t,t.pointIndex))})).attr("r",2).attr("class",(function(t,e){return f(t,t.pointIndex)==c.domain()[1]?"nv-point nv-currentValue":p(t,t.pointIndex)==d.domain()[0]?"nv-point nv-minValue":"nv-point nv-maxValue"}))})),y.renderEnd("sparkline immediate"),b}return b.options=e.utils.optionsFunc.bind(b),b._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return s},set:function(t){s=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return n},set:function(t){n=t}},xRange:{get:function(){return r},set:function(t){r=t}},yRange:{get:function(){return i},set:function(t){i=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},animate:{get:function(){return u},set:function(t){u=t}},showMinMaxPoints:{get:function(){return g},set:function(t){g=t}},showCurrentPoint:{get:function(){return v},set:function(t){v=t}},x:{get:function(){return f},set:function(t){f=d3.functor(t)}},y:{get:function(){return p},set:function(t){p=d3.functor(t)}},margin:{get:function(){return o},set:function(t){o.top=void 0!==t.top?t.top:o.top,o.right=void 0!==t.right?t.right:o.right,o.bottom=void 0!==t.bottom?t.bottom:o.bottom,o.left=void 0!==t.left?t.left:o.left}},color:{get:function(){return h},set:function(t){h=e.utils.getColor(t)}}}),b.dispatch=m,e.utils.initOptions(b),b},e.models.sparklinePlus=function(){"use strict";var t,n,r=e.models.sparkline(),i={top:15,right:100,bottom:10,left:50},o=null,a=null,s=[],l=!1,u=d3.format(",r"),c=d3.format(",.2f"),d=!0,f=!0,p=!1,h=null,g=d3.dispatch("renderEnd"),v=e.utils.renderWatch(g);function m(h){return v.reset(),v.models(r),h.each((function(h){var g=d3.select(this);e.utils.initSVG(g);var v=e.utils.availableWidth(o,g,i),y=e.utils.availableHeight(a,g,i);if(m.update=function(){g.call(m)},m.container=this,!h||!h.length)return e.utils.noData(m,g),m;g.selectAll(".nv-noData").remove();var b=r.y()(h[h.length-1],h.length-1);t=r.xScale(),n=r.yScale();var x=g.selectAll("g.nv-wrap.nv-sparklineplus").data([h]),k=x.enter().append("g").attr("class","nvd3 nv-wrap nv-sparklineplus").append("g"),w=x.select("g");k.append("g").attr("class","nv-sparklineWrap"),k.append("g").attr("class","nv-valueWrap"),k.append("g").attr("class","nv-hoverArea"),x.attr("transform","translate("+i.left+","+i.top+")");var M=w.select(".nv-sparklineWrap");if(r.width(v).height(y),M.call(r),d){var C=w.select(".nv-valueWrap").selectAll(".nv-currentValue").data([b]);C.enter().append("text").attr("class","nv-currentValue").attr("dx",p?-8:8).attr("dy",".9em").style("text-anchor",p?"end":"start"),C.attr("x",v+(p?i.right:0)).attr("y",f?function(t){return n(t)}:0).style("fill",r.color()(h[h.length-1],h.length-1)).text(c(b))}function A(){if(!l){var e=w.selectAll(".nv-hoverValue").data(s),n=e.enter().append("g").attr("class","nv-hoverValue").style("stroke-opacity",0).style("fill-opacity",0);e.exit().transition().duration(250).style("stroke-opacity",0).style("fill-opacity",0).remove(),e.attr("transform",(function(e){return"translate("+t(r.x()(h[e],e))+",0)"})).transition().duration(250).style("stroke-opacity",1).style("fill-opacity",1),s.length&&(n.append("line").attr("x1",0).attr("y1",-i.top).attr("x2",0).attr("y2",y),n.append("text").attr("class","nv-xValue").attr("x",-6).attr("y",-i.top).attr("text-anchor","end").attr("dy",".9em"),w.select(".nv-hoverValue .nv-xValue").text(u(r.x()(h[s[0]],s[0]))),n.append("text").attr("class","nv-yValue").attr("x",6).attr("y",-i.top).attr("text-anchor","start").attr("dy",".9em"),w.select(".nv-hoverValue .nv-yValue").text(c(r.y()(h[s[0]],s[0]))))}}k.select(".nv-hoverArea").append("rect").on("mousemove",(function(){if(!l){var e=d3.mouse(this)[0]-i.left;s=[function(t,e){for(var n=Math.abs(r.x()(t[0],0)-e),i=0,o=0;o<t.length;o++)Math.abs(r.x()(t[o],o)-e)<n&&(n=Math.abs(r.x()(t[o],o)-e),i=o);return i}(h,Math.round(t.invert(e)))],A()}})).on("click",(function(){l=!l})).on("mouseout",(function(){s=[],A()})),w.select(".nv-hoverArea rect").attr("transform",(function(t){return"translate("+-i.left+","+-i.top+")"})).attr("width",v+i.left+i.right).attr("height",y+i.top)})),v.renderEnd("sparklinePlus immediate"),m}return m.dispatch=g,m.sparkline=r,m.options=e.utils.optionsFunc.bind(m),m._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return a},set:function(t){a=t}},xTickFormat:{get:function(){return u},set:function(t){u=t}},yTickFormat:{get:function(){return c},set:function(t){c=t}},showLastValue:{get:function(){return d},set:function(t){d=t}},alignValue:{get:function(){return f},set:function(t){f=t}},rightAlignValue:{get:function(){return p},set:function(t){p=t}},noData:{get:function(){return h},set:function(t){h=t}},margin:{get:function(){return i},set:function(t){i.top=void 0!==t.top?t.top:i.top,i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}}}),e.utils.inheritOptions(m,r),e.utils.initOptions(m),m},e.models.stackedArea=function(){"use strict";var t,n,r={top:0,right:0,bottom:0,left:0},i=960,o=500,a=e.utils.defaultColor(),s=Math.floor(1e5*Math.random()),l=null,u=function(t){return t.x},c=function(t){return t.y},d=function(t,e){return!isNaN(c(t,e))&&null!==c(t,e)},f="stack",p="zero",h="default",g="linear",v=!1,m=e.models.scatter(),y=250,b=d3.dispatch("areaClick","areaMouseover","areaMouseout","renderEnd","elementClick","elementMouseover","elementMouseout");m.pointSize(2.2).pointDomain([2.2,2.2]);var x=e.utils.renderWatch(b,y);function k(f){return x.reset(),x.models(m),f.each((function(f){var y=i-r.left-r.right,w=o-r.top-r.bottom;l=d3.select(this),e.utils.initSVG(l),t=m.xScale(),n=m.yScale();var M=f;f.forEach((function(t,e){t.seriesIndex=e,t.values=t.values.map((function(t,n){return t.index=n,t.seriesIndex=e,t}))}));var C=f.filter((function(t){return!t.disabled}));f=d3.layout.stack().order(h).offset(p).values((function(t){return t.values})).x(u).y(c).out((function(t,e,n){t.display={y:n,y0:e}}))(C);var A=l.selectAll("g.nv-wrap.nv-stackedarea").data([f]),S=A.enter().append("g").attr("class","nvd3 nv-wrap nv-stackedarea"),D=S.append("defs"),E=S.append("g"),F=A.select("g");E.append("g").attr("class","nv-areaWrap"),E.append("g").attr("class","nv-scatterWrap"),A.attr("transform","translate("+r.left+","+r.top+")"),0==m.forceY().length&&m.forceY().push(0),m.width(y).height(w).x(u).y((function(t){if(void 0!==t.display)return t.display.y+t.display.y0})).color(f.map((function(t,e){return t.color=t.color||a(t,t.seriesIndex),t.color}))),F.select(".nv-scatterWrap").datum(f).call(m),D.append("clipPath").attr("id","nv-edge-clip-"+s).append("rect"),A.select("#nv-edge-clip-"+s+" rect").attr("width",y).attr("height",w),F.attr("clip-path",v?"url(#nv-edge-clip-"+s+")":"");var T=d3.svg.area().defined(d).x((function(e,n){return t(u(e,n))})).y0((function(t){return n(t.display.y0)})).y1((function(t){return n(t.display.y+t.display.y0)})).interpolate(g),W=d3.svg.area().defined(d).x((function(e,n){return t(u(e,n))})).y0((function(t){return n(t.display.y0)})).y1((function(t){return n(t.display.y0)})),N=F.select(".nv-areaWrap").selectAll("path.nv-area").data((function(t){return t}));N.enter().append("path").attr("class",(function(t,e){return"nv-area nv-area-"+e})).attr("d",(function(t,e){return W(t.values,t.seriesIndex)})).on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),b.areaMouseover({point:t,series:t.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:t.seriesIndex})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),b.areaMouseout({point:t,series:t.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:t.seriesIndex})})).on("click",(function(t,e){d3.select(this).classed("hover",!1),b.areaClick({point:t,series:t.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:t.seriesIndex})})),N.exit().remove(),N.style("fill",(function(t,e){return t.color||a(t,t.seriesIndex)})).style("stroke",(function(t,e){return t.color||a(t,t.seriesIndex)})),N.watchTransition(x,"stackedArea path").attr("d",(function(t,e){return T(t.values,e)})),m.dispatch.on("elementMouseover.area",(function(t){F.select(".nv-chart-"+s+" .nv-area-"+t.seriesIndex).classed("hover",!0)})),m.dispatch.on("elementMouseout.area",(function(t){F.select(".nv-chart-"+s+" .nv-area-"+t.seriesIndex).classed("hover",!1)})),k.d3_stackedOffset_stackPercent=function(t){var e,n,r,i=t.length,o=t[0].length,a=[];for(n=0;n<o;++n){for(e=0,r=0;e<M.length;e++)r+=c(M[e].values[n]);if(r)for(e=0;e<i;e++)t[e][n][1]/=r;else for(e=0;e<i;e++)t[e][n][1]=0}for(n=0;n<o;++n)a[n]=0;return a}})),x.renderEnd("stackedArea immediate"),k}return k.dispatch=b,k.scatter=m,m.dispatch.on("elementClick",(function(){b.elementClick.apply(this,arguments)})),m.dispatch.on("elementMouseover",(function(){b.elementMouseover.apply(this,arguments)})),m.dispatch.on("elementMouseout",(function(){b.elementMouseout.apply(this,arguments)})),k.interpolate=function(t){return arguments.length?(g=t,k):g},k.duration=function(t){return arguments.length?(y=t,x.reset(y),m.duration(y),k):y},k.dispatch=b,k.scatter=m,k.options=e.utils.optionsFunc.bind(k),k._options=Object.create({},{width:{get:function(){return i},set:function(t){i=t}},height:{get:function(){return o},set:function(t){o=t}},defined:{get:function(){return d},set:function(t){d=t}},clipEdge:{get:function(){return v},set:function(t){v=t}},offset:{get:function(){return p},set:function(t){p=t}},order:{get:function(){return h},set:function(t){h=t}},interpolate:{get:function(){return g},set:function(t){g=t}},x:{get:function(){return u},set:function(t){u=d3.functor(t)}},y:{get:function(){return c},set:function(t){c=d3.functor(t)}},margin:{get:function(){return r},set:function(t){r.top=void 0!==t.top?t.top:r.top,r.right=void 0!==t.right?t.right:r.right,r.bottom=void 0!==t.bottom?t.bottom:r.bottom,r.left=void 0!==t.left?t.left:r.left}},color:{get:function(){return a},set:function(t){a=e.utils.getColor(t)}},style:{get:function(){return f},set:function(t){switch(f=t){case"stack":k.offset("zero"),k.order("default");break;case"stream":k.offset("wiggle"),k.order("inside-out");break;case"stream-center":k.offset("silhouette"),k.order("inside-out");break;case"expand":k.offset("expand"),k.order("default");break;case"stack_percent":k.offset(k.d3_stackedOffset_stackPercent),k.order("default")}}},duration:{get:function(){return y},set:function(t){y=t,x.reset(y),m.duration(y)}}}),e.utils.inheritOptions(k,m),e.utils.initOptions(k),k},e.models.stackedAreaChart=function(){"use strict";var t,n,r=e.models.stackedArea(),i=e.models.axis(),o=e.models.axis(),a=e.models.legend(),s=e.models.legend(),l=e.interactiveGuideline(),u=e.models.tooltip(),c=e.models.focus(e.models.stackedArea()),d={top:10,right:25,bottom:50,left:60},f=null,p=null,h=null,g=e.utils.defaultColor(),v=!0,m=!0,y="top",b=!0,x=!0,k=!1,w=!1,M=!1,C=!0,A="TOTAL",S=e.utils.state(),D=null,E=null,F=d3.dispatch("stateChange","changeState","renderEnd"),T=250,W=["Stacked","Stream","Expanded"],N={},O=250;S.style=r.style(),i.orient("bottom").tickPadding(7),o.orient(k?"right":"left"),u.headerFormatter((function(t,e){return i.tickFormat()(t,e)})).valueFormatter((function(t,e){return o.tickFormat()(t,e)})),l.tooltip.headerFormatter((function(t,e){return i.tickFormat()(t,e)})).valueFormatter((function(t,e){return null==t?"N/A":o.tickFormat()(t,e)}));var _=null,L=null;s.updateState(!1);var P=e.utils.renderWatch(F),B=(r.style(),d3.format("%"));function I(u){return P.reset(),P.models(r),b&&P.models(i),x&&P.models(o),u.each((function(u){var E=d3.select(this);e.utils.initSVG(E);var P,V=e.utils.availableWidth(p,E,d),j=e.utils.availableHeight(h,E,d)-(w?c.height():0);if(I.update=function(){E.transition().duration(O).call(I)},I.container=this,S.setter(function(t){return function(e){void 0!==e.style&&e.style,void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(u),I.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),style:r.style()}}}(u)).update(),S.disabled=u.map((function(t){return!!t.disabled})),!D)for(P in D={},S)S[P]instanceof Array?D[P]=S[P].slice(0):D[P]=S[P];if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(I,E),I;E.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale();var H=E.selectAll("g.nv-wrap.nv-stackedAreaChart").data([u]),R=H.enter().append("g").attr("class","nvd3 nv-wrap nv-stackedAreaChart").append("g"),z=H.select("g");R.append("g").attr("class","nv-legendWrap"),R.append("g").attr("class","nv-controlsWrap");var q=R.append("g").attr("class","nv-focus");if(q.append("g").attr("class","nv-background").append("rect"),q.append("g").attr("class","nv-x nv-axis"),q.append("g").attr("class","nv-y nv-axis"),q.append("g").attr("class","nv-stackedWrap"),q.append("g").attr("class","nv-interactive"),R.append("g").attr("class","nv-focusWrap"),m){var G=v&&"top"===y?V-T:V;if(a.width(G),z.select(".nv-legendWrap").datum(u).call(a),"bottom"===y){var Y=10+(b?12:0);d.bottom=Math.max(a.height()+Y,d.bottom);var X=(j=e.utils.availableHeight(h,E,d)-(w?c.height():0))+Y;z.select(".nv-legendWrap").attr("transform","translate(0,"+X+")")}else"top"===y&&(f||d.top==a.height()||(d.top=a.height(),j=e.utils.availableHeight(h,E,d)-(w?c.height():0)),z.select(".nv-legendWrap").attr("transform","translate("+(V-G)+","+-d.top+")"))}else z.select(".nv-legendWrap").selectAll("*").remove();if(v){var $=[{key:N.stacked||"Stacked",metaKey:"Stacked",disabled:"stack"!=r.style(),style:"stack"},{key:N.stream||"Stream",metaKey:"Stream",disabled:"stream"!=r.style(),style:"stream"},{key:N.expanded||"Expanded",metaKey:"Expanded",disabled:"expand"!=r.style(),style:"expand"},{key:N.stack_percent||"Stack %",metaKey:"Stack_Percent",disabled:"stack_percent"!=r.style(),style:"stack_percent"}];T=W.length/3*260,$=$.filter((function(t){return-1!==W.indexOf(t.metaKey)})),s.width(T).color(["#444","#444","#444"]),z.select(".nv-controlsWrap").datum($).call(s);var Q=Math.max(s.height(),m&&"top"===y?a.height():0);d.top!=Q&&(d.top=Q,j=e.utils.availableHeight(h,E,d)-(w?c.height():0)),z.select(".nv-controlsWrap").attr("transform","translate(0,"+-d.top+")")}else z.select(".nv-controlsWrap").selectAll("*").remove();H.attr("transform","translate("+d.left+","+d.top+")"),k&&z.select(".nv-y.nv-axis").attr("transform","translate("+V+",0)"),M&&(l.width(V).height(j).margin({left:d.left,top:d.top}).svgContainer(E).xScale(t),H.select(".nv-interactive").call(l)),z.select(".nv-focus .nv-background rect").attr("width",V).attr("height",j),r.width(V).height(j).color(u.map((function(t,e){return t.color||g(t,e)})).filter((function(t,e){return!u[e].disabled})));var Z,U=z.select(".nv-focus .nv-stackedWrap").datum(u.filter((function(t){return!t.disabled})));function J(){b&&z.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+j+")").transition().duration(O).call(i)}function K(){if(x){if("expand"===r.style()||"stack_percent"===r.style()){var t=o.tickFormat();_&&t===B||(_=t),o.tickFormat(B)}else _&&(o.tickFormat(_),_=null);z.select(".nv-focus .nv-y.nv-axis").transition().duration(0).call(o)}}if(b&&i.scale(t)._ticks(e.utils.calcTicksX(V/100,u)).tickSize(-j,0),x&&(Z="wiggle"===r.offset()?0:e.utils.calcTicksY(j/36,u),o.scale(n)._ticks(Z).tickSize(-V,0)),w){c.width(V),z.select(".nv-focusWrap").attr("transform","translate(0,"+(j+d.bottom+c.margin().top)+")").datum(u.filter((function(t){return!t.disabled}))).call(c);var tt=c.brush.empty()?c.xDomain():c.brush.extent();null!==tt&&et(tt)}else U.transition().call(r),J(),K();function et(t){z.select(".nv-focus .nv-stackedWrap").datum(u.filter((function(t){return!t.disabled})).map((function(e,n){return{key:e.key,area:e.area,classed:e.classed,values:e.values.filter((function(e,n){return r.x()(e,n)>=t[0]&&r.x()(e,n)<=t[1]})),disableTooltip:e.disableTooltip}}))).transition().duration(O).call(r),J(),K()}r.dispatch.on("areaClick.toggle",(function(t){1===u.filter((function(t){return!t.disabled})).length?u.forEach((function(t){t.disabled=!1})):u.forEach((function(e,n){e.disabled=n!=t.seriesIndex})),S.disabled=u.map((function(t){return!!t.disabled})),F.stateChange(S),I.update()})),a.dispatch.on("stateChange",(function(t){for(var e in t)S[e]=t[e];F.stateChange(S),I.update()})),s.dispatch.on("legendClick",(function(t,e){t.disabled&&($=$.map((function(t){return t.disabled=!0,t})),t.disabled=!1,r.style(t.style),S.style=r.style(),F.stateChange(S),I.update())})),l.dispatch.on("elementMousemove",(function(t){r.clearHighlights();var n,i,o,a=[],s=0,c=!0,d=!1;if(u.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(l,f){i=e.interactiveBisect(l.values,t.pointXValue,I.x());var p=l.values[i],h=I.y()(p,i);if(null!=h&&h>0&&(r.highlightPoint(f,i,!0),d=!0),f!==u.length-1||d||r.highlightPoint(f,i,!0),void 0!==p){void 0===n&&(n=p),void 0===o&&(o=I.xScale()(I.x()(p,i)));var v="expand"==r.style()?p.display.y:I.y()(p,i);a.push({key:l.key,value:v,color:g(l,l.seriesIndex),point:p}),C&&"expand"!=r.style()&&null!=v&&(s+=v,c=!1)}})),a.reverse(),a.length>2){var f=I.yScale().invert(t.mouseY),p=null;a.forEach((function(t,e){f=Math.abs(f);var n=Math.abs(t.point.display.y0),r=Math.abs(t.point.display.y);f>=n&&f<=r+n&&(p=e)})),null!=p&&(a[p].highlight=!0)}C&&"expand"!=r.style()&&a.length>=2&&!c&&a.push({key:A,value:s,total:!0});var h=I.x()(n,i),v=l.tooltip.valueFormatter();"expand"===r.style()||"stack_percent"===r.style()?(L||(L=v),v=d3.format(".1%")):L&&(v=L,L=null),l.tooltip.valueFormatter(v).data({value:h,series:a})(),l.renderGuideLine(o)})),l.dispatch.on("elementMouseout",(function(t){r.clearHighlights()})),c.dispatch.on("onBrush",(function(t){et(t)})),F.on("changeState",(function(t){void 0!==t.disabled&&u.length===t.disabled.length&&(u.forEach((function(e,n){e.disabled=t.disabled[n]})),S.disabled=t.disabled),void 0!==t.style&&(r.style(t.style),t.style),I.update()}))})),P.renderEnd("stacked Area chart immediate"),I}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.point.x=r.x()(t.point),t.point.y=r.y()(t.point),u.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)})),I.dispatch=F,I.stacked=r,I.legend=a,I.controls=s,I.xAxis=i,I.x2Axis=c.xAxis,I.yAxis=o,I.y2Axis=c.yAxis,I.interactiveLayer=l,I.tooltip=u,I.focus=c,I.dispatch=F,I.options=e.utils.optionsFunc.bind(I),I._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showLegend:{get:function(){return m},set:function(t){m=t}},legendPosition:{get:function(){return y},set:function(t){y=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return D},set:function(t){D=t}},noData:{get:function(){return E},set:function(t){E=t}},showControls:{get:function(){return v},set:function(t){v=t}},controlLabels:{get:function(){return N},set:function(t){N=t}},controlOptions:{get:function(){return W},set:function(t){W=t}},showTotalInTooltip:{get:function(){return C},set:function(t){C=t}},totalLabel:{get:function(){return A},set:function(t){A=t}},focusEnable:{get:function(){return w},set:function(t){w=t}},focusHeight:{get:function(){return c.height()},set:function(t){c.height(t)}},brushExtent:{get:function(){return c.brushExtent()},set:function(t){c.brushExtent(t)}},margin:{get:function(){return d},set:function(t){void 0!==t.top&&(d.top=t.top,f=t.top),d.right=void 0!==t.right?t.right:d.right,d.bottom=void 0!==t.bottom?t.bottom:d.bottom,d.left=void 0!==t.left?t.left:d.left}},focusMargin:{get:function(){return c.margin},set:function(t){c.margin.top=void 0!==t.top?t.top:c.margin.top,c.margin.right=void 0!==t.right?t.right:c.margin.right,c.margin.bottom=void 0!==t.bottom?t.bottom:c.margin.bottom,c.margin.left=void 0!==t.left?t.left:c.margin.left}},duration:{get:function(){return O},set:function(t){O=t,P.reset(O),r.duration(O),i.duration(O),o.duration(O)}},color:{get:function(){return g},set:function(t){g=e.utils.getColor(t),a.color(g),r.color(g),c.color(g)}},x:{get:function(){return r.x()},set:function(t){r.x(t),c.x(t)}},y:{get:function(){return r.y()},set:function(t){r.y(t),c.y(t)}},rightAlignYAxis:{get:function(){return k},set:function(t){k=t,o.orient(k?"right":"left")}},useInteractiveGuideline:{get:function(){return M},set:function(t){M=!!t,I.interactive(!t),I.useVoronoi(!t),r.scatter.interactive(!t)}}}),e.utils.inheritOptions(I,r),e.utils.initOptions(I),I},e.models.stackedAreaWithFocusChart=function(){return e.models.stackedAreaChart().margin({bottom:30}).focusEnable(!0)},e.models.sunburst=function(){"use strict";var t,n,r,i,o={top:0,right:0,bottom:0,left:0},a=600,s=600,l="count",u={count:function(t){return 1},value:function(t){return t.value||t.size},size:function(t){return t.value||t.size}},c=Math.floor(1e4*Math.random()),d=null,f=e.utils.defaultColor(),p=!1,h=function(t){return"count"===l?t.name+" #"+t.value:t.name+" "+(t.value||t.size)},g=.02,v=function(t,e){return t.name>e.name},m=function(t,e){return void 0!==t.parent?t.name+"-"+t.parent.name+"-"+e:t.name},y=!0,b=500,x=d3.dispatch("chartClick","elementClick","elementDblClick","elementMousemove","elementMouseover","elementMouseout","renderEnd"),k=d3.scale.linear().range([0,2*Math.PI]),w=d3.scale.sqrt(),M=d3.layout.partition().sort(v),C={},A=d3.svg.arc().startAngle((function(t){return Math.max(0,Math.min(2*Math.PI,k(t.x)))})).endAngle((function(t){return Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx)))})).innerRadius((function(t){return Math.max(0,w(t.y))})).outerRadius((function(t){return Math.max(0,w(t.y+t.dy))}));function S(t){return D(t)>90?180:0}function D(t){return(Math.max(0,Math.min(2*Math.PI,k(t.x)))+Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx))))/2*(180/Math.PI)-90}function E(t){var e=Math.max(0,Math.min(2*Math.PI,k(t.x)));return(Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx)))-e)/(2*Math.PI)}function F(t){var e=Math.max(0,Math.min(2*Math.PI,k(t.x)));return Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx)))-e>g}function T(e,n){var r=d3.interpolate(k.domain(),[t.x,t.x+t.dx]),o=d3.interpolate(w.domain(),[t.y,1]),a=d3.interpolate(w.range(),[t.y?20:0,i]);return 0===n?function(){return A(e)}:function(t){return k.domain(r(t)),w.domain(o(t)).range(a(t)),A(e)}}function W(t){var e=d3.interpolate({x:t.x0,dx:t.dx0,y:t.y0,dy:t.dy0},t);return function(n){var r=e(n);return t.x0=r.x,t.dx0=r.dx,t.y0=r.y,t.dy0=r.dy,A(r)}}function N(t){t.forEach((function(t){var e=m(t),n=C[e];n?(t.dx0=n.dx,t.x0=n.x,t.dy0=n.dy,t.y0=n.y):(t.dx0=t.dx,t.x0=t.x,t.dy0=t.dy,t.y0=t.y),function(t){var e=m(t);C[e]||(C[e]={});var n=C[e];n.dx=t.dx,n.x=t.x,n.dy=t.dy,n.y=t.y}(t)}))}function O(e){var n=d.selectAll("text"),r=d.selectAll("path");n.transition().attr("opacity",0),t=e,r.transition().duration(b).attrTween("d",T).each("end",(function(t){t.x>=e.x&&t.x<e.x+e.dx&&t.depth>=e.depth&&d3.select(this.parentNode).select("text").transition().duration(b).text((function(t){return h(t)})).attr("opacity",(function(t){return F(t)?1:0})).attr("transform",(function(){var n=this.getBBox().width;if(0===t.depth)return"translate("+n/2*-1+",0)";if(t.depth===e.depth)return"translate("+(w(t.y)+5)+",0)";var r=D(t),i=S(t);return 0===i?"rotate("+r+")translate("+(w(t.y)+5)+",0)":"rotate("+r+")translate("+(w(t.y)+n+5)+",0)rotate("+i+")"}))}))}var _=e.utils.renderWatch(x);function L(t){return _.reset(),t.each((function(t){d=d3.select(this),n=e.utils.availableWidth(a,d,o),r=e.utils.availableHeight(s,d,o),i=Math.min(n,r)/2,w.range([0,i]);var g=d.select("g.nvd3.nv-wrap.nv-sunburst");g[0][0]?g.attr("transform","translate("+(n/2+o.left+o.right)+","+(r/2+o.top+o.bottom)+")"):g=d.append("g").attr("class","nvd3 nv-wrap nv-sunburst nv-chart-"+c).attr("transform","translate("+(n/2+o.left+o.right)+","+(r/2+o.top+o.bottom)+")"),d.on("click",(function(t,e){x.chartClick({data:t,index:e,pos:d3.event,id:c})})),M.value(u[l]||u.count);var v=M.nodes(t[0]).reverse();N(v);var k=g.selectAll(".arc-container").data(v,m);k.enter().append("g").attr("class","arc-container").append("path").attr("d",A).style("fill",(function(t){return t.color?t.color:f(y?(t.children?t:t.parent).name:t.name)})).style("stroke","#FFF").on("click",(function(t,e){O(t),x.elementClick({data:t,index:e})})).on("mouseover",(function(t,e){d3.select(this).classed("hover",!0).style("opacity",.8),x.elementMouseover({data:t,color:d3.select(this).style("fill"),percent:E(t)})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1).style("opacity",1),x.elementMouseout({data:t})})).on("mousemove",(function(t,e){x.elementMousemove({data:t})})),k.each((function(t){d3.select(this).select("path").transition().duration(b).attrTween("d",W)})),p&&(k.selectAll("text").remove(),k.append("text").text((function(t){return h(t)})).transition().duration(b).attr("opacity",(function(t){return F(t)?1:0})).attr("transform",(function(t){var e=this.getBBox().width;if(0===t.depth)return"rotate(0)translate("+e/2*-1+",0)";var n=D(t),r=S(t);return 0===r?"rotate("+n+")translate("+(w(t.y)+5)+",0)":"rotate("+n+")translate("+(w(t.y)+e+5)+",0)rotate("+r+")"}))),O(v[v.length-1]),k.exit().transition().duration(b).attr("opacity",0).each("end",(function(t){var e=m(t);C[e]=void 0})).remove()})),_.renderEnd("sunburst immediate"),L}return L.dispatch=x,L.options=e.utils.optionsFunc.bind(L),L._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return s},set:function(t){s=t}},mode:{get:function(){return l},set:function(t){l=t}},id:{get:function(){return c},set:function(t){c=t}},duration:{get:function(){return b},set:function(t){b=t}},groupColorByParent:{get:function(){return y},set:function(t){y=!!t}},showLabels:{get:function(){return p},set:function(t){p=!!t}},labelFormat:{get:function(){return h},set:function(t){h=t}},labelThreshold:{get:function(){return g},set:function(t){g=t}},sort:{get:function(){return v},set:function(t){v=t}},key:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return o},set:function(t){o.top=null!=t.top?t.top:o.top,o.right=null!=t.right?t.right:o.right,o.bottom=null!=t.bottom?t.bottom:o.bottom,o.left=null!=t.left?t.left:o.left}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t)}}}),e.utils.initOptions(L),L},e.models.sunburstChart=function(){"use strict";var t=e.models.sunburst(),n=e.models.tooltip(),r={top:30,right:20,bottom:20,left:20},i=e.utils.defaultColor(),o=!1,a=(Math.round(1e5*Math.random()),null),s=null,l=250,u=d3.dispatch("stateChange","changeState","renderEnd"),c=e.utils.renderWatch(u);function d(n){return c.reset(),c.models(t),n.each((function(n){var i=d3.select(this);e.utils.initSVG(i);var o=e.utils.availableWidth(null,i,r),a=e.utils.availableHeight(null,i,r);if(d.update=function(){0===l?i.call(d):i.transition().duration(l).call(d)},d.container=i,!n||!n.length)return e.utils.noData(d,i),d;i.selectAll(".nv-noData").remove(),t.width(o).height(a).margin(r),i.call(t)})),c.renderEnd("sunburstChart immediate"),d}return n.duration(0).headerEnabled(!1).valueFormatter((function(t){return t})),t.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:t.data.name,value:t.data.value||t.data.size,color:t.color,percent:t.percent},o||(delete t.percent,delete t.series.percent),n.data(t).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){n.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(t){n()})),d.dispatch=u,d.sunburst=t,d.tooltip=n,d.options=e.utils.optionsFunc.bind(d),d._options=Object.create({},{noData:{get:function(){return s},set:function(t){s=t}},defaultState:{get:function(){return a},set:function(t){a=t}},showTooltipPercent:{get:function(){return o},set:function(t){o=t}},color:{get:function(){return i},set:function(e){i=e,t.color(i)}},duration:{get:function(){return l},set:function(e){l=e,c.reset(l),t.duration(l)}},margin:{get:function(){return r},set:function(e){r.top=void 0!==e.top?e.top:r.top,r.right=void 0!==e.right?e.right:r.right,r.bottom=void 0!==e.bottom?e.bottom:r.bottom,r.left=void 0!==e.left?e.left:r.left,t.margin(r)}}}),e.utils.inheritOptions(d,t),e.utils.initOptions(d),d},e.version="1.8.6",d3}.apply(e,r))||(t.exports=i)},38:function(t,e,n){"use strict";n.r(e),n.d(e,"ChartData",(function(){return r}));class r{getChartOptions(t){return{chart:{interpolate:"monotone",type:"lineChart",height:500,margin:{left:80,right:80},x:function(t){return t[0]},y:function(t){return t[1]},clipEdge:!0,noData:t.instant("resource.no_data"),showControls:!1,duration:0,rightAlignYAxis:!1,useInteractiveGuideline:!0,xAxis:{showMaxMin:!1,tickFormat:function(t){return d3.time.format("%X")(new Date(t))}},yAxis:{showMaxMin:!1,tickFormat:function(t){return t}},legend:{maxKeyLength:100},color:d3.scale.category10().range()},title:{enable:!0,text:this.getTitle()},subtitle:{className:"chart-additional-info",enable:!0,text:this.getSubTitle()}}}getTitle(){return"No chart title set"}setTitle(t){this.chartOptions.title.enable=!0,this.chartOptions.title.text=t}getSubTitle(){}setSubTitle(t){this.chartOptions.subtitle.enable=!0,this.chartOptions.subtitle.html=t}static get DEFAULT_MULTIPLIER(){return 1.2}static get MAXIMUM_DIVISIONS(){return 10}constructor(t,e,n,r){this.disableRangeUpdate=n,this.disableOldDataRemoval=r,this.translateService=t,this.range=150,this.chartOptions=this.getChartOptions(t),this.chartSetup(this.chartOptions),this.dataHolder=this.createDataHolder(),this.firstLoad=!0}chartSetup(t){}createDataHolder(){throw new Error("Must implement data holder creation")}addData(t,e){this.disableOldDataRemoval||this.removeOldData(this.dataHolder,this.range),this.addNewData(this.dataHolder,t,e,this.isFirstLoad()),this.disableRangeUpdate||this.updateRange(this.dataHolder),this.firstLoad&&(this.firstLoad=!1)}removeOldData(t,e){t[0].values.length>e&&t.forEach(t=>t.values.shift())}addNewData(t,e,n,r){}updateRange(t,e){const[n]=r.calculateMaxChartValueAndDivisions(t,e);this.chartOptions.chart.yDomain=[0,n]}isFirstLoad(){return this.firstLoad}static getMaxValueFromDataHolder(t){return Math.max(...t.filter(t=>!t.disabled).flatMap(t=>r.getMaxValueForDataSeries(t)))}static getMaxValueForDataSeries(t){return Math.max(...t.values.map(t=>t[1]))}static calculateMaxChartValueAndDivisions(t,e){let n;n=Array.isArray(t)?r.getMaxValueFromDataHolder(t):r.getMaxValueForDataSeries(t);const i=Math.round(n*(e||r.DEFAULT_MULTIPLIER))||1;return[i,Math.ceil(i/r.MAXIMUM_DIVISIONS)]}static getIntegerRangeForValues(t,e){const[n,i]=r.calculateMaxChartValueAndDivisions(t,e);return d3.range(0,n+1,i)}}},39:function(t,e){function n(t,e){return{showToastMessageWithDelay:function(n){return new Promise(r=>{t.success(e.instant(n)),setTimeout(r,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",n),n.$inject=["toastr","$translate"]},40:function(t,e,n){"use strict";n.r(e),n.d(e,"HeapMemoryChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!1,!1)}getTitle(){return this.translateService.instant("resource.memory.heap.label")}createDataHolder(){return[{key:this.translateService.instant("resource.memory.committed"),values:[]},{key:this.translateService.instant("resource.memory.used"),area:"true",values:[]}]}addNewData(t,e,n){const[r,i]=t,o=this.parseData(n);r.values.push([e,o.committed]),i.values.push([e,o.used]),this.setMaxHeapSize(o.max,t)}parseData(t){return t.heapMemoryUsage}setMaxHeapSize(t,e){if(t>0){const e=this.formatBytesValue(t);this.setSubTitle(this.translateService.instant("resource.memory.heap.max",{max:e}))}}updateRange(t){this.setScale(t),super.updateRange(t)}setScale(t){this.chartOptions.chart.yAxis.tickFormat=e=>this.formatBytesValue(e,t)}formatBytesValue(t,e){let n=t;e&&(n=Math.max(...e.filter(t=>!t.disabled).flatMap(t=>t.values).flatMap(t=>t[1])));const r=Math.floor(Math.log(n)/Math.log(1024));return`${(parseFloat(t)/Math.pow(1024,r)).toFixed(2)} ${["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][r]}`}}},42:function(t,e){angular.module("graphdb.framework.rest.cluster.service",[]).factory("ClusterRestService",n),n.$inject=["$http"];function n(t){return{getClusterConfig:function(){return t.get("rest/cluster/config")},createCluster:function(e){return t.post("rest/cluster/config",e)},updateCluster:function(e){e.nodes&&delete e.nodes;return t.patch("rest/cluster/config",e)},deleteCluster:function(e){const n=$.param({force:e});return t.delete("rest/cluster/config?"+n)},addNodesToCluster:function(e){return t.post("rest/cluster/config/node",{nodes:e})},removeNodesFromCluster:function(e){return t.delete("rest/cluster/config/node",{data:{nodes:e},headers:{"Content-Type":"application/json"}})},getClusterStatus:function(){return t.get("rest/cluster/group/status")},getNodeStatus:function(){return t.get("rest/cluster/node/status")}}}},45:function(t,e,n){"use strict";n.r(e);n(5);function r(t,e,n,r){return{restrict:"AE",template:'<a class="nav-link" role="tab" data-toggle="tab" blur="submit" editable-text="tab.name" e-form="editCurrentlySelectedOnly" ng-click="selectThisTab($event)" ng-dblclick="editCurrentTab()" ><span ng-class="{\'text-muted\': !tab.name}">{{ tab.name || (\'sparql.tab.directive.unnamed.tab.title\' | translate)}}</span><button type="button" ng-click="deleteTab($event)" class="btn btn-link btn-sm secondary delete-sparql-tab-btn" title="Delete tab"><i class="icon-close"></i></button></a>',replace:!0,controller:["$scope","$element","$rootScope","ModalService","toastr","$translate",function(t,r,i,o,a,s){function l(t){return $(t).attr("data-id")}function u(t){$('a[data-id = "'+t+'"]').tab("show")}t.state={},$(r).on("shown.bs.tab",(function(t){i.$broadcast("tabAction",t)})),t.deleteTab=function(c){if(c.preventDefault(),c.stopPropagation(),t.tabs.length<2)return void a.warning(s.instant("sparql.tab.directive.close.last.warning"));c.shiftKey?(t.state.selectedTabId=l(r),o.openSimpleModal({title:s.instant("common.confirm"),message:s.instant("sparql.tab.directive.delete.all.tabs.warning"),warning:!0}).result.then((function(){var r;r=t.state.selectedTabId,t.tabs=t.tabs.filter((function(t){if(t.id===r)return t})),u(t.tabs[0].id),e.set(n.TABS_STATE,t.tabs),i.$broadcast("deleteAllexeptSelected",t.tabs)}))):(t.state.idForDelete=l(r),o.openSimpleModal({title:s.instant("common.confirm"),message:s.instant("sparql.tab.directive.close.tab.warning"),warning:!0}).result.then((function(){!function(e){if(angular.isUndefined(e))throw"Delete by id was called with undefined id";const n=function(e){for(let n=0;n<t.tabs.length;n++){if(t.tabs[n].id===e)return n}}(e);t.tabs.splice(n,1),e===t.currentQuery.id&&t.tabs.length>0&&u(n>0?t.tabs[n-1].id:t.tabs[0].id)}(t.state.idForDelete)})));angular.element(document).find(".CodeMirror textarea:first-child").focus()},t.editCurrentTab=function(){if(l(r)!==t.currentQuery.id)return;t.editCurrentlySelectedOnly.$show();const e=$(".editable-buttons");e.children(".btn.btn-primary").addClass("btn-sm"),e.children(".btn.btn-default").addClass("btn-sm"),$(".editable-controls .editable-input").addClass("form-control-sm").on("change",(function(e){t.currentQuery.name=e.currentTarget.$$currentValue})),$(".editable-buttons .glyphicon.glyphicon-ok").removeClass("glyphicon glyphicon-ok").addClass("fa fa-check"),$(".editable-buttons .glyphicon.glyphicon-remove").removeClass("glyphicon glyphicon-remove").addClass("fa fa-close")},t.selectThisTab=function(e){e.preventDefault(),e.stopPropagation(),t.isTabChangeOk(!1)&&$(r).tab("show")}}]}}angular.module("graphdb.framework.core.directives.queryeditor.sparqltab",["graphdb.framework.core","graphdb.framework.utils.localstorageadapter"]).directive("sparqlTab",r),r.$inject=["$rootScope","LocalStorageAdapter","LSKeys","ModalService"]},46:function(t,e,n){"use strict";n.r(e),n.d(e,"FileDescriptorsChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!1,!1)}getTitle(){return this.translateService.instant("resource.system.file_descriptors.label")}createDataHolder(){return[{key:this.translateService.instant("resource.system.file_descriptors.open"),area:"true",values:[]}]}addNewData(t,e,n){n.openFileDescriptors?(t[0].values.push([e,n.openFileDescriptors]),this.chartOptions.title.enable||(this.chartOptions.title.enable=!0),this.setSubTitle(this.translateService.instant("resource.system.file_descriptors.max",{max:n.maxFileDescriptors}))):this.setSubTitle(this.translateService.instant("resource.system.file_descriptors.only_unix"))}updateRange(t){super.updateRange(t,2)}}},47:function(t,e,n){"use strict";n.r(e),n.d(e,"NonHeapMemoryChart",(function(){return i}));var r=n(40);class i extends r.HeapMemoryChart{constructor(t,e){super(t,e,!1,!1)}getTitle(){return this.translateService.instant("resource.memory.non_heap.label")}parseData(t){return t.nonHeapMemoryUsage}}},48:function(t,e,n){"use strict";n.r(e),n.d(e,"CpuLoadChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!1,!1)}chartSetup(t){t.chart.yAxis.tickFormat=function(t){return t+"%"}}getTitle(){return this.translateService.instant("resource.system.cpu_load.label")}createDataHolder(){return[{key:this.translateService.instant("resource.system.cpu_load.label"),values:[]}]}addNewData(t,e,n){t[0].values.push([e,this.formatValue(n.cpuLoad)])}formatValue(t){return parseFloat(t).toFixed(4)}updateRange(t){const e=Math.max(...t[0].values.flatMap(t=>t[1])),n=e>50?100:2*e;this.chartOptions.chart.yDomain=[0,n]}}},49:function(t,e,n){"use strict";n.r(e),n.d(e,"DiskStorageChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!0,!0)}chartSetup(t){const e={type:"multiBarHorizontalChart",stacked:!0,showControls:!1,color:d3.scale.category10().range(),xAxis:{showMaxMin:!1,tickFormat:function(t){return t}},yAxis:{showMaxMin:!1,tickFormat:function(t){return(100*t).toFixed(2)+"%"}},yDomain:[0,1]};Object.assign(t.chart,e)}getTitle(){return this.translateService.instant("resource.storage.label")}createDataHolder(){return[{key:this.translateService.instant("resource.storage.used"),values:[]},{key:this.translateService.instant("resource.storage.free"),values:[]}]}addNewData(t,e,n,r){const i=n.storageMemory,[o,a]=t;r&&(o.values.push([this.translateService.instant("resource.storage.data"),0]),o.values.push([this.translateService.instant("resource.storage.work"),0]),o.values.push([this.translateService.instant("resource.storage.logs"),0]),a.values.push([this.translateService.instant("resource.storage.data"),1]),a.values.push([this.translateService.instant("resource.storage.work"),1]),a.values.push([this.translateService.instant("resource.storage.logs"),1])),o.values[0][1]=i.dataDirUsed/(i.dataDirUsed+i.dataDirFree),o.values[1][1]=i.workDirUsed/(i.workDirUsed+i.workDirFree),o.values[2][1]=i.logsDirUsed/(i.logsDirUsed+i.logsDirFree),a.values[0][1]=i.dataDirFree/(i.dataDirUsed+i.dataDirFree),a.values[1][1]=i.workDirFree/(i.workDirUsed+i.workDirFree),a.values[2][1]=i.logsDirFree/(i.logsDirUsed+i.logsDirFree)}}},50:function(t,e,n){"use strict";n.r(e),n.d(e,"QueriesChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!1,!1)}getTitle(){return this.translateService.instant("resource.queries.label")}chartSetup(t){t.chart.yAxis.tickValues=()=>i.getIntegerRangeForValues(this.dataHolder)}createDataHolder(){return[{key:this.translateService.instant("resource.queries.running"),values:[]}]}addNewData(t,e,n){const{activeQueryData:r,performanceData:i}=n;t[0].values.push([e,r.length]);const o=i.queries.slow,a=i.queries.suboptimal;this.setSubTitle(this.translateService.instant("resource.queries.slow_and_suboptimal",{slowQueries:o,suboptimal:a}))}}},51:function(t,e,n){"use strict";n.r(e),n.d(e,"GlobalCacheChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!1,!1)}getTitle(){return this.translateService.instant("resources.global_cache.label")}createDataHolder(){return[{key:this.translateService.instant("resources.global_cache.hits"),values:[]},{key:this.translateService.instant("resources.global_cache.miss"),values:[]}]}addNewData(t,e,n){const[r,i]=t;r.values.push([e,n.cacheHit]),i.values.push([e,n.cacheMiss])}}},52:function(t,e,n){"use strict";n.r(e),n.d(e,"ConnectionsChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!1,!1)}chartSetup(t){t.chart.yAxis.tickValues=()=>i.getIntegerRangeForValues(this.dataHolder)}getTitle(){return this.translateService.instant("resource.connections.label")}createDataHolder(){return[{key:this.translateService.instant("resource.connections.active"),values:[]},{key:this.translateService.instant("resource.connections.open"),values:[]}]}addNewData(t,e,n){const r=n.performanceData;t[0].values.push([e,r.activeTransactions]),t[1].values.push([e,r.openConnections])}}},53:function(t,e,n){"use strict";n.r(e),n.d(e,"ClusterHealthChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!0,!1),this.nodesCount=0}chartSetup(t){const e={type:"stackedAreaChart",interpolate:"step-after",stacked:!0,yAxis:{showMaxMin:!1,tickFormat:function(t){return t},tickValues:()=>d3.range(0,this.nodesCount+1,1)}};Object.assign(t.chart,e)}getTitle(){return this.translateService.instant("resources.cluster_health.label")}createDataHolder(){return[{key:this.translateService.instant("resources.cluster_health.in_sync"),values:[]},{key:this.translateService.instant("resources.cluster_health.syncing"),color:"#ff5508",values:[]},{key:this.translateService.instant("resources.cluster_health.out_sync"),color:"#f52121",values:[]},{key:this.translateService.instant("resources.cluster_health.disconnected"),color:"#999999",values:[]}]}addNewData(t,e,n){const r=n.nodesStats;this.nodesCount=r.nodesInCluster;const[i,o,a,s]=t;i.values.push([e,r.nodesInSync]),a.values.push([e,r.nodesOutOfSync]),s.values.push([e,r.nodesDisconnected]),o.values.push([e,r.nodesSyncing]);const l={leaderElections:n.term,failedRecoveries:n.failureRecoveriesCount,failedTransactions:n.failedTransactionsCount};this.setSubTitle(this.translateService.instant("resource.cluster_health.additional_data",l))}}},54:function(t,e,n){"use strict";n.r(e),n.d(e,"EpoolChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,e,!1,!1)}chartSetup(t){const e={type:"multiChart",yAxis1:{showMaxMin:!1,axisLabel:this.translateService.instant("resource.epool.reads"),axisLabelDistance:-10,rotateYLabel:!0,tickFormat:function(t){return t},tickValues:()=>i.getIntegerRangeForValues(this.dataHolder[0])},yAxis2:{showMaxMin:!1,axisLabel:this.translateService.instant("resource.epool.writes"),axisLabelDistance:-10,rotateYLabel:!0,tickFormat:function(t){return t},tickValues:()=>i.getIntegerRangeForValues(this.dataHolder[1])},y1Domain:[0,1],y2Domain:[0,1]};Object.assign(t.chart,e)}getTitle(){return this.translateService.instant("resource.epool.label")}createDataHolder(){return[{key:this.translateService.instant("resource.epool.reads"),type:"line",yAxis:1,values:[]},{key:this.translateService.instant("resource.epool.writes"),type:"line",yAxis:2,values:[]}]}addNewData(t,e,n,r){const i=n.performanceData,[o,a]=t;let s=0,l=0;const u=i.entityPool.epoolReads,c=i.entityPool.epoolWrites;if(!r){s=u-o.values[o.values.length-1][2],l=c-a.values[o.values.length-1][2]}o.values.push([e,s,u]),a.values.push([e,l,c])}updateRange(t){this.chartOptions.chart.yDomain1=this.getAxisDomain(t[0]),this.chartOptions.chart.yDomain2=this.getAxisDomain(t[1])}getAxisDomain(t){const[e]=i.calculateMaxChartValueAndDivisions(t);return[0,e]}}},61:function(t,e,n){"use strict";n.r(e);n(4),n(10),n(13),n(258),n(42);var r=n(46),i=n(40),o=n(47),a=n(48),s=n(49),l=n(50),u=n(51),c=n(52),d=n(53),f=n(54);angular.module("graphdb.framework.jmx.resources.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","graphdb.framework.rest.cluster.service"]).controller("ResourcesCtrl",["$scope","$timeout","MonitoringRestService","$translate","$repositories","$q","ClusterRestService",function(t,e,n,p,h,g,v){t.resourceMonitorData={cpuLoad:new a.CpuLoadChart(p),fileDescriptors:new r.FileDescriptorsChart(p),heapMemory:new i.HeapMemoryChart(p),offHeapMemory:new o.NonHeapMemoryChart(p),diskStorage:new s.DiskStorageChart(p)},t.performanceMonitorData={connectionsChart:new c.ConnectionsChart(p),epoolChart:new f.EpoolChart(p),queriesChart:new l.QueriesChart(p)},t.structuresMonitorData={globalCacheChart:new u.GlobalCacheChart(p)},t.clusterHealthChart=new d.ClusterHealthChart(p),t.activeTab="resourceMonitor",t.error=!0,t.hasCluster=!1;t.loader=!0,t.switchTab=e=>{t.activeTab=e},t.getActiveRepository=function(){return h.getActiveRepository()};const m=function(t){return n.monitorQueryTransactionStatistics(t).then((function(t){return t.data}))},y=function(t){return n.monitorQuery(t).then((function(t){return t.data}))},b=function(){return n.monitorCluster().then((function(e){k(e,(e,n)=>t.clusterHealthChart.addData(e,n))}))},x=t=>{if(t.error.hasError){if(3===t.error.retries)return t.poll&&e.cancel(t.poll),Promise.resolve();t.error.retries++}return t.fetchFn().then(()=>{C(t)}).catch(e=>{M(t,e)}).finally(()=>{t.poll&&e.cancel(t.poll),t.poll=e(()=>x(t),2e3)})},k=(t,e)=>{const n=t.data;n&&w(n,e)},w=(t,e)=>{e(new Date,t)},M=(e,n)=>{e.error.hasError=!!n,e.error.hasError&&(e.error.message=getError(n)),t.error=Object.values(t.monitors).some(t=>t.error.hasError)},C=e=>{e.error.hasError=!1,e.error.message="",t.error=Object.values(t.monitors).some(t=>t.error.hasError)};t.monitors=[],t.monitors.push({error:{hasError:!1,message:"",retries:0},fetchFn:function(){return n.monitorResources().then((function(e){k(e,(e,n)=>{Object.values(t.resourceMonitorData).forEach(t=>{t.addData(e,n)})})}))},poll:null}),t.monitors.push({error:{hasError:!1,message:"",retries:0},fetchFn:function(){const e=t.getActiveRepository();return e?n.monitorStructures(e).then((function(e){k(e,(e,n)=>{Object.values(t.structuresMonitorData).forEach(t=>{t.addData(e,n)})})})):Promise.resolve()},poll:null}),t.monitors.push({error:{hasError:!1,message:"",retries:0},fetchFn:function(){const e=t.getActiveRepository();return e?g.all([m(e),y(e)]).then(e=>{const[n,r]=e;k({data:{performanceData:n,activeQueryData:r}},(e,n)=>{Object.values(t.performanceMonitorData).forEach(t=>{t.addData(e,n)})})}):Promise.resolve()},poll:null}),v.getNodeStatus().then(()=>{t.hasCluster=!0;const e={error:{hasError:!1,message:"",retries:0},fetchFn:b,poll:null};t.monitors.push(e),x(e)}).catch(()=>{t.hasCluster=!1});let A=null;g.all(t.monitors.map(t=>x(t))).finally(()=>{t.loader&&(A&&e.cancel(A),A=e((function(){t.loader=!1}),500))}),t.$on("$destroy",(function(){A&&e.cancel(A);for(const n of t.monitors)n.poll&&e.cancel(n.poll)}))}])},91:function(t,e,n){"use strict";n.r(e);n(4),n(10),n(13),n(39);function r(t,e,n,r,i,o){t.getSqlConfigurations=function(){!e.getActiveRepository()||e.isActiveRepoOntopType()||e.isActiveRepoFedXType()?t.jdbcConfigurations=[]:n.getJdbcConfigurations().success((function(e){t.jdbcConfigurations=e})).error((function(t){const e=getError(t);r.error(e,o.instant("jdbc.not.get.SQL.msg"))}))},t.$watch((function(){return e.getActiveRepository()}),(function(){t.getSqlConfigurations()})),t.deleteConfiguration=function(e){i.openSimpleModal({title:o.instant("common.warning"),message:o.instant("jdbc.delete.sql.table.warning.msg",{name:e}),warning:!0}).result.then((function(){n.deleteJdbcConfiguration(e).success((function(){t.getSqlConfigurations()})).error((function(t){r.error(getError(t),o.instant("jdbc.not.delete.sql.msg"))}))}))}}function i(t,e,n,r,i,o,a,s,l,u,c){t.name=e.search().name||"",t.getNamespaces=function(){v(!0,c.instant("common.refreshing.namespaces"),c.instant("common.extra.message")),s.getRepositoryNamespaces().success((function(e){const n={};e.results.bindings.forEach((function(t){n[t.prefix.value]=t.namespace.value})),t.namespaces=n})).error((function(e){t.repositoryError=getError(e)})).finally((function(){v(!1),m()}))},t.setLoader=v,t.addKnownPrefixes=b,t.page=1,t.noPadding={paddingRight:0,paddingLeft:0},t.sqlTypes=["string","iri","boolean","byte","short","int","long","float","double","decimal","date","time","timestamp","Get suggestion..."],t.currentTabConfig={},t.orientationViewMode=!0,t.currentQuery={},t.$watch((function(){return r.getActiveRepository()}),(function(t,n){t!==n&&e.path("jdbc")}));let d=null;t.goBack=function(){d=o((function(){i.history.back()}),1e3)};const f=t.$on("$locationChangeStart",(function(e){!function(e){t.currentQuery.isPristine||(confirm(c.instant("jdbc.warning.unsaved.changes"))?(window.removeEventListener("beforeunload",p),f(),o.cancel(d)):e.preventDefault())}(e)}));function p(e){t.currentQuery.isPristine||(e.returnValue=!0)}window.addEventListener("beforeunload",p),t.$on("$destroy",(function(t){window.removeEventListener("beforeunload",p),f(),o.cancel(d)}));const h={id:"1",name:"",query:"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\n# Selects two variables to use as columns\nSELECT ?id ?label {\n ?id rdfs:label ?label\n # The following placeholder must be present in the query\n #!filter\n}",inference:!0,sameAs:!0,isNewConfiguration:!0,isPristine:!0};var g;function v(e,n,r){const i=angular.element(document.getElementById("yasr-inner"));t.queryIsRunning=e,e?(t.queryStartTime=Date.now(),t.countTimeouted=!1,t.progressMessage=n,t.extraMessage=r,i.addClass("hide")):(t.progressMessage="",t.extraMessage="",i.removeClass("hide")),null===t.$$phase&&t.$apply()}function m(){t.tabsData=[t.currentQuery];const e=t.currentQuery;t.currentQuery.query?window.editor.setValue(t.currentQuery.query):window.editor.setValue(" "),o((function(){t.currentTabConfig={},t.currentTabConfig.queryType=e.queryType,t.currentTabConfig.resultsCount=e.resultsCount,t.currentTabConfig.offset=e.offset,t.currentTabConfig.allResultsCount=e.allResultsCount,t.currentTabConfig.page=e.page,t.currentTabConfig.pageSize=e.pageSize,t.currentTabConfig.timeFinished=e.timeFinished,t.currentTabConfig.timeTook=e.timeTook,t.currentTabConfig.sizeDelta=e.sizeDelta,t.$apply()}),0),t.canWriteActiveRepo()||(window.editor.options.readOnly=!0)}function y(){t.tabsData=t.tabs=[h],t.currentQuery=angular.copy(h),k(),window.editor&&(t.setQuery(t.currentQuery.query),m()),t.$watch((function(){return t.currentQuery.query}),(function(e,n){e!==n&&t.setDirty()}))}function b(){l.addKnownPrefixes(JSON.stringify(window.editor.getValue())).success((function(t){angular.isDefined(window.editor)&&angular.isDefined(t)&&t!==window.editor.getValue()&&window.editor.setValue(t)})).error((function(t){const e=getError(t);return n.error(e,c.instant("common.add.known.prefixes.error")),!0}))}function x(){A()&&a.getColumnNames(t.currentQuery.query).success((function(e){a.getColumnsTypeSuggestion(t.currentQuery.query,e).success((function(n){const r=[];_.forEach(e,(function(t){r.push({column_name:t,column_type:n[t].column_type,nullable:!0,sparql_type:n[t].sparql_type})})),t.currentQuery.columns=r,t.setDirty()})).error((function(t){n.error(getError(t),c.instant("jdbc.not.suggest.column.types"))}))})).error((function(t){n.error(getError(t),c.instant("jdbc.not.suggest.column.names"))}))}function k(){2===t.page?t.viewMode="editor":t.viewMode="none"}function w(t,e,n,r,i){let o=n[r].value;o=o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return"<div class = 'literal-cell'>"+("<p class='nonUri' style='border: none; background-color: transparent; padding: 0; margin: 0'>"+o+"</p>")+"</div>"}function M(){return window.editor&&"SELECT"===window.editor.getQueryType()}function C(){return A()&&function(){if(!t.currentQuery.columns||!t.currentQuery.columns.length)return n.error(c.instant("jdbc.warning.one.column.msg"),c.instant("jdbc.invalid.columns")),!1;if(t.containsUnknownColumns())return n.error(c.instant("jdbc.warning.all.column.msg"),c.instant("jdbc.invalid.columns")),!1;return!0}()}function A(){return!!M()||(n.error(c.instant("jdbc.warning.invalid.query"),c.instant("jdbc.invalid.query)")),!1)}t.resetCurrentTabConfig=function(){t.currentTabConfig={pageSize:100,page:1,allResultsCount:0,resultsCount:0,queryType:""}},t.saveTab=function(){},t.setQuery=function(t){window.editor.setValue(t||" ")},t.name?(g=t.name,a.getJdbcConfiguration(g).success((function(t){h.query=t.query,h.name=t.name,h.columns=t.columns,h.isNewConfiguration=!t.name,y()})).error((function(t){const e=getError(t);n.error(e,c.instant("jdbc.not.get.sql.msg2"))}))):y(),t.goToPage=function(e){t.page=e;const n=t.currentQuery.columns;2!==e||n&&0!==n.length||!M()||t.getColumnsSuggestions(),k()},t.save=function(){C()&&(t.currentQuery.name?t.currentQuery.isNewConfiguration?a.createNewJdbcConfiguration(t.currentQuery).success((function(){t.currentQuery.isPristine=!0,t.currentQuery.isNewConfiguration=!1,n.success(c.instant("jdbc.saved.configuration")),t.goBack()})).error((function(t){const e=getError(t);n.error(e,c.instant("jdbc.not.saved.configuration"))})):a.updateJdbcConfiguration(t.currentQuery).success((function(){t.currentQuery.isPristine=!0,t.currentQuery.isNewConfiguration=!1,n.success(c.instant("jdbc.configuration.updated")),t.goBack()})).error((function(t){const e=getError(t);n.error(e,c.instant("jdbc.not.saved.configuration"))})):n.error(c.instant("jdbc.required.configuration.name")))},t.hasPrecision=function(t){return"iri"===t||"string"===t||"decimal"===t},t.containsColumnsWithPrecision=function(e){return e&&e.some(e=>t.hasPrecision(e.column_type))},t.hasScale=function(t){return"decimal"===t},t.containsColumnsWithScale=function(e){return e&&e.some(e=>t.hasScale(e.column_type))},t.isLiteral=function(t){return"iri"!==t&&"unknown"!==t},t.containsNonLiteralColumnsOnly=function(e){return e&&e.every(e=>!t.isLiteral(e.column_type))},t.containsUnknownColumns=function(){return t.currentQuery.columns&&t.currentQuery.columns.find(t=>"unknown"===t.column_type)},$("textarea").on("paste",(function(){o((function(){b()}),0)})),t.selectColumnType=function(e,r){const i=_.find(t.currentQuery.columns,(function(t){return t.column_name===e}));"Get suggestion..."===i.column_type&&a.getColumnsTypeSuggestion(t.currentQuery.query,[e]).success((function(t){i.column_type=t[e].column_type,i.column_type===r?n.info(c.instant("jdbc.same.suggested.sql.type",{type:i.column_type}),c.instant("jdbc.suggest.sql.type"),{allowHtml:!0}):n.success(c.instant("jdbc.suggested.sql.type",{type:i.column_type}),c.instant("jdbc.suggest.sql.type"),{allowHtml:!0}),i.sparql_type=t[e].sparql_type})).error((function(t){n.error(getError(t),c.instant("jdbc.not.suggest.column.type"))})),t.setDirty()},t.getColumnsSuggestions=function(){t.currentQuery.columns&&t.currentQuery.columns.length>0?u.openSimpleModal({title:c.instant("common.warning"),message:c.instant("jdbc.warning.column.type.msg"),warning:!0}).result.then((function(){x()})):x()},t.deleteColumn=function(e,n){u.openSimpleModal({title:c.instant("common.warning"),message:c.instant("jdbc.warning.delete.column.msg",{columnName:e}),warning:!0}).result.then((function(){t.currentQuery.columns.splice(n,1),t.setDirty()}))},t.getPreview=function(){if(C()&&(t.executedQueryTab=t.currentQuery,!t.queryIsRunning)){t.currentQuery.outputType="table",t.resetCurrentTabConfig(),v(!0,c.instant("jdbc.preview.first.rows",{name:t.name}),c.instant("common.extra.message"));const e=function(e,r,i){!function(e,r,i){e.results&&e.results.bindings&&e.results.bindings.length?(window.yasr.plugins.table.options.getCellContent=w,t.currentTabConfig.queryType="SELECT",window.yasr.setResponse(r,i,null)):n.info(c.instant("jdbc.table.definition"),c.instant("jdbc.preview.sql"))}(e,i,r),v(!1)},r=function(t){v(!1),n.error(getError(t,0,100),c.instant("jdbc.not.show.preview"))};if(t.canWriteActiveRepo()){const n=JSON.stringify({name:t.currentQuery.name,query:t.currentQuery.query,columns:t.currentQuery.columns||[]});a.getNewSqlTablePreview(n).done(e).fail(r)}else a.getExistingSqlTablePreview(t.currentQuery.name).done(e).fail(r)}},t.setDirty=function(){t.currentQuery.isPristine=!1},t.getTypeLabel=function(t){switch(t){case"iri":return"VARCHAR: IRI";case"string":return"VARCHAR: String";default:return t.indexOf(" ")>0?t:t.toUpperCase()}}}angular.module("graphdb.framework.jdbc.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","toastr"],["graphdb.framework.utils.notifications"]).controller("JdbcListCtrl",r).controller("JdbcCreateCtrl",i),r.$inject=["$scope","$repositories","JdbcRestService","toastr","ModalService","$translate"],i.$inject=["$scope","$location","toastr","$repositories","$window","$timeout","JdbcRestService","RDF4JRepositoriesRestService","SparqlRestService","ModalService","$translate"]},92:function(t,e){angular.module("graphdb.framework.rest.jdbc.service",[]).factory("JdbcRestService",n),n.$inject=["$http","$repositories","$translate"];function n(t,e){return{getJdbcConfigurations:function(){return t.get("rest/sql-views/tables")},getJdbcConfiguration:function(e){return t.get("rest/sql-views/tables/"+e)},createNewJdbcConfiguration:function(t){return n("POST","",t)},updateJdbcConfiguration:function(t){return n("PUT",t.name,t)},deleteJdbcConfiguration:function(e){return t.delete("rest/sql-views/tables/"+e)},getColumnNames:function(e){return t.post("rest/sql-views/columns",e,{headers:{Accept:"application/json","Content-Type":"text/plain"}})},getColumnsTypeSuggestion:function(n,r){if(!Array.isArray(r))throw new Error(e.instant("jdbc.column.names.constraint"));return t({method:"POST",url:"rest/sql-views/types",data:{query:n,column_names:r}})},getExistingSqlTablePreview:function(t,e){return $.ajax({method:"GET",url:"rest/sql-views/preview/"+t,params:{limit:e}})},getNewSqlTablePreview:function(t,e){return $.ajax({method:"POST",url:"rest/sql-views/preview",contentType:"application/json; charset=utf-8",dataType:"json",data:t,params:{limit:e},headers:{Accept:"application/sparql-results+json"}})}};function n(e,n,r){return t({method:e,url:"rest/sql-views/tables/"+n,noCancelOnRouteChange:!0,data:{name:r.name,query:r.query,columns:r.columns||[]}})}}}}]);
2
- //# sourceMappingURL=12.d9d71e44fdefd12ffbd9.bundle.js.map
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[12,15,34,41,44,45,46,47,48,49,50,51,52,63,111,113,117,134],{138:function(t,e,n){"use strict";n.r(e);n(4),n(11),n(61),n(10),n(91),n(92),n(45),n(55),n(56);angular.module("graphdb.framework.jdbc",["toastr","ui.bootstrap","graphdb.framework.jdbc.controllers","graphdb.framework.core.services.repositories","graphdb.framework.core.directives","graphdb.framework.rest.jdbc.service","graphdb.framework.core.directives.queryeditor.controllers","graphdb.framework.core.directives.queryeditor.sparqltab","graphdb.framework.core.directives.queryeditor.queryeditor"])},258:function(t,e,n){var r,i;r=[n(257)],void 0===(i=function(){var e;return(e={dev:!1}).tooltip=e.tooltip||{},e.utils=e.utils||{},e.models=e.models||{},e.charts={},e.logs={},e.dom={},"undefined"==typeof d3&&(d3=n(256)),e.dispatch=d3.dispatch("render_start","render_end"),Function.prototype.bind||(Function.prototype.bind=function(t){if("function"!=typeof this)throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");var e=Array.prototype.slice.call(arguments,1),n=this,r=function(){},i=function(){return n.apply(this instanceof r&&t?this:t,e.concat(Array.prototype.slice.call(arguments)))};return r.prototype=this.prototype,i.prototype=new r,i}),e.dev&&(e.dispatch.on("render_start",(function(t){e.logs.startTime=+new Date})),e.dispatch.on("render_end",(function(t){e.logs.endTime=+new Date,e.logs.totalTime=e.logs.endTime-e.logs.startTime,e.log("total",e.logs.totalTime)}))),e.log=function(){if(e.dev&&window.console&&console.log&&console.log.apply)console.log.apply(console,arguments);else if(e.dev&&window.console&&"function"==typeof console.log&&Function.prototype.bind){var t=Function.prototype.bind.call(console.log,console);t.apply(console,arguments)}return arguments[arguments.length-1]},e.deprecated=function(t,e){console&&console.warn&&console.warn("nvd3 warning: `"+t+"` has been deprecated. ",e||"")},e.render=function(t){t=t||1,e.render.active=!0,e.dispatch.render_start();var n=function(){for(var r,i,a=0;a<t&&(i=e.render.queue[a]);a++)r=i.generate(),typeof i.callback==typeof Function&&i.callback(r);e.render.queue.splice(0,a),e.render.queue.length?setTimeout(n):(e.dispatch.render_end(),e.render.active=!1)};setTimeout(n)},e.render.active=!1,e.render.queue=[],e.addGraph=function(t){typeof arguments[0]==typeof Function&&(t={generate:arguments[0],callback:arguments[1]}),e.render.queue.push(t),e.render.active||e.render()},t.exports=e,"undefined"!=typeof window&&(window.nv=e),e.dom.write=function(t){return void 0!==window.fastdom?fastdom.mutate(t):t()},e.dom.read=function(t){return void 0!==window.fastdom?fastdom.measure(t):t()},e.interactiveGuideline=function(){"use strict";var t={left:0,top:0},n=null,r=null,i=d3.scale.linear(),a=d3.dispatch("elementMousemove","elementMouseout","elementClick","elementDblclick","elementMouseDown","elementMouseUp"),o=!0,s=null,l=e.models.tooltip(),u=window.ActiveXObject;function c(d){d.each((function(d){var f=d3.select(this),p=n||960,h=r||400,g=f.selectAll("g.nv-wrap.nv-interactiveLineLayer").data([d]);function v(){var e=d3.event.clientX-this.getBoundingClientRect().left,n=d3.event.clientY-this.getBoundingClientRect().top,r=!0,o=!1;if(u&&(e=d3.event.offsetX,n=d3.event.offsetY,"svg"!==d3.event.target.tagName&&(r=!1),d3.event.target.className.baseVal.match("nv-legend")&&(o=!0)),r&&(e-=t.left,n-=t.top),"mouseout"===d3.event.type||e<0||n<0||e>p||n>h||d3.event.relatedTarget&&void 0===d3.event.relatedTarget.ownerSVGElement||o){if(u&&d3.event.relatedTarget&&void 0===d3.event.relatedTarget.ownerSVGElement&&(void 0===d3.event.relatedTarget.className||d3.event.relatedTarget.className.match(l.nvPointerEventsClass)))return;return a.elementMouseout({mouseX:e,mouseY:n}),c.renderGuideLine(null),void l.hidden(!0)}l.hidden(!1);var s=void 0;if("function"==typeof i.rangeBands){var d=d3.bisect(i.range(),e)-1;if(!(i.range()[d]+i.rangeBand()>=e))return a.elementMouseout({mouseX:e,mouseY:n}),c.renderGuideLine(null),void l.hidden(!0);s=i.domain()[d3.bisect(i.range(),e)-1]}else s=i.invert(e);a.elementMousemove({mouseX:e,mouseY:n,pointXValue:s}),"dblclick"===d3.event.type&&a.elementDblclick({mouseX:e,mouseY:n,pointXValue:s}),"click"===d3.event.type&&a.elementClick({mouseX:e,mouseY:n,pointXValue:s}),"mousedown"===d3.event.type&&a.elementMouseDown({mouseX:e,mouseY:n,pointXValue:s}),"mouseup"===d3.event.type&&a.elementMouseUp({mouseX:e,mouseY:n,pointXValue:s})}g.enter().append("g").attr("class"," nv-wrap nv-interactiveLineLayer").append("g").attr("class","nv-interactiveGuideLine"),s&&(s.on("touchmove",v).on("mousemove",v,!0).on("mouseout",v,!0).on("mousedown",v,!0).on("mouseup",v,!0).on("dblclick",v).on("click",v),c.guideLine=null,c.renderGuideLine=function(t){o&&(c.guideLine&&c.guideLine.attr("x1")===t||e.dom.write((function(){var n=g.select(".nv-interactiveGuideLine").selectAll("line").data(null!=t?[e.utils.NaNtoZero(t)]:[],String);n.enter().append("line").attr("class","nv-guideline").attr("x1",(function(t){return t})).attr("x2",(function(t){return t})).attr("y1",h).attr("y2",0),n.exit().remove()})))})}))}return l.duration(0).hideDelay(0).hidden(!1),c.dispatch=a,c.tooltip=l,c.margin=function(e){return arguments.length?(t.top=void 0!==e.top?e.top:t.top,t.left=void 0!==e.left?e.left:t.left,c):t},c.width=function(t){return arguments.length?(n=t,c):n},c.height=function(t){return arguments.length?(r=t,c):r},c.xScale=function(t){return arguments.length?(i=t,c):i},c.showGuideLine=function(t){return arguments.length?(o=t,c):o},c.svgContainer=function(t){return arguments.length?(s=t,c):s},c},e.interactiveBisect=function(t,e,n){"use strict";if(!(t instanceof Array))return null;var r;r="function"!=typeof n?function(t){return t.x}:n;var i=d3.bisector((function(t,e){return r(t)-e})).left,a=d3.max([0,i(t,e)-1]),o=r(t[a]);if(void 0===o&&(o=a),o===e)return a;var s=d3.min([a+1,t.length-1]),l=r(t[s]);return void 0===l&&(l=s),Math.abs(l-e)>=Math.abs(o-e)?a:s},e.nearestValueIndex=function(t,e,n){"use strict";var r=1/0,i=null;return t.forEach((function(t,a){var o=Math.abs(e-t);null!=t&&o<=r&&o<n&&(r=o,i=a)})),i},e.models.tooltip=function(){"use strict";var t="nvtooltip-"+Math.floor(1e5*Math.random()),n=null,r="w",i=25,a=0,o=null,s=!0,l=200,u=null,c={left:null,top:null},d=!0,f=100,p=!0,h=function(t,e,n){return t},g=function(t){return t},v=function(t,e){return t},m=function(t,e){if(null===t)return"";var n=d3.select(document.createElement("table"));p&&n.selectAll("thead").data([t]).enter().append("thead").append("tr").append("td").attr("colspan",3).append("strong").classed("x-value",!0).html(g(t.value));var r=n.selectAll("tbody").data([t]).enter().append("tbody").selectAll("tr").data((function(t){return t.series})).enter().append("tr").classed("highlight",(function(t){return t.highlight}));r.append("td").classed("legend-color-guide",!0).append("div").style("background-color",(function(t){return t.color})),r.append("td").classed("key",!0).classed("total",(function(t){return!!t.total})).html((function(t,e){return v(t.key,e)})),r.append("td").classed("value",!0).html((function(t,e){return h(t.value,e,t)})),r.filter((function(t,e){return void 0!==t.percent})).append("td").classed("percent",!0).html((function(t,e){return"("+d3.format("%")(t.percent)+")"})),r.selectAll("td").each((function(t){if(t.highlight){var e=d3.scale.linear().domain([0,1]).range(["#fff",t.color]);d3.select(this).style("border-bottom-color",e(.6)).style("border-top-color",e(.6))}}));var i=n.node().outerHTML;return void 0!==t.footer&&(i+="<div class='footer'>"+t.footer+"</div>"),i},y=function(){var t={left:null!==d3.event?d3.event.clientX:0,top:null!==d3.event?d3.event.clientY:0};if("none"!=getComputedStyle(document.body).transform){var e=document.body.getBoundingClientRect();t.left-=e.left,t.top-=e.top}return t},b=function(){e.dom.read((function(){var t=y(),e=function(t){var e,n,a,o=u.node().offsetHeight,s=u.node().offsetWidth,l=document.documentElement.clientWidth,c=document.documentElement.clientHeight;switch(r){case"e":e=-s-i,n=-o/2,t.left+e<0&&(e=i),(a=t.top+n)<0&&(n-=a),(a=t.top+n+o)>c&&(n-=a-c);break;case"w":e=i,n=-o/2,t.left+e+s>l&&(e=-s-i),(a=t.top+n)<0&&(n-=a),(a=t.top+n+o)>c&&(n-=a-c);break;case"n":e=-s/2-5,n=i,t.top+n+o>c&&(n=-o-i),(a=t.left+e)<0&&(e-=a),(a=t.left+e+s)>l&&(e-=a-l);break;case"s":e=-s/2,n=-o-i,t.top+n<0&&(n=i),(a=t.left+e)<0&&(e-=a),(a=t.left+e+s)>l&&(e-=a-l);break;case"center":e=-s/2,n=-o/2;break;default:e=0,n=0}return{left:e,top:n}}(t),n=t.left+e.left,a=t.top+e.top;if(s)u.interrupt().transition().delay(l).duration(0).style("opacity",0);else{var o="translate("+c.left+"px, "+c.top+"px)",d="translate("+Math.round(n)+"px, "+Math.round(a)+"px)",p=d3.interpolateString(o,d),h=u.style("opacity")<.1;u.interrupt().transition().duration(h?0:f).styleTween("transform",(function(t){return p}),"important").styleTween("-webkit-transform",(function(t){return p})).style("-ms-transform",d).style("opacity",1)}c.left=n,c.top=a}))};function x(){if(d&&function(t){if(t&&t.series){if(e.utils.isArray(t.series))return!0;if(e.utils.isObject(t.series))return t.series=[t.series],!0}return!1}(n))return e.dom.write((function(){u&&u.node()||((u=d3.select(document.body).select("#"+t).data([1])).enter().append("div").attr("class","nvtooltip "+(o||"xy-tooltip")).attr("id",t).style("top",0).style("left",0).style("opacity",0).style("position","fixed").selectAll("div, table, td, tr").classed("nv-pointer-events-none",!0).classed("nv-pointer-events-none",!0),u.exit().remove());var e=m(n,u.node());e&&(u.node().innerHTML=e),b()})),x}return x.nvPointerEventsClass="nv-pointer-events-none",x.options=e.utils.optionsFunc.bind(x),x._options=Object.create({},{duration:{get:function(){return f},set:function(t){f=t}},gravity:{get:function(){return r},set:function(t){r=t}},distance:{get:function(){return i},set:function(t){i=t}},snapDistance:{get:function(){return a},set:function(t){a=t}},classes:{get:function(){return o},set:function(t){o=t}},enabled:{get:function(){return d},set:function(t){d=t}},hideDelay:{get:function(){return l},set:function(t){l=t}},contentGenerator:{get:function(){return m},set:function(t){m=t}},valueFormatter:{get:function(){return h},set:function(t){h=t}},headerFormatter:{get:function(){return g},set:function(t){g=t}},keyFormatter:{get:function(){return v},set:function(t){v=t}},headerEnabled:{get:function(){return p},set:function(t){p=t}},position:{get:function(){return y},set:function(t){y=t}},chartContainer:{get:function(){return document.body},set:function(t){e.deprecated("chartContainer","feature removed after 1.8.3")}},fixedTop:{get:function(){return null},set:function(t){e.deprecated("fixedTop","feature removed after 1.8.1")}},offset:{get:function(){return{left:0,top:0}},set:function(t){e.deprecated("offset","use chart.tooltip.distance() instead")}},hidden:{get:function(){return s},set:function(t){s!=t&&(s=!!t,x())}},data:{get:function(){return n},set:function(t){t.point&&(t.value=t.point.x,t.series=t.series||{},t.series.value=t.point.y,t.series.color=t.point.color||t.series.color),n=t}},node:{get:function(){return u.node()},set:function(t){}},id:{get:function(){return t},set:function(t){}}}),e.utils.initOptions(x),x},e.utils.windowSize=function(){var t={width:640,height:480};return window.innerWidth&&window.innerHeight?(t.width=window.innerWidth,t.height=window.innerHeight,t):"CSS1Compat"==document.compatMode&&document.documentElement&&document.documentElement.offsetWidth?(t.width=document.documentElement.offsetWidth,t.height=document.documentElement.offsetHeight,t):document.body&&document.body.offsetWidth?(t.width=document.body.offsetWidth,t.height=document.body.offsetHeight,t):t},e.utils.isArray=Array.isArray,e.utils.isObject=function(t){return null!==t&&"object"==typeof t},e.utils.isFunction=function(t){return"function"==typeof t},e.utils.isDate=function(t){return"[object Date]"===toString.call(t)},e.utils.isNumber=function(t){return!isNaN(t)&&"number"==typeof t},e.utils.windowResize=function(t){return window.addEventListener?window.addEventListener("resize",t):e.log("ERROR: Failed to bind to window.resize with: ",t),{callback:t,clear:function(){window.removeEventListener("resize",t)}}},e.utils.getColor=function(t){if(void 0===t)return e.utils.defaultColor();if(e.utils.isArray(t)){var n=d3.scale.ordinal().range(t);return function(t,e){var r=void 0===e?t:e;return t.color||n(r)}}return t},e.utils.defaultColor=function(){return e.utils.getColor(d3.scale.category20().range())},e.utils.customTheme=function(t,n,r){n=n||function(t){return t.key};var i=(r=r||d3.scale.category20().range()).length;return function(a,o){var s=n(a);return e.utils.isFunction(t[s])?t[s]():void 0!==t[s]?t[s]:(i||(i=r.length),r[i-=1])}},e.utils.pjax=function(t,n){var r=function(r){d3.html(r,(function(r){var i=d3.select(n).node();i.parentNode.replaceChild(d3.select(r).select(n).node(),i),e.utils.pjax(t,n)}))};d3.selectAll(t).on("click",(function(){history.pushState(this.href,this.textContent,this.href),r(this.href),d3.event.preventDefault()})),d3.select(window).on("popstate",(function(){d3.event.state&&r(d3.event.state)}))},e.utils.calcApproxTextWidth=function(t){if(e.utils.isFunction(t.style)&&e.utils.isFunction(t.text)){var n=parseInt(t.style("font-size").replace("px",""),10),r=t.text().length;return e.utils.NaNtoZero(r*n*.5)}return 0},e.utils.NaNtoZero=function(t){return!e.utils.isNumber(t)||isNaN(t)||null===t||t===1/0||t===-1/0?0:t},d3.selection.prototype.watchTransition=function(t){var e=[this].concat([].slice.call(arguments,1));return t.transition.apply(t,e)},e.utils.renderWatch=function(t,n){if(!(this instanceof e.utils.renderWatch))return new e.utils.renderWatch(t,n);var r=void 0!==n?n:250,i=[],a=this;this.models=function(t){return(t=[].slice.call(arguments,0)).forEach((function(t){var e;t.__rendered=!1,(e=t).dispatch.on("renderEnd",(function(t){e.__rendered=!0,a.renderEnd("model")})),i.indexOf(t)<0&&i.push(t)})),this},this.reset=function(t){void 0!==t&&(r=t),i=[]},this.transition=function(t,e,n){if(n=(e=arguments.length>1?[].slice.call(arguments,1):[]).length>1?e.pop():void 0!==r?r:250,t.__rendered=!1,i.indexOf(t)<0&&i.push(t),0===n)return t.__rendered=!0,t.delay=function(){return this},t.duration=function(){return this},t;0===t.length||t.every((function(t){return!t.length}))?t.__rendered=!0:t.__rendered=!1;var o=0;return t.transition().duration(n).each((function(){++o})).each("end",(function(n,r){0==--o&&(t.__rendered=!0,a.renderEnd.apply(this,e))}))},this.renderEnd=function(){i.every((function(t){return t.__rendered}))&&(i.forEach((function(t){t.__rendered=!1})),t.renderEnd.apply(this,arguments))}},e.utils.deepExtend=function(t){var n=arguments.length>1?[].slice.call(arguments,1):[];n.forEach((function(n){for(var r in n){var i=e.utils.isArray(t[r]),a=e.utils.isObject(t[r]),o=e.utils.isObject(n[r]);a&&!i&&o?e.utils.deepExtend(t[r],n[r]):t[r]=n[r]}}))},e.utils.state=function(){if(!(this instanceof e.utils.state))return new e.utils.state;var t={},n=function(){},r=function(){return{}},i=null;this.dispatch=d3.dispatch("change","set"),this.dispatch.on("set",(function(t){n(t,!0)})),this.getter=function(t){return r=t,this},this.setter=function(t,e){return e||(e=function(){}),n=function(n,r){t(n),r&&e()},this},this.init=function(t){i=i||{},e.utils.deepExtend(i,t)};var a=function(){var e=r();if(JSON.stringify(e)===JSON.stringify(t))return!1;for(var n in e)void 0===t[n]&&(t[n]={}),t[n]=e[n];return!0};this.update=function(){i&&(n(i,!1),i=null),a.call(this)&&this.dispatch.change(t)}},e.utils.optionsFunc=function(t){return t&&d3.map(t).forEach(function(t,n){e.utils.isFunction(this[t])&&this[t](n)}.bind(this)),this},e.utils.calcTicksX=function(t,n){for(var r=1,i=0;i<n.length;i+=1){var a=n[i]&&n[i].values?n[i].values.length:0;r=a>r?a:r}return e.log("Requested number of ticks: ",t),e.log("Calculated max values to be: ",r),t=(t=t>r?t=r-1:t)<1?1:t,t=Math.floor(t),e.log("Calculating tick count as: ",t),t},e.utils.calcTicksY=function(t,n){return e.utils.calcTicksX(t,n)},e.utils.initOption=function(t,e){t._calls&&t._calls[e]?t[e]=t._calls[e]:(t[e]=function(n){return arguments.length?(t._overrides[e]=!0,t._options[e]=n,t):t._options[e]},t["_"+e]=function(n){return arguments.length?(t._overrides[e]||(t._options[e]=n),t):t._options[e]})},e.utils.initOptions=function(t){t._overrides=t._overrides||{};var n=Object.getOwnPropertyNames(t._options||{}),r=Object.getOwnPropertyNames(t._calls||{});for(var i in n=n.concat(r))e.utils.initOption(t,n[i])},e.utils.inheritOptionsD3=function(t,e,n){t._d3options=n.concat(t._d3options||[]),t._d3options=(t._d3options||[]).filter((function(t,e,n){return n.indexOf(t)===e})),n.unshift(e),n.unshift(t),d3.rebind.apply(this,n)},e.utils.arrayUnique=function(t){return t.sort().filter((function(e,n){return!n||e!=t[n-1]}))},e.utils.symbolMap=d3.map(),e.utils.symbol=function(){var t,n=64;function r(r,i){var a=t.call(this,r,i),o=n.call(this,r,i);return-1!==d3.svg.symbolTypes.indexOf(a)?d3.svg.symbol().type(a).size(o)():e.utils.symbolMap.get(a)(o)}return r.type=function(e){return arguments.length?(t=d3.functor(e),r):t},r.size=function(t){return arguments.length?(n=d3.functor(t),r):n},r},e.utils.inheritOptions=function(t,n){var r=Object.getOwnPropertyNames(n._options||{}),i=Object.getOwnPropertyNames(n._calls||{}),a=n._inherited||[],o=n._d3options||[],s=r.concat(i).concat(a).concat(o);s.unshift(n),s.unshift(t),d3.rebind.apply(this,s),t._inherited=e.utils.arrayUnique(r.concat(i).concat(a).concat(r).concat(t._inherited||[])),t._d3options=e.utils.arrayUnique(o.concat(t._d3options||[]))},e.utils.initSVG=function(t){t.classed({"nvd3-svg":!0})},e.utils.sanitizeHeight=function(t,e){return t||parseInt(e.style("height"),10)||400},e.utils.sanitizeWidth=function(t,e){return t||parseInt(e.style("width"),10)||960},e.utils.availableHeight=function(t,n,r){return Math.max(0,e.utils.sanitizeHeight(t,n)-r.top-r.bottom)},e.utils.availableWidth=function(t,n,r){return Math.max(0,e.utils.sanitizeWidth(t,n)-r.left-r.right)},e.utils.noData=function(t,n){var r=t.options(),i=r.margin(),a=r.noData(),o=null==a?["No Data Available."]:[a],s=e.utils.availableHeight(null,n,i),l=e.utils.availableWidth(null,n,i),u=i.left+l/2,c=i.top+s/2;n.selectAll("g").remove();var d=n.selectAll(".nv-noData").data(o);d.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),d.attr("x",u).attr("y",c).text((function(t){return t}))},e.utils.wrapTicks=function(t,e){t.each((function(){for(var t,n=d3.select(this),r=n.text().split(/\s+/).reverse(),i=[],a=0,o=n.attr("y"),s=parseFloat(n.attr("dy")),l=n.text(null).append("tspan").attr("x",0).attr("y",o).attr("dy",s+"em");t=r.pop();)i.push(t),l.text(i.join(" ")),l.node().getComputedTextLength()>e&&(i.pop(),l.text(i.join(" ")),i=[t],l=n.append("tspan").attr("x",0).attr("y",o).attr("dy",1.1*++a+s+"em").text(t))}))},e.utils.arrayEquals=function(t,n){if(t===n)return!0;if(!t||!n)return!1;if(t.length!=n.length)return!1;for(var r=0,i=t.length;r<i;r++)if(t[r]instanceof Array&&n[r]instanceof Array){if(!e.arrayEquals(t[r],n[r]))return!1}else if(t[r]!=n[r])return!1;return!0},e.utils.pointIsInArc=function(t,e,n){var r=n.innerRadius()(e),i=n.outerRadius()(e),a=n.startAngle()(e),o=n.endAngle()(e),s=t.x*t.x+t.y*t.y,l=Math.atan2(t.x,-t.y);return l=l<0?l+2*Math.PI:l,r*r<=s&&s<=i*i&&a<=l&&l<=o},e.models.axis=function(){"use strict";var t,n,r=d3.svg.axis(),i=d3.scale.linear(),a={top:0,right:0,bottom:0,left:0},o=75,s=60,l=null,u=!0,c=0,d=!0,f=!1,p=!1,h=null,g=0,v=void 0,m=250,y=d3.dispatch("renderEnd");r.scale(i).orient("bottom").tickFormat((function(t){return t}));var b=e.utils.renderWatch(y,m);function x(s){return b.reset(),s.each((function(s){var m=d3.select(this);e.utils.initSVG(m);var y=m.selectAll("g.nv-wrap.nv-axis").data([s]),x=(y.enter().append("g").attr("class","nvd3 nv-wrap nv-axis").append("g"),y.select("g"));null!==h?r.ticks(h):"top"!=r.orient()&&"bottom"!=r.orient()||r.ticks(Math.abs(i.range()[1]-i.range()[0])/100),x.watchTransition(b,"axis").call(r),n=n||r.scale();var k=r.tickFormat();null==k&&(k=n.tickFormat());var w,M,A,C=x.selectAll("text.nv-axislabel").data([l||null]);switch(C.exit().remove(),void 0!==v&&x.selectAll("g").select("text").style("font-size",v),r.orient()){case"top":C.enter().append("text").attr("class","nv-axislabel"),A=0,1===i.range().length?A=p?2*i.range()[0]+i.rangeBand():0:2===i.range().length?A=p?i.range()[0]+i.range()[1]+i.rangeBand():i.range()[1]:i.range().length>2&&(A=i.range()[i.range().length-1]+(i.range()[1]-i.range()[0])),C.attr("text-anchor","middle").attr("y",0).attr("x",A/2),u&&((M=y.selectAll("g.nv-axisMaxMin").data(i.domain())).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-x",0==e?"nv-axisMin-x":"nv-axisMax-x"].join(" ")})).append("text"),M.exit().remove(),M.attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i(t))+",0)"})).select("text").attr("dy","-0.5em").attr("y",-r.tickPadding()).attr("text-anchor","middle").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max top").attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i.range()[n])+",0)"})));break;case"bottom":w=g+36;var S=30,D=0,E=x.selectAll("g").select("text"),F="";if(c%360){E.attr("transform",""),E.each((function(t,e){var n=this.getBoundingClientRect(),r=n.width;D=n.height,r>S&&(S=r)})),F="rotate("+c+" 0,"+(D/2+r.tickPadding())+")";var T=Math.abs(Math.sin(c*Math.PI/180));w=(T?T*S:S)+30,E.attr("transform",F).style("text-anchor",c%360>0?"start":"end")}else f?E.attr("transform",(function(t,e){return"translate(0,"+(e%2==0?"0":"12")+")"})):E.attr("transform","translate(0,0)");C.enter().append("text").attr("class","nv-axislabel"),A=0,1===i.range().length?A=p?2*i.range()[0]+i.rangeBand():0:2===i.range().length?A=p?i.range()[0]+i.range()[1]+i.rangeBand():i.range()[1]:i.range().length>2&&(A=i.range()[i.range().length-1]+(i.range()[1]-i.range()[0])),C.attr("text-anchor","middle").attr("y",w).attr("x",A/2),u&&((M=y.selectAll("g.nv-axisMaxMin").data([i.domain()[0],i.domain()[i.domain().length-1]])).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-x",0==e?"nv-axisMin-x":"nv-axisMax-x"].join(" ")})).append("text"),M.exit().remove(),M.attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i(t)+(p?i.rangeBand()/2:0))+",0)"})).select("text").attr("dy",".71em").attr("y",r.tickPadding()).attr("transform",F).style("text-anchor",c?c%360>0?"start":"end":"middle").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max bottom").attr("transform",(function(t,n){return"translate("+e.utils.NaNtoZero(i(t)+(p?i.rangeBand()/2:0))+",0)"})));break;case"right":C.enter().append("text").attr("class","nv-axislabel"),C.style("text-anchor",d?"middle":"begin").attr("transform",d?"rotate(90)":"").attr("y",d?12-Math.max(a.right,o)-(g||0):-10).attr("x",d?d3.max(i.range())/2:r.tickPadding()),u&&((M=y.selectAll("g.nv-axisMaxMin").data(i.domain())).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-y",0==e?"nv-axisMin-y":"nv-axisMax-y"].join(" ")})).append("text").style("opacity",0),M.exit().remove(),M.attr("transform",(function(t,n){return"translate(0,"+e.utils.NaNtoZero(i(t))+")"})).select("text").attr("dy",".32em").attr("y",0).attr("x",r.tickPadding()).style("text-anchor","start").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max right").attr("transform",(function(t,n){return"translate(0,"+e.utils.NaNtoZero(i.range()[n])+")"})).select("text").style("opacity",1));break;case"left":C.enter().append("text").attr("class","nv-axislabel"),C.style("text-anchor",d?"middle":"end").attr("transform",d?"rotate(-90)":"").attr("y",d?25-Math.max(a.left,o)-(g||0):-10).attr("x",d?-d3.max(i.range())/2:-r.tickPadding()),u&&((M=y.selectAll("g.nv-axisMaxMin").data(i.domain())).enter().append("g").attr("class",(function(t,e){return["nv-axisMaxMin","nv-axisMaxMin-y",0==e?"nv-axisMin-y":"nv-axisMax-y"].join(" ")})).append("text").style("opacity",0),M.exit().remove(),M.attr("transform",(function(t,r){return"translate(0,"+e.utils.NaNtoZero(n(t))+")"})).select("text").attr("dy",".32em").attr("y",0).attr("x",-r.tickPadding()).attr("text-anchor","end").text((function(e,n){var r=(t||k)(e);return(""+r).match("NaN")?"":r})),M.watchTransition(b,"min-max right").attr("transform",(function(t,n){return"translate(0,"+e.utils.NaNtoZero(i.range()[n])+")"})).select("text").style("opacity",1))}if(C.text((function(t){return t})),!u||"left"!==r.orient()&&"right"!==r.orient()||(x.selectAll("g").each((function(t,e){d3.select(this).select("text").attr("opacity",1),(i(t)<i.range()[1]+10||i(t)>i.range()[0]-10)&&((t>1e-10||t<-1e-10)&&d3.select(this).attr("opacity",0),d3.select(this).select("text").attr("opacity",0))})),i.domain()[0]==i.domain()[1]&&0==i.domain()[0]&&y.selectAll("g.nv-axisMaxMin").style("opacity",(function(t,e){return e?0:1}))),u&&("top"===r.orient()||"bottom"===r.orient())){var W=[];y.selectAll("g.nv-axisMaxMin").each((function(t,e){try{e?W.push(i(t)-this.getBoundingClientRect().width-4):W.push(i(t)+this.getBoundingClientRect().width+4)}catch(n){e?W.push(i(t)-4):W.push(i(t)+4)}})),x.selectAll("g").each((function(t,e){(i(t)<W[0]||i(t)>W[1])&&(t>1e-10||t<-1e-10?d3.select(this).remove():d3.select(this).select("text").remove())}))}x.selectAll(".tick").filter((function(t){return!parseFloat(Math.round(1e5*t)/1e6)&&void 0!==t})).classed("zero",!0),n=i.copy()})),b.renderEnd("axis immediate"),x}return x.axis=r,x.dispatch=y,x.options=e.utils.optionsFunc.bind(x),x._options=Object.create({},{axisLabelDistance:{get:function(){return g},set:function(t){g=t}},staggerLabels:{get:function(){return f},set:function(t){f=t}},rotateLabels:{get:function(){return c},set:function(t){c=t}},rotateYLabel:{get:function(){return d},set:function(t){d=t}},showMaxMin:{get:function(){return u},set:function(t){u=t}},axisLabel:{get:function(){return l},set:function(t){l=t}},height:{get:function(){return s},set:function(t){s=t}},ticks:{get:function(){return h},set:function(t){h=t}},width:{get:function(){return o},set:function(t){o=t}},fontSize:{get:function(){return v},set:function(t){v=t}},tickFormatMaxMin:{get:function(){return t},set:function(e){t=e}},margin:{get:function(){return a},set:function(t){a.top=void 0!==t.top?t.top:a.top,a.right=void 0!==t.right?t.right:a.right,a.bottom=void 0!==t.bottom?t.bottom:a.bottom,a.left=void 0!==t.left?t.left:a.left}},duration:{get:function(){return m},set:function(t){m=t,b.reset(m)}},scale:{get:function(){return i},set:function(t){i=t,r.scale(i),p="function"==typeof i.rangeBands,e.utils.inheritOptionsD3(x,i,["domain","range","rangeBand","rangeBands"])}}}),e.utils.initOptions(x),e.utils.inheritOptionsD3(x,r,["orient","tickValues","tickSubdivide","tickSize","tickPadding","tickFormat"]),e.utils.inheritOptionsD3(x,i,["domain","range","rangeBand","rangeBands"]),x},e.models.boxPlot=function(){"use strict";var t,n,r,i,a,o,s={top:0,right:0,bottom:0,left:0},l=960,u=500,c=Math.floor(1e4*Math.random()),d=d3.scale.ordinal(),f=d3.scale.linear(),p=function(t){return t.label},h=function(t){return t.values.Q1},g=function(t){return t.values.Q2},v=function(t){return t.values.Q3},m=function(t){return t.values.whisker_low},y=function(t){return t.values.whisker_high},b=function(t){return t.color},x=function(t){return t.values.outliers},k=function(t,e,n){return t},w=function(t,e,n){return t},M=function(t,e,n){},A=e.utils.defaultColor(),C=null,S=d3.dispatch("elementMouseover","elementMouseout","elementMousemove","renderEnd"),D=250,E=null,F=e.utils.renderWatch(S,D);function T(c){return F.reset(),c.each((function(c){var T=l-s.left-s.right,W=u-s.top-s.bottom;C=d3.select(this),e.utils.initSVG(C),d.domain(t||c.map((function(t,e){return p(t,e)}))).rangeBands(n||[0,T],.1);var N=[];if(!r){var O=[];c.forEach((function(t,e){var n=h(t),r=v(t),i=m(t),a=y(t),o=x(t);o&&o.forEach((function(t,e){O.push(k(t,e,void 0))})),i&&O.push(i),n&&O.push(n),r&&O.push(r),a&&O.push(a)})),N=[d3.min(O),d3.max(O)]}f.domain(r||N),f.range(i||[W,0]),a=a||d,o=o||f.copy().range([f(0),f(0)]);var L=C.selectAll("g.nv-wrap").data([c]);L.enter().append("g").attr("class","nvd3 nv-wrap"),L.attr("transform","translate("+s.left+","+s.top+")");var _=L.selectAll(".nv-boxplot").data((function(t){return t})),B=_.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6);_.attr("class","nv-boxplot").attr("transform",(function(t,e,n){return"translate("+(d(p(t,e))+.05*d.rangeBand())+", 0)"})).classed("hover",(function(t){return t.hover})),_.watchTransition(F,"nv-boxplot: boxplots").style("stroke-opacity",1).style("fill-opacity",.75).delay((function(t,e){return e*D/c.length})).attr("transform",(function(t,e){return"translate("+(d(p(t,e))+.05*d.rangeBand())+", 0)"})),_.exit().remove(),B.each((function(t,e){var n=d3.select(this);[m,y].forEach((function(r){if(void 0!==r(t)&&null!==r(t)){var i=r===m?"low":"high";n.append("line").style("stroke",b(t)||A(t,e)).attr("class","nv-boxplot-whisker nv-boxplot-"+i),n.append("line").style("stroke",b(t)||A(t,e)).attr("class","nv-boxplot-tick nv-boxplot-"+i)}}))}));var P=function(){return null===E?.9*d.rangeBand():Math.min(75,.9*d.rangeBand())},V=function(){return.45*d.rangeBand()-P()/2},I=function(){return.45*d.rangeBand()+P()/2};[m,y].forEach((function(t){var e=t===m?"low":"high",n=t===m?h:v;_.select("line.nv-boxplot-whisker.nv-boxplot-"+e).watchTransition(F,"nv-boxplot: boxplots").attr("x1",.45*d.rangeBand()).attr("y1",(function(e,n){return f(t(e))})).attr("x2",.45*d.rangeBand()).attr("y2",(function(t,e){return f(n(t))})),_.select("line.nv-boxplot-tick.nv-boxplot-"+e).watchTransition(F,"nv-boxplot: boxplots").attr("x1",V).attr("y1",(function(e,n){return f(t(e))})).attr("x2",I).attr("y2",(function(e,n){return f(t(e))}))})),[m,y].forEach((function(t){var e=t===m?"low":"high";B.selectAll(".nv-boxplot-"+e).on("mouseover",(function(e,n,r){d3.select(this).classed("hover",!0),S.elementMouseover({series:{key:t(e),color:b(e)||A(e,r)},e:d3.event})})).on("mouseout",(function(e,n,r){d3.select(this).classed("hover",!1),S.elementMouseout({series:{key:t(e),color:b(e)||A(e,r)},e:d3.event})})).on("mousemove",(function(t,e){S.elementMousemove({e:d3.event})}))})),B.append("rect").attr("class","nv-boxplot-box").on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),S.elementMouseover({key:p(t),value:p(t),series:[{key:"Q3",value:v(t),color:b(t)||A(t,e)},{key:"Q2",value:g(t),color:b(t)||A(t,e)},{key:"Q1",value:h(t),color:b(t)||A(t,e)}],data:t,index:e,e:d3.event})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),S.elementMouseout({key:p(t),value:p(t),series:[{key:"Q3",value:v(t),color:b(t)||A(t,e)},{key:"Q2",value:g(t),color:b(t)||A(t,e)},{key:"Q1",value:h(t),color:b(t)||A(t,e)}],data:t,index:e,e:d3.event})})).on("mousemove",(function(t,e){S.elementMousemove({e:d3.event})})),_.select("rect.nv-boxplot-box").watchTransition(F,"nv-boxplot: boxes").attr("y",(function(t,e){return f(v(t))})).attr("width",P).attr("x",V).attr("height",(function(t,e){return Math.abs(f(v(t))-f(h(t)))||1})).style("fill",(function(t,e){return b(t)||A(t,e)})).style("stroke",(function(t,e){return b(t)||A(t,e)})),B.append("line").attr("class","nv-boxplot-median"),_.select("line.nv-boxplot-median").watchTransition(F,"nv-boxplot: boxplots line").attr("x1",V).attr("y1",(function(t,e){return f(g(t))})).attr("x2",I).attr("y2",(function(t,e){return f(g(t))}));var H=_.selectAll(".nv-boxplot-outlier").data((function(t){return x(t)||[]}));H.enter().append("circle").style("fill",(function(t,e,n){return M(t,e,n)||A(t,n)})).style("stroke",(function(t,e,n){return M(t,e,n)||A(t,n)})).style("z-index",9e3).on("mouseover",(function(t,e,n){d3.select(this).classed("hover",!0),S.elementMouseover({series:{key:w(t,e,n),color:M(t,e,n)||A(t,n)},e:d3.event})})).on("mouseout",(function(t,e,n){d3.select(this).classed("hover",!1),S.elementMouseout({series:{key:w(t,e,n),color:M(t,e,n)||A(t,n)},e:d3.event})})).on("mousemove",(function(t,e){S.elementMousemove({e:d3.event})})),H.attr("class","nv-boxplot-outlier"),H.watchTransition(F,"nv-boxplot: nv-boxplot-outlier").attr("cx",.45*d.rangeBand()).attr("cy",(function(t,e,n){return f(k(t,e,n))})).attr("r","3"),H.exit().remove(),a=d.copy(),o=f.copy()})),F.renderEnd("nv-boxplot immediate"),T}return T.dispatch=S,T.options=e.utils.optionsFunc.bind(T),T._options=Object.create({},{width:{get:function(){return l},set:function(t){l=t}},height:{get:function(){return u},set:function(t){u=t}},maxBoxWidth:{get:function(){return E},set:function(t){E=t}},x:{get:function(){return p},set:function(t){p=t}},q1:{get:function(){return h},set:function(t){h=t}},q2:{get:function(){return g},set:function(t){g=t}},q3:{get:function(){return v},set:function(t){v=t}},wl:{get:function(){return m},set:function(t){m=t}},wh:{get:function(){return y},set:function(t){y=t}},itemColor:{get:function(){return b},set:function(t){b=t}},outliers:{get:function(){return x},set:function(t){x=t}},outlierValue:{get:function(){return k},set:function(t){k=t}},outlierLabel:{get:function(){return w},set:function(t){w=t}},outlierColor:{get:function(){return M},set:function(t){M=t}},xScale:{get:function(){return d},set:function(t){d=t}},yScale:{get:function(){return f},set:function(t){f=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return n},set:function(t){n=t}},yRange:{get:function(){return i},set:function(t){i=t}},id:{get:function(){return c},set:function(t){c=t}},y:{get:function(){return console.warn("BoxPlot 'y' chart option is deprecated. Please use model overrides instead."),{}},set:function(t){console.warn("BoxPlot 'y' chart option is deprecated. Please use model overrides instead.")}},margin:{get:function(){return s},set:function(t){s.top=void 0!==t.top?t.top:s.top,s.right=void 0!==t.right?t.right:s.right,s.bottom=void 0!==t.bottom?t.bottom:s.bottom,s.left=void 0!==t.left?t.left:s.left}},color:{get:function(){return A},set:function(t){A=e.utils.getColor(t)}},duration:{get:function(){return D},set:function(t){D=t,F.reset(D)}}}),e.utils.initOptions(T),T},e.models.boxPlotChart=function(){"use strict";var t,n,r=e.models.boxPlot(),i=e.models.axis(),a=e.models.axis(),o={top:15,right:10,bottom:50,left:60},s=null,l=null,u=e.utils.getColor(),c=!0,d=!0,f=!1,p=!1,h=e.models.tooltip(),g="No Data Available.",v=d3.dispatch("beforeUpdate","renderEnd"),m=250;i.orient("bottom").showMaxMin(!1).tickFormat((function(t){return t})),a.orient(f?"right":"left").tickFormat(d3.format(",.1f")),h.duration(0);var y=e.utils.renderWatch(v,m);function b(u){return y.reset(),y.models(r),c&&y.models(i),d&&y.models(a),u.each((function(u){var h=d3.select(this);e.utils.initSVG(h);var y=(s||parseInt(h.style("width"))||960)-o.left-o.right,x=(l||parseInt(h.style("height"))||400)-o.top-o.bottom;if(b.update=function(){v.beforeUpdate(),h.transition().duration(m).call(b)},b.container=this,!u||!u.length){var k=h.selectAll(".nv-noData").data([g]);return k.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),k.attr("x",o.left+y/2).attr("y",o.top+x/2).text((function(t){return t})),b}h.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale().clamp(!0);var w=h.selectAll("g.nv-wrap.nv-boxPlotWithAxes").data([u]),M=w.enter().append("g").attr("class","nvd3 nv-wrap nv-boxPlotWithAxes").append("g"),A=M.append("defs"),C=w.select("g");if(M.append("g").attr("class","nv-x nv-axis"),M.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),M.append("g").attr("class","nv-barsWrap"),C.attr("transform","translate("+o.left+","+o.top+")"),f&&C.select(".nv-y.nv-axis").attr("transform","translate("+y+",0)"),r.width(y).height(x),C.select(".nv-barsWrap").datum(u.filter((function(t){return!t.disabled}))).transition().call(r),A.append("clipPath").attr("id","nv-x-label-clip-"+r.id()).append("rect"),C.select("#nv-x-label-clip-"+r.id()+" rect").attr("width",t.rangeBand()*(p?2:1)).attr("height",16).attr("x",-t.rangeBand()/(p?1:2)),c){i.scale(t).ticks(e.utils.calcTicksX(y/100,u)).tickSize(-x,0),C.select(".nv-x.nv-axis").attr("transform","translate(0,"+n.range()[0]+")"),C.select(".nv-x.nv-axis").call(i);var S=C.select(".nv-x.nv-axis").selectAll("g");p&&S.selectAll("text").attr("transform",(function(t,e,n){return"translate(0,"+(n%2==0?"5":"17")+")"}))}d&&(a.scale(n).ticks(Math.floor(x/36)).tickSize(-y,0),C.select(".nv-y.nv-axis").call(a)),C.select(".nv-zeroLine line").attr("x1",0).attr("x2",y).attr("y1",n(0)).attr("y2",n(0))})),y.renderEnd("nv-boxplot chart immediate"),b}return r.dispatch.on("elementMouseover.tooltip",(function(t){h.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){h.data(t).hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){h()})),b.dispatch=v,b.boxplot=r,b.xAxis=i,b.yAxis=a,b.tooltip=h,b.options=e.utils.optionsFunc.bind(b),b._options=Object.create({},{width:{get:function(){return s},set:function(t){s=t}},height:{get:function(){return l},set:function(t){l=t}},staggerLabels:{get:function(){return p},set:function(t){p=t}},showXAxis:{get:function(){return c},set:function(t){c=t}},showYAxis:{get:function(){return d},set:function(t){d=t}},tooltipContent:{get:function(){return h},set:function(t){h=t}},noData:{get:function(){return g},set:function(t){g=t}},margin:{get:function(){return o},set:function(t){o.top=void 0!==t.top?t.top:o.top,o.right=void 0!==t.right?t.right:o.right,o.bottom=void 0!==t.bottom?t.bottom:o.bottom,o.left=void 0!==t.left?t.left:o.left}},duration:{get:function(){return m},set:function(t){m=t,y.reset(m),r.duration(m),i.duration(m),a.duration(m)}},color:{get:function(){return u},set:function(t){u=e.utils.getColor(t),r.color(u)}},rightAlignYAxis:{get:function(){return f},set:function(t){f=t,a.orient(t?"right":"left")}}}),e.utils.inheritOptions(b,r),e.utils.initOptions(b),b},e.models.bullet=function(){"use strict";var t={top:0,right:0,bottom:0,left:0},n="left",r=!1,i=function(t){return t.ranges},a=function(t){return t.markers?t.markers:[]},o=function(t){return t.markerLines?t.markerLines:[0]},s=function(t){return t.measures},l=function(t){return t.rangeLabels?t.rangeLabels:[]},u=function(t){return t.markerLabels?t.markerLabels:[]},c=function(t){return t.markerLineLabels?t.markerLineLabels:[]},d=function(t){return t.measureLabels?t.measureLabels:[]},f=[0],p=380,h=30,g=null,v=null,m=e.utils.getColor(["#1f77b4"]),y=d3.dispatch("elementMouseover","elementMouseout","elementMousemove"),b=["Maximum","Mean","Minimum"],x=["Max","Avg","Min"],k=1e3;function w(t,e){var n=t.slice();t.sort((function(t,r){var i=n.indexOf(t),a=n.indexOf(r);return d3.descending(e[i],e[a])}))}function M(n){return n.each((function(n,v){var M=p-t.left-t.right,A=h-t.top-t.bottom;g=d3.select(this),e.utils.initSVG(g);var C=i.call(this,n,v).slice(),S=a.call(this,n,v).slice(),D=o.call(this,n,v).slice(),E=s.call(this,n,v).slice(),F=l.call(this,n,v).slice(),T=u.call(this,n,v).slice(),W=c.call(this,n,v).slice(),N=d.call(this,n,v).slice();w(F,C),w(T,S),w(W,D),w(N,E),C.sort(d3.descending),S.sort(d3.descending),D.sort(d3.descending),E.sort(d3.descending);var O=d3.scale.linear().domain(d3.extent(d3.merge([f,C]))).range(r?[M,0]:[0,M]);this.__chart__||d3.scale.linear().domain([0,1/0]).range(O.range()),this.__chart__=O,d3.min(C),d3.max(C),C[1];for(var L=g.selectAll("g.nv-wrap.nv-bullet").data([n]),_=L.enter().append("g").attr("class","nvd3 nv-wrap nv-bullet").append("g"),B=L.select("g"),P=(v=0,C.length);v<P;v++){var V="nv-range nv-range"+v;v<=2&&(V=V+" nv-range"+x[v]),_.append("rect").attr("class",V)}_.append("rect").attr("class","nv-measure"),L.attr("transform","translate("+t.left+","+t.top+")");var I=function(t){return Math.abs(O(t)-O(0))},H=function(t){return O(t<0?t:0)};for(v=0,P=C.length;v<P;v++){var R=C[v];B.select("rect.nv-range"+v).datum(R).attr("height",A).transition().duration(k).attr("width",I(R)).attr("x",H(R))}B.select("rect.nv-measure").style("fill",m).attr("height",A/3).attr("y",A/3).on("mouseover",(function(){y.elementMouseover({value:E[0],label:N[0]||"Current",color:d3.select(this).style("fill")})})).on("mousemove",(function(){y.elementMousemove({value:E[0],label:N[0]||"Current",color:d3.select(this).style("fill")})})).on("mouseout",(function(){y.elementMouseout({value:E[0],label:N[0]||"Current",color:d3.select(this).style("fill")})})).transition().duration(k).attr("width",E<0?O(0)-O(E[0]):O(E[0])-O(0)).attr("x",H(E));var j=A/6,z=S.map((function(t,e){return{value:t,label:T[e]}}));_.selectAll("path.nv-markerTriangle").data(z).enter().append("path").attr("class","nv-markerTriangle").attr("d","M0,"+j+"L"+j+","+-j+" "+-j+","+-j+"Z").on("mouseover",(function(t){y.elementMouseover({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill"),pos:[O(t.value),A/2]})})).on("mousemove",(function(t){y.elementMousemove({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){y.elementMouseout({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})),B.selectAll("path.nv-markerTriangle").data(z).transition().duration(k).attr("transform",(function(t){return"translate("+O(t.value)+","+A/2+")"}));var q=D.map((function(t,e){return{value:t,label:W[e]}}));_.selectAll("line.nv-markerLine").data(q).enter().append("line").attr("cursor","").attr("class","nv-markerLine").attr("x1",(function(t){return O(t.value)})).attr("y1","2").attr("x2",(function(t){return O(t.value)})).attr("y2",A-2).on("mouseover",(function(t){y.elementMouseover({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill"),pos:[O(t.value),A/2]})})).on("mousemove",(function(t){y.elementMousemove({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){y.elementMouseout({value:t.value,label:t.label||"Previous",color:d3.select(this).style("fill")})})),B.selectAll("line.nv-markerLine").data(q).transition().duration(k).attr("x1",(function(t){return O(t.value)})).attr("x2",(function(t){return O(t.value)})),L.selectAll(".nv-range").on("mouseover",(function(t,e){var n=F[e]||b[e];y.elementMouseover({value:t,label:n,color:d3.select(this).style("fill")})})).on("mousemove",(function(){y.elementMousemove({value:E[0],label:N[0]||"Previous",color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){var n=F[e]||b[e];y.elementMouseout({value:t,label:n,color:d3.select(this).style("fill")})}))})),M}return M.dispatch=y,M.options=e.utils.optionsFunc.bind(M),M._options=Object.create({},{ranges:{get:function(){return i},set:function(t){i=t}},markers:{get:function(){return a},set:function(t){a=t}},measures:{get:function(){return s},set:function(t){s=t}},forceX:{get:function(){return f},set:function(t){f=t}},width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},tickFormat:{get:function(){return v},set:function(t){v=t}},duration:{get:function(){return k},set:function(t){k=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},orient:{get:function(){return n},set:function(t){r="right"==(n=t)||"bottom"==n}},color:{get:function(){return m},set:function(t){m=e.utils.getColor(t)}}}),e.utils.initOptions(M),M},e.models.bulletChart=function(){"use strict";var t=e.models.bullet(),n=e.models.tooltip(),r="left",i=!1,a={top:5,right:40,bottom:20,left:120},o=function(t){return t.ranges},s=function(t){return t.markers?t.markers:[]},l=function(t){return t.measures},u=null,c=55,d=null,f=null,p=null,h=d3.dispatch();function g(n){return n.each((function(r,p){var h=d3.select(this);e.utils.initSVG(h);var v=e.utils.availableWidth(u,h,a),m=c-a.top-a.bottom;if(g.update=function(){g(n)},g.container=this,!r||!o.call(this,r,p))return e.utils.noData(g,h),g;h.selectAll(".nv-noData").remove();var y=o.call(this,r,p).slice().sort(d3.descending),b=s.call(this,r,p).slice().sort(d3.descending),x=l.call(this,r,p).slice().sort(d3.descending),k=h.selectAll("g.nv-wrap.nv-bulletChart").data([r]),w=k.enter().append("g").attr("class","nvd3 nv-wrap nv-bulletChart").append("g"),M=k.select("g");w.append("g").attr("class","nv-bulletWrap"),w.append("g").attr("class","nv-titles"),k.attr("transform","translate("+a.left+","+a.top+")");var A=d3.scale.linear().domain([0,Math.max(y[0],b[0]||0,x[0])]).range(i?[v,0]:[0,v]),C=this.__chart__||d3.scale.linear().domain([0,1/0]).range(A.range());this.__chart__=A;var S=w.select(".nv-titles").append("g").attr("text-anchor","end").attr("transform","translate(-6,"+(c-a.top-a.bottom)/2+")");S.append("text").attr("class","nv-title").text((function(t){return t.title})),S.append("text").attr("class","nv-subtitle").attr("dy","1em").text((function(t){return t.subtitle})),t.width(v).height(m);var D=M.select(".nv-bulletWrap");d3.transition(D).call(t);var E=d||A.tickFormat(v/100),F=M.selectAll("g.nv-tick").data(A.ticks(f||v/50),(function(t){return this.textContent||E(t)})),T=F.enter().append("g").attr("class","nv-tick").attr("transform",(function(t){return"translate("+C(t)+",0)"})).style("opacity",1e-6);T.append("line").attr("y1",m).attr("y2",7*m/6),T.append("text").attr("text-anchor","middle").attr("dy","1em").attr("y",7*m/6).text(E);var W=d3.transition(F).transition().duration(t.duration()).attr("transform",(function(t){return"translate("+A(t)+",0)"})).style("opacity",1);W.select("line").attr("y1",m).attr("y2",7*m/6),W.select("text").attr("y",7*m/6),d3.transition(F.exit()).transition().duration(t.duration()).attr("transform",(function(t){return"translate("+A(t)+",0)"})).style("opacity",1e-6).remove()})),d3.timer.flush(),g}return n.duration(0).headerEnabled(!1),t.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:t.label,value:t.value,color:t.color},n.data(t).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){n.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(t){n()})),g.bullet=t,g.dispatch=h,g.tooltip=n,g.options=e.utils.optionsFunc.bind(g),g._options=Object.create({},{ranges:{get:function(){return o},set:function(t){o=t}},markers:{get:function(){return s},set:function(t){s=t}},measures:{get:function(){return l},set:function(t){l=t}},width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},tickFormat:{get:function(){return d},set:function(t){d=t}},ticks:{get:function(){return f},set:function(t){f=t}},noData:{get:function(){return p},set:function(t){p=t}},margin:{get:function(){return a},set:function(t){a.top=void 0!==t.top?t.top:a.top,a.right=void 0!==t.right?t.right:a.right,a.bottom=void 0!==t.bottom?t.bottom:a.bottom,a.left=void 0!==t.left?t.left:a.left}},orient:{get:function(){return r},set:function(t){i="right"==(r=t)||"bottom"==r}}}),e.utils.inheritOptions(g,t),e.utils.initOptions(g),g},e.models.candlestickBar=function(){"use strict";var t,n,r,i,a,o={top:0,right:0,bottom:0,left:0},s=null,l=null,u=Math.floor(1e4*Math.random()),c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=function(t){return t.open},g=function(t){return t.close},v=function(t){return t.high},m=function(t){return t.low},y=[],b=[],x=!1,k=!0,w=e.utils.defaultColor(),M=!1,A=d3.dispatch("stateChange","changeState","renderEnd","chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove");function C(w){return w.each((function(w){t=d3.select(this);var M=e.utils.availableWidth(s,t,o),C=e.utils.availableHeight(l,t,o);e.utils.initSVG(t);var S=M/w[0].values.length*.45;c.domain(n||d3.extent(w[0].values.map(f).concat(y))),x?c.range(i||[.5*M/w[0].values.length,M*(w[0].values.length-.5)/w[0].values.length]):c.range(i||[5+S/2,M-S/2-5]),d.domain(r||[d3.min(w[0].values.map(m).concat(b)),d3.max(w[0].values.map(v).concat(b))]).range(a||[C,0]),c.domain()[0]===c.domain()[1]&&(c.domain()[0]?c.domain([c.domain()[0]-.01*c.domain()[0],c.domain()[1]+.01*c.domain()[1]]):c.domain([-1,1])),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]+.01*d.domain()[0],d.domain()[1]-.01*d.domain()[1]]):d.domain([-1,1]));var D=d3.select(this).selectAll("g.nv-wrap.nv-candlestickBar").data([w[0].values]),E=D.enter().append("g").attr("class","nvd3 nv-wrap nv-candlestickBar"),F=E.append("defs"),T=E.append("g"),W=D.select("g");T.append("g").attr("class","nv-ticks"),D.attr("transform","translate("+o.left+","+o.top+")"),t.on("click",(function(t,e){A.chartClick({data:t,index:e,pos:d3.event,id:u})})),F.append("clipPath").attr("id","nv-chart-clip-path-"+u).append("rect"),D.select("#nv-chart-clip-path-"+u+" rect").attr("width",M).attr("height",C),W.attr("clip-path",k?"url(#nv-chart-clip-path-"+u+")":"");var N=D.select(".nv-ticks").selectAll(".nv-tick").data((function(t){return t}));N.exit().remove();var O=N.enter().append("g");N.attr("class",(function(t,e,n){return(h(t,e)>g(t,e)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+e})),O.append("line").attr("class","nv-candlestick-lines").attr("transform",(function(t,e){return"translate("+c(f(t,e))+",0)"})).attr("x1",0).attr("y1",(function(t,e){return d(v(t,e))})).attr("x2",0).attr("y2",(function(t,e){return d(m(t,e))})),O.append("rect").attr("class","nv-candlestick-rects nv-bars").attr("transform",(function(t,e){return"translate("+(c(f(t,e))-S/2)+","+(d(p(t,e))-(h(t,e)>g(t,e)?d(g(t,e))-d(h(t,e)):0))+")"})).attr("x",0).attr("y",0).attr("width",S).attr("height",(function(t,e){var n=h(t,e),r=g(t,e);return n>r?d(r)-d(n):d(n)-d(r)})),N.select(".nv-candlestick-lines").transition().attr("transform",(function(t,e){return"translate("+c(f(t,e))+",0)"})).attr("x1",0).attr("y1",(function(t,e){return d(v(t,e))})).attr("x2",0).attr("y2",(function(t,e){return d(m(t,e))})),N.select(".nv-candlestick-rects").transition().attr("transform",(function(t,e){return"translate("+(c(f(t,e))-S/2)+","+(d(p(t,e))-(h(t,e)>g(t,e)?d(g(t,e))-d(h(t,e)):0))+")"})).attr("x",0).attr("y",0).attr("width",S).attr("height",(function(t,e){var n=h(t,e),r=g(t,e);return n>r?d(r)-d(n):d(n)-d(r)}))})),C}return C.highlightPoint=function(e,n){C.clearHighlights(),t.select(".nv-candlestickBar .nv-tick-0-"+e).classed("hover",n)},C.clearHighlights=function(){t.select(".nv-candlestickBar .nv-tick.hover").classed("hover",!1)},C.dispatch=A,C.options=e.utils.optionsFunc.bind(C),C._options=Object.create({},{width:{get:function(){return s},set:function(t){s=t}},height:{get:function(){return l},set:function(t){l=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return a},set:function(t){a=t}},forceX:{get:function(){return y},set:function(t){y=t}},forceY:{get:function(){return b},set:function(t){b=t}},padData:{get:function(){return x},set:function(t){x=t}},clipEdge:{get:function(){return k},set:function(t){k=t}},id:{get:function(){return u},set:function(t){u=t}},interactive:{get:function(){return M},set:function(t){M=t}},x:{get:function(){return f},set:function(t){f=t}},y:{get:function(){return p},set:function(t){p=t}},open:{get:function(){return h()},set:function(t){h=t}},close:{get:function(){return g()},set:function(t){g=t}},high:{get:function(){return v},set:function(t){v=t}},low:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return o},set:function(t){o.top=null!=t.top?t.top:o.top,o.right=null!=t.right?t.right:o.right,o.bottom=null!=t.bottom?t.bottom:o.bottom,o.left=null!=t.left?t.left:o.left}},color:{get:function(){return w},set:function(t){w=e.utils.getColor(t)}}}),e.utils.initOptions(C),C},e.models.cumulativeLineChart=function(){"use strict";var t,n,r=e.models.line(),i=e.models.axis(),a=e.models.axis(),o=e.models.legend(),s=e.models.legend(),l=e.interactiveGuideline(),u=e.models.tooltip(),c={top:30,right:30,bottom:50,left:60},d=null,f=e.utils.defaultColor(),p=null,h=null,g=!0,v=!0,m=!0,y=!1,b=!0,x=!1,k=!0,w=r.id(),M=e.utils.state(),A=null,C=null,S=function(t){return t.average},D=d3.dispatch("stateChange","changeState","renderEnd"),E=250,F=!1;M.index=0,M.rescaleY=k,i.orient("bottom").tickPadding(7),a.orient(y?"right":"left"),u.valueFormatter((function(t,e){return a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),s.updateState(!1);var T,W=d3.scale.linear(),N={i:0,x:0},O=e.utils.renderWatch(D,E);function L(u){return O.reset(),O.models(r),v&&O.models(i),m&&O.models(a),u.each((function(u){var C=d3.select(this);e.utils.initSVG(C),C.classed("nv-chart-"+w,!0);var O,P=e.utils.availableWidth(p,C,c),V=e.utils.availableHeight(h,C,c);if(L.update=function(){0===E?C.call(L):C.transition().duration(E).call(L)},L.container=this,M.setter(function(t){return function(e){void 0!==e.index&&(N.i=e.index),void 0!==e.rescaleY&&(k=e.rescaleY),void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(u),L.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),index:N.i,rescaleY:k}}}(u)).update(),M.disabled=u.map((function(t){return!!t.disabled})),!A)for(O in A={},M)M[O]instanceof Array?A[O]=M[O].slice(0):A[O]=M[O];var I=d3.behavior.drag().on("dragstart",(function(t,e){d3.select(L.container).style("cursor","ew-resize")})).on("drag",(function(t,e){N.x=d3.event.x,N.i=Math.round(W.invert(N.x)),U()})).on("dragend",(function(t,e){d3.select(L.container).style("cursor","auto"),M.index=N.i,D.stateChange(M)}));if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(L,C),L;C.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale(),W.domain([0,u[0].values.length-1]).range([0,P]).clamp(!0),u=function(t,e){return _||(_=r.y()),e.map((function(e,n){if(!e.values)return e;var r=e.values[t];if(null==r)return e;var i=_(r,t);return Math.abs(i)<1e-5&&!F?(e.tempDisabled=!0,e):(e.tempDisabled=!1,e.values=e.values.map((function(t,e){return t.display={y:(_(t,e)-i)/i},t})),e)}))}(N.i,u),void 0===T&&(T=B(u)),k?r.yDomain(null):(r.yDomain(T),r.clipEdge(!0));var H=x?"none":"all",R=C.selectAll("g.nv-wrap.nv-cumulativeLine").data([u]),j=R.enter().append("g").attr("class","nvd3 nv-wrap nv-cumulativeLine").append("g"),z=R.select("g");if(j.append("g").attr("class","nv-interactive"),j.append("g").attr("class","nv-x nv-axis").style("pointer-events","none"),j.append("g").attr("class","nv-y nv-axis"),j.append("g").attr("class","nv-background"),j.append("g").attr("class","nv-linesWrap").style("pointer-events",H),j.append("g").attr("class","nv-avgLinesWrap").style("pointer-events","none"),j.append("g").attr("class","nv-legendWrap"),j.append("g").attr("class","nv-controlsWrap"),g?(o.width(P),z.select(".nv-legendWrap").datum(u).call(o),d||o.height()===c.top||(c.top=o.height(),V=e.utils.availableHeight(h,C,c)),z.select(".nv-legendWrap").attr("transform","translate(0,"+-c.top+")")):z.select(".nv-legendWrap").selectAll("*").remove(),b){var q=[{key:"Re-scale y-axis",disabled:!k}];s.width(140).color(["#444","#444","#444"]).rightAlign(!1).margin({top:5,right:0,bottom:5,left:20}),z.select(".nv-controlsWrap").datum(q).attr("transform","translate(0,"+-c.top+")").call(s)}else z.select(".nv-controlsWrap").selectAll("*").remove();R.attr("transform","translate("+c.left+","+c.top+")"),y&&z.select(".nv-y.nv-axis").attr("transform","translate("+P+",0)");var G=u.filter((function(t){return t.tempDisabled}));R.select(".tempDisabled").remove(),G.length&&R.append("text").attr("class","tempDisabled").attr("x",P/2).attr("y","-.71em").style("text-anchor","end").text(G.map((function(t){return t.key})).join(", ")+" values cannot be calculated for this time period."),x&&(l.width(P).height(V).margin({left:c.left,top:c.top}).svgContainer(C).xScale(t),R.select(".nv-interactive").call(l)),j.select(".nv-background").append("rect"),z.select(".nv-background rect").attr("width",P).attr("height",V),r.y((function(t){return t.display.y})).width(P).height(V).color(u.map((function(t,e){return t.color||f(t,e)})).filter((function(t,e){return!u[e].disabled&&!u[e].tempDisabled})));var Y=z.select(".nv-linesWrap").datum(u.filter((function(t){return!t.disabled&&!t.tempDisabled})));Y.call(r),u.forEach((function(t,e){t.seriesIndex=e}));var X=u.filter((function(t){return!t.disabled&&!!S(t)})),$=z.select(".nv-avgLinesWrap").selectAll("line").data(X,(function(t){return t.key})),Q=function(t){var e=n(S(t));return e<0?0:e>V?V:e};$.enter().append("line").style("stroke-width",2).style("stroke-dasharray","10,10").style("stroke",(function(t,e){return r.color()(t,t.seriesIndex)})).attr("x1",0).attr("x2",P).attr("y1",Q).attr("y2",Q),$.style("stroke-opacity",(function(t){var e=n(S(t));return e<0||e>V?0:1})).attr("x1",0).attr("x2",P).attr("y1",Q).attr("y2",Q),$.exit().remove();var Z=Y.selectAll(".nv-indexLine").data([N]);function U(){Z.data([N]);var t=L.duration();L.duration(0),L.update(),L.duration(t)}Z.enter().append("rect").attr("class","nv-indexLine").attr("width",3).attr("x",-2).attr("fill","red").attr("fill-opacity",.5).style("pointer-events","all").call(I),Z.attr("transform",(function(t){return"translate("+W(t.i)+",0)"})).attr("height",V),v&&(i.scale(t)._ticks(e.utils.calcTicksX(P/70,u)).tickSize(-V,0),z.select(".nv-x.nv-axis").attr("transform","translate(0,"+n.range()[0]+")"),z.select(".nv-x.nv-axis").call(i)),m&&(a.scale(n)._ticks(e.utils.calcTicksY(V/36,u)).tickSize(-P,0),z.select(".nv-y.nv-axis").call(a)),z.select(".nv-background rect").on("click",(function(){N.x=d3.mouse(this)[0],N.i=Math.round(W.invert(N.x)),M.index=N.i,D.stateChange(M),U()})),r.dispatch.on("elementClick",(function(t){N.i=t.pointIndex,N.x=W(N.i),M.index=N.i,D.stateChange(M),U()})),s.dispatch.on("legendClick",(function(t,e){t.disabled=!t.disabled,k=!t.disabled,M.rescaleY=k,k||(T=B(u)),D.stateChange(M),L.update()})),o.dispatch.on("stateChange",(function(t){for(var e in t)M[e]=t[e];D.stateChange(M),L.update()})),l.dispatch.on("elementMousemove",(function(t){r.clearHighlights();var n,o,s,c=[];if(u.filter((function(t,e){return t.seriesIndex=e,!(t.disabled||t.tempDisabled)})).forEach((function(i,a){o=e.interactiveBisect(i.values,t.pointXValue,L.x()),r.highlightPoint(a,o,!0);var l=i.values[o];void 0!==l&&(void 0===n&&(n=l),void 0===s&&(s=L.xScale()(L.x()(l,o))),c.push({key:i.key,value:L.y()(l,o),color:f(i,i.seriesIndex)}))})),c.length>2){var d=L.yScale().invert(t.mouseY),p=.03*Math.abs(L.yScale().domain()[0]-L.yScale().domain()[1]),h=e.nearestValueIndex(c.map((function(t){return t.value})),d,p);null!==h&&(c[h].highlight=!0)}var g=i.tickFormat()(L.x()(n,o),o);l.tooltip.valueFormatter((function(t,e){return a.tickFormat()(t)})).data({value:g,series:c})(),l.renderGuideLine(s)})),l.dispatch.on("elementMouseout",(function(t){r.clearHighlights()})),D.on("changeState",(function(t){void 0!==t.disabled&&(u.forEach((function(e,n){e.disabled=t.disabled[n]})),M.disabled=t.disabled),void 0!==t.index&&(N.i=t.index,N.x=W(N.i),M.index=t.index,Z.data([N])),void 0!==t.rescaleY&&(k=t.rescaleY),L.update()}))})),O.renderEnd("cumulativeLineChart immediate"),L}r.dispatch.on("elementMouseover.tooltip",(function(t){var e={x:L.x()(t.point),y:L.y()(t.point),color:t.point.color};t.point=e,u.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)}));var _=null;function B(t){var e=t.filter((function(t){return!(t.disabled||t.tempDisabled)})).map((function(t,e){return d3.extent(t.values,(function(t){return t.display.y}))}));return[d3.min(e,(function(t){return t[0]})),d3.max(e,(function(t){return t[1]}))]}return L.dispatch=D,L.lines=r,L.legend=o,L.controls=s,L.xAxis=i,L.yAxis=a,L.interactiveLayer=l,L.state=M,L.tooltip=u,L.options=e.utils.optionsFunc.bind(L),L._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showControls:{get:function(){return b},set:function(t){b=t}},showLegend:{get:function(){return g},set:function(t){g=t}},average:{get:function(){return S},set:function(t){S=t}},defaultState:{get:function(){return A},set:function(t){A=t}},noData:{get:function(){return C},set:function(t){C=t}},showXAxis:{get:function(){return v},set:function(t){v=t}},showYAxis:{get:function(){return m},set:function(t){m=t}},noErrorCheck:{get:function(){return F},set:function(t){F=t}},rescaleY:{get:function(){return k},set:function(t){k=t,L.state.rescaleY=t}},margin:{get:function(){return c},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),o.color(f)}},useInteractiveGuideline:{get:function(){return x},set:function(t){x=t,!0===t&&(L.interactive(!1),L.useVoronoi(!1))}},rightAlignYAxis:{get:function(){return y},set:function(t){y=t,a.orient(t?"right":"left")}},duration:{get:function(){return E},set:function(t){E=t,r.duration(E),i.duration(E),a.duration(E),O.reset(E)}}}),e.utils.inheritOptions(L,r),e.utils.initOptions(L),L},e.models.discreteBar=function(){"use strict";var t,n,r,i,a,o,s,l={top:0,right:0,bottom:0,left:0},u=960,c=500,d=Math.floor(1e4*Math.random()),f=d3.scale.ordinal(),p=d3.scale.linear(),h=function(t){return t.x},g=function(t){return t.y},v=[0],m=e.utils.defaultColor(),y=!1,b=d3.format(",.2f"),x=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),k="discreteBar",w=250,M=e.utils.renderWatch(x,w);function A(d){return M.reset(),d.each((function(d){var w=u-l.left-l.right,A=c-l.top-l.bottom;t=d3.select(this),e.utils.initSVG(t),d.forEach((function(t,e){t.values.forEach((function(t){t.series=e}))}));var C=n&&r?[]:d.map((function(t){return t.values.map((function(t,e){return{x:h(t,e),y:g(t,e),y0:t.y0}}))}));f.domain(n||d3.merge(C).map((function(t){return t.x}))).rangeBands(i||[0,w],.1),p.domain(r||d3.extent(d3.merge(C).map((function(t){return t.y})).concat(v))),y?p.range(a||[A-(p.domain()[0]<0?12:0),p.domain()[1]>0?12:0]):p.range(a||[A,0]),o=o||f,s=s||p.copy().range([p(0),p(0)]);var S=t.selectAll("g.nv-wrap.nv-discretebar").data([d]),D=S.enter().append("g").attr("class","nvd3 nv-wrap nv-discretebar").append("g");S.select("g"),D.append("g").attr("class","nv-groups"),S.attr("transform","translate("+l.left+","+l.top+")");var E=S.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t){return t.key}));E.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),E.exit().watchTransition(M,"discreteBar: exit groups").style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),E.attr("class",(function(t,e){return"nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})),E.watchTransition(M,"discreteBar: groups").style("stroke-opacity",1).style("fill-opacity",.75);var F=E.selectAll("g.nv-bar").data((function(t){return t.values}));F.exit().remove();var T=F.enter().append("g").attr("transform",(function(t,e,n){return"translate("+(f(h(t,e))+.05*f.rangeBand())+", "+p(0)+")"})).on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),x.elementMouseover({data:t,index:e,color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),x.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")})})).on("mousemove",(function(t,e){x.elementMousemove({data:t,index:e,color:d3.select(this).style("fill")})})).on("click",(function(t,e){x.elementClick({data:t,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation()})).on("dblclick",(function(t,e){x.elementDblClick({data:t,index:e,color:d3.select(this).style("fill")}),d3.event.stopPropagation()}));T.append("rect").attr("height",0).attr("width",.9*f.rangeBand()/d.length),y?(T.append("text").attr("text-anchor","middle"),F.select("text").text((function(t,e){return b(g(t,e))})).watchTransition(M,"discreteBar: bars text").attr("x",.9*f.rangeBand()/2).attr("y",(function(t,e){return g(t,e)<0?p(g(t,e))-p(0)+12:-4}))):F.selectAll("text").remove(),F.attr("class",(function(t,e){return g(t,e)<0?"nv-bar negative":"nv-bar positive"})).style("fill",(function(t,e){return t.color||m(t,e)})).style("stroke",(function(t,e){return t.color||m(t,e)})).select("rect").attr("class",k).watchTransition(M,"discreteBar: bars rect").attr("width",.9*f.rangeBand()/d.length),F.watchTransition(M,"discreteBar: bars").attr("transform",(function(t,e){return"translate("+(f(h(t,e))+.05*f.rangeBand())+", "+(g(t,e)<0?p(0):p(0)-p(g(t,e))<1?p(0)-1:p(g(t,e)))+")"})).select("rect").attr("height",(function(t,e){return Math.max(Math.abs(p(g(t,e))-p(0)),1)})),o=f.copy(),s=p.copy()})),M.renderEnd("discreteBar immediate"),A}return A.dispatch=x,A.options=e.utils.optionsFunc.bind(A),A._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},forceY:{get:function(){return v},set:function(t){v=t}},showValues:{get:function(){return y},set:function(t){y=t}},x:{get:function(){return h},set:function(t){h=t}},y:{get:function(){return g},set:function(t){g=t}},xScale:{get:function(){return f},set:function(t){f=t}},yScale:{get:function(){return p},set:function(t){p=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return a},set:function(t){a=t}},valueFormat:{get:function(){return b},set:function(t){b=t}},id:{get:function(){return d},set:function(t){d=t}},rectClass:{get:function(){return k},set:function(t){k=t}},margin:{get:function(){return l},set:function(t){l.top=void 0!==t.top?t.top:l.top,l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},color:{get:function(){return m},set:function(t){m=e.utils.getColor(t)}},duration:{get:function(){return w},set:function(t){w=t,M.reset(w)}}}),e.utils.initOptions(A),A},e.models.discreteBarChart=function(){"use strict";var t,n,r=e.models.discreteBar(),i=e.models.axis(),a=e.models.axis(),o=e.models.legend(),s=e.models.tooltip(),l={top:15,right:10,bottom:50,left:60},u=null,c=null,d=null,f=e.utils.getColor(),p=!1,h=!0,g=!0,v=!1,m=!1,y=!1,b=0,x=null,k=d3.dispatch("beforeUpdate","renderEnd"),w=250;i.orient("bottom").showMaxMin(!1).tickFormat((function(t){return t})),a.orient(v?"right":"left").tickFormat(d3.format(",.1f")),s.duration(0).headerEnabled(!1).valueFormatter((function(t,e){return a.tickFormat()(t,e)})).keyFormatter((function(t,e){return i.tickFormat()(t,e)}));var M=e.utils.renderWatch(k,w);function A(s){return M.reset(),M.models(r),h&&M.models(i),g&&M.models(a),s.each((function(s){var f=d3.select(this);e.utils.initSVG(f);var x=e.utils.availableWidth(c,f,l),M=e.utils.availableHeight(d,f,l);if(A.update=function(){k.beforeUpdate(),f.transition().duration(w).call(A)},A.container=this,!(s&&s.length&&s.filter((function(t){return t.values.length})).length))return e.utils.noData(A,f),A;f.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale().clamp(!0);var C=f.selectAll("g.nv-wrap.nv-discreteBarWithAxes").data([s]),S=C.enter().append("g").attr("class","nvd3 nv-wrap nv-discreteBarWithAxes").append("g"),D=S.append("defs"),E=C.select("g");if(S.append("g").attr("class","nv-x nv-axis"),S.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),S.append("g").attr("class","nv-barsWrap"),S.append("g").attr("class","nv-legendWrap"),E.attr("transform","translate("+l.left+","+l.top+")"),p?(o.width(x),E.select(".nv-legendWrap").datum(s).call(o),u||o.height()===l.top||(l.top=o.height(),M=e.utils.availableHeight(d,f,l)),C.select(".nv-legendWrap").attr("transform","translate(0,"+-l.top+")")):E.select(".nv-legendWrap").selectAll("*").remove(),v&&E.select(".nv-y.nv-axis").attr("transform","translate("+x+",0)"),r.width(x).height(M),E.select(".nv-barsWrap").datum(s.filter((function(t){return!t.disabled}))).transition().call(r),D.append("clipPath").attr("id","nv-x-label-clip-"+r.id()).append("rect"),E.select("#nv-x-label-clip-"+r.id()+" rect").attr("width",t.rangeBand()*(m?2:1)).attr("height",16).attr("x",-t.rangeBand()/(m?1:2)),h){i.scale(t)._ticks(e.utils.calcTicksX(x/100,s)).tickSize(-M,0),E.select(".nv-x.nv-axis").attr("transform","translate(0,"+(n.range()[0]+(r.showValues()&&n.domain()[0]<0?16:0))+")"),E.select(".nv-x.nv-axis").call(i);var F=E.select(".nv-x.nv-axis").selectAll("g");m&&F.selectAll("text").attr("transform",(function(t,e,n){return"translate(0,"+(n%2==0?"5":"17")+")"})),b&&F.selectAll(".tick text").attr("transform","rotate("+b+" 0,0)").style("text-anchor",b>0?"start":"end"),y&&E.selectAll(".tick text").call(e.utils.wrapTicks,A.xAxis.rangeBand())}g&&(a.scale(n)._ticks(e.utils.calcTicksY(M/36,s)).tickSize(-x,0),E.select(".nv-y.nv-axis").call(a)),E.select(".nv-zeroLine line").attr("x1",0).attr("x2",v?-x:x).attr("y1",n(0)).attr("y2",n(0))})),M.renderEnd("discreteBar chart immediate"),A}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:A.x()(t.data),value:A.y()(t.data),color:t.color},s.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){s.hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){s()})),A.dispatch=k,A.discretebar=r,A.legend=o,A.xAxis=i,A.yAxis=a,A.tooltip=s,A.options=e.utils.optionsFunc.bind(A),A._options=Object.create({},{width:{get:function(){return c},set:function(t){c=t}},height:{get:function(){return d},set:function(t){d=t}},showLegend:{get:function(){return p},set:function(t){p=t}},staggerLabels:{get:function(){return m},set:function(t){m=t}},rotateLabels:{get:function(){return b},set:function(t){b=t}},wrapLabels:{get:function(){return y},set:function(t){y=!!t}},showXAxis:{get:function(){return h},set:function(t){h=t}},showYAxis:{get:function(){return g},set:function(t){g=t}},noData:{get:function(){return x},set:function(t){x=t}},margin:{get:function(){return l},set:function(t){void 0!==t.top&&(l.top=t.top,u=t.top),l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},duration:{get:function(){return w},set:function(t){w=t,M.reset(w),r.duration(w),i.duration(w),a.duration(w)}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),r.color(f),o.color(f)}},rightAlignYAxis:{get:function(){return v},set:function(t){v=t,a.orient(t?"right":"left")}}}),e.utils.inheritOptions(A,r),e.utils.initOptions(A),A},e.models.distribution=function(){"use strict";var t,n={top:0,right:0,bottom:0,left:0},r=400,i=8,a="x",o=function(t){return t[a]},s=e.utils.defaultColor(),l=d3.scale.linear(),u=250,c=d3.dispatch("renderEnd"),d=e.utils.renderWatch(c,u);function f(r){return d.reset(),r.each((function(r){"x"===a?(n.left,n.right):(n.top,n.bottom);var u="x"==a?"y":"x",c=d3.select(this);e.utils.initSVG(c),t=t||l;var f=c.selectAll("g.nv-distribution").data([r]),p=(f.enter().append("g").attr("class","nvd3 nv-distribution").append("g"),f.select("g"));f.attr("transform","translate("+n.left+","+n.top+")");var h=p.selectAll("g.nv-dist").data((function(t){return t}),(function(t){return t.key}));h.enter().append("g"),h.attr("class",(function(t,e){return"nv-dist nv-series-"+e})).style("stroke",(function(t,e){return s(t,e)}));var g=h.selectAll("line.nv-dist"+a).data((function(t){return t.values}));g.enter().append("line").attr(a+"1",(function(e,n){return t(o(e,n))})).attr(a+"2",(function(e,n){return t(o(e,n))})),d.transition(h.exit().selectAll("line.nv-dist"+a),"dist exit").attr(a+"1",(function(t,e){return l(o(t,e))})).attr(a+"2",(function(t,e){return l(o(t,e))})).style("stroke-opacity",0).remove(),g.attr("class",(function(t,e){return"nv-dist"+a+" nv-dist"+a+"-"+e})).attr(u+"1",0).attr(u+"2",i),d.transition(g,"dist").attr(a+"1",(function(t,e){return l(o(t,e))})).attr(a+"2",(function(t,e){return l(o(t,e))})),t=l.copy()})),d.renderEnd("distribution immediate"),f}return f.options=e.utils.optionsFunc.bind(f),f.dispatch=c,f.margin=function(t){return arguments.length?(n.top=void 0!==t.top?t.top:n.top,n.right=void 0!==t.right?t.right:n.right,n.bottom=void 0!==t.bottom?t.bottom:n.bottom,n.left=void 0!==t.left?t.left:n.left,f):n},f.width=function(t){return arguments.length?(r=t,f):r},f.axis=function(t){return arguments.length?(a=t,f):a},f.size=function(t){return arguments.length?(i=t,f):i},f.getData=function(t){return arguments.length?(o=d3.functor(t),f):o},f.scale=function(t){return arguments.length?(l=t,f):l},f.color=function(t){return arguments.length?(s=e.utils.getColor(t),f):s},f.duration=function(t){return arguments.length?(u=t,d.reset(u),f):u},f},e.models.focus=function(t){"use strict";t=t||e.models.line();var n,r,i=e.models.axis(),a=e.models.axis(),o=d3.svg.brush(),s={top:10,right:0,bottom:30,left:0},l=e.utils.defaultColor(),u=null,c=70,d=!0,f=!1,p=!1,h=null,g=250,v=d3.dispatch("brush","onBrush","renderEnd"),m=!0;t.interactive(!1),t.pointActive((function(t){return!1}));var y=e.utils.renderWatch(v,g);function b(x){return y.reset(),y.models(t),d&&y.models(i),f&&y.models(a),x.each((function(y){var x=d3.select(this);e.utils.initSVG(x);var k=e.utils.availableWidth(u,x,s),w=c-s.top-s.bottom;b.update=function(){0===g?x.call(b):x.transition().duration(g).call(b)},b.container=this,n=t.xScale(),r=t.yScale();var M=x.selectAll("g.nv-focus").data([y]),A=M.enter().append("g").attr("class","nvd3 nv-focus").append("g"),C=M.select("g");M.attr("transform","translate("+s.left+","+s.top+")"),A.append("g").attr("class","nv-background").append("rect"),A.append("g").attr("class","nv-x nv-axis"),A.append("g").attr("class","nv-y nv-axis"),A.append("g").attr("class","nv-contentWrap"),A.append("g").attr("class","nv-brushBackground"),A.append("g").attr("class","nv-x nv-brush"),p&&C.select(".nv-y.nv-axis").attr("transform","translate("+k+",0)"),C.select(".nv-background rect").attr("width",k).attr("height",w),t.width(k).height(w).color(y.map((function(t,e){return t.color||l(t,e)})).filter((function(t,e){return!y[e].disabled})));var S=C.select(".nv-contentWrap").datum(y.filter((function(t){return!t.disabled})));d3.transition(S).call(t),o.x(n).on("brush",(function(){T(m)})),o.on("brushend",(function(){m||v.onBrush(o.empty()?n.domain():o.extent())})),h&&o.extent(h);var D=C.select(".nv-brushBackground").selectAll("g").data([h||o.extent()]),E=D.enter().append("g");E.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",w),E.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",w);var F=C.select(".nv-x.nv-brush").call(o);function T(t){h=o.empty()?null:o.extent();var e=o.empty()?n.domain():o.extent();v.brush({extent:e,brush:o}),o.empty()||o.extent(h),D.data([o.empty()?n.domain():h]).each((function(t,e){var r=n(t[0])-n.range()[0],i=k-n(t[1]);d3.select(this).select(".left").attr("width",r<0?0:r),d3.select(this).select(".right").attr("x",n(t[1])).attr("width",i<0?0:i)})),t&&v.onBrush(e)}F.selectAll("rect").attr("height",w),F.selectAll(".resize").append("path").attr("d",(function(t){var e=+("e"==t),n=e?1:-1,r=w/3;return"M"+.5*n+","+r+"A6,6 0 0 "+e+" "+6.5*n+","+(r+6)+"V"+(2*r-6)+"A6,6 0 0 "+e+" "+.5*n+","+2*r+"ZM"+2.5*n+","+(r+8)+"V"+(2*r-8)+"M"+4.5*n+","+(r+8)+"V"+(2*r-8)})),T(!0),C.select(".nv-background rect").attr("width",k).attr("height",w),d&&(i.scale(n)._ticks(e.utils.calcTicksX(k/100,y)).tickSize(-w,0),C.select(".nv-x.nv-axis").attr("transform","translate(0,"+r.range()[0]+")"),d3.transition(C.select(".nv-x.nv-axis")).call(i)),f&&(a.scale(r)._ticks(e.utils.calcTicksY(w/36,y)).tickSize(-k,0),d3.transition(C.select(".nv-y.nv-axis")).call(a)),C.select(".nv-x.nv-axis").attr("transform","translate(0,"+r.range()[0]+")")})),y.renderEnd("focus immediate"),b}return b.dispatch=v,b.content=t,b.brush=o,b.xAxis=i,b.yAxis=a,b.options=e.utils.optionsFunc.bind(b),b._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},showXAxis:{get:function(){return d},set:function(t){d=t}},showYAxis:{get:function(){return f},set:function(t){f=t}},brushExtent:{get:function(){return h},set:function(t){h=t}},syncBrushing:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return s},set:function(t){s.top=void 0!==t.top?t.top:s.top,s.right=void 0!==t.right?t.right:s.right,s.bottom=void 0!==t.bottom?t.bottom:s.bottom,s.left=void 0!==t.left?t.left:s.left}},duration:{get:function(){return g},set:function(e){g=e,y.reset(g),t.duration(g),i.duration(g),a.duration(g)}},color:{get:function(){return l},set:function(n){l=e.utils.getColor(n),t.color(l)}},interpolate:{get:function(){return t.interpolate()},set:function(e){t.interpolate(e)}},xTickFormat:{get:function(){return i.tickFormat()},set:function(t){i.tickFormat(t)}},yTickFormat:{get:function(){return a.tickFormat()},set:function(t){a.tickFormat(t)}},x:{get:function(){return t.x()},set:function(e){t.x(e)}},y:{get:function(){return t.y()},set:function(e){t.y(e)}},rightAlignYAxis:{get:function(){return p},set:function(t){p=t,a.orient(p?"right":"left")}}}),e.utils.inheritOptions(b,t),e.utils.initOptions(b),b},e.models.forceDirectedGraph=function(){"use strict";var t={top:2,right:0,bottom:2,left:0},n=400,r=32,i=null,a=d3.dispatch("renderEnd"),o=e.utils.getColor(["#000"]),s=e.models.tooltip(),l=null,u=.1,c=.9,d=30,f=-120,p=.1,h=.8,g=.1,v=5,m=function(t){},y=function(t){},b=d3.functor(0),x=d3.functor(0),k=e.utils.renderWatch(a);function w(a){return k.reset(),a.each((function(a){i=d3.select(this),e.utils.initSVG(i);var l=e.utils.availableWidth(n,i,t),b=e.utils.availableHeight(r,i,t);if(i.attr("width",l).attr("height",b),!(a&&a.links&&a.nodes))return e.utils.noData(w,i),w;i.selectAll(".nv-noData").remove(),i.selectAll("*").remove();var x=new Set;a.nodes.forEach((function(t){Object.keys(t).forEach((function(t){x.add(t)}))}));var k=d3.layout.force().nodes(a.nodes).links(a.links).size([l,b]).linkStrength(u).friction(c).linkDistance(d).charge(f).gravity(p).theta(h).alpha(g).start(),M=i.selectAll(".link").data(a.links).enter().append("line").attr("class","nv-force-link").style("stroke-width",(function(t){return Math.sqrt(t.value)})),A=i.selectAll(".node").data(a.nodes).enter().append("g").attr("class","nv-force-node").call(k.drag);A.append("circle").attr("r",v).style("fill",(function(t){return o(t)})).on("mouseover",(function(t){i.select(".nv-series-"+t.seriesIndex+" .nv-distx-"+t.pointIndex).attr("y1",t.py),i.select(".nv-series-"+t.seriesIndex+" .nv-disty-"+t.pointIndex).attr("x2",t.px);var e=o(t);t.series=[],x.forEach((function(n){t.series.push({color:e,key:n,value:t[n]})})),s.data(t).hidden(!1)})).on("mouseout",(function(t){s.hidden(!0)})),s.headerFormatter((function(t){return"Node"})),y(M),m(A),k.on("tick",(function(){M.attr("x1",(function(t){return t.source.x})).attr("y1",(function(t){return t.source.y})).attr("x2",(function(t){return t.target.x})).attr("y2",(function(t){return t.target.y})),A.attr("transform",(function(t){return"translate("+t.x+", "+t.y+")"}))}))})),w}return w.options=e.utils.optionsFunc.bind(w),w._options=Object.create({},{width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},linkStrength:{get:function(){return u},set:function(t){u=t}},friction:{get:function(){return c},set:function(t){c=t}},linkDist:{get:function(){return d},set:function(t){d=t}},charge:{get:function(){return f},set:function(t){f=t}},gravity:{get:function(){return p},set:function(t){p=t}},theta:{get:function(){return h},set:function(t){h=t}},alpha:{get:function(){return g},set:function(t){g=t}},radius:{get:function(){return v},set:function(t){v=t}},x:{get:function(){return b},set:function(t){b=d3.functor(t)}},y:{get:function(){return x},set:function(t){x=d3.functor(t)}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},color:{get:function(){return o},set:function(t){o=e.utils.getColor(t)}},noData:{get:function(){return l},set:function(t){l=t}},nodeExtras:{get:function(){return m},set:function(t){m=t}},linkExtras:{get:function(){return y},set:function(t){y=t}}}),w.dispatch=a,w.tooltip=s,e.utils.initOptions(w),w},e.models.furiousLegend=function(){"use strict";var t={top:5,right:0,bottom:5,left:0},n=400,r=20,i=function(t){return t.key},a=function(t){return t},o=e.utils.getColor(),s=20,l=!0,u=28,c=!0,d=!0,f=!1,p=!1,h=d3.dispatch("legendClick","legendDblclick","legendMouseover","legendMouseout","stateChange"),g="classic";function v(m){function y(t,e){return"furious"!=g?"#000":p?t.disengaged?o(t,e):"#fff":p?void 0:t.disabled?o(t,e):"#fff"}function b(t,e){return p&&"furious"==g?t.disengaged?"#fff":o(t,e):t.disabled?"#fff":o(t,e)}return m.each((function(v){var m=n-t.left-t.right,x=d3.select(this);e.utils.initSVG(x);var k=x.selectAll("g.nv-legend").data([v]),w=(k.enter().append("g").attr("class","nvd3 nv-legend").append("g"),k.select("g"));k.attr("transform","translate("+t.left+","+t.top+")");var M,A=w.selectAll(".nv-series").data((function(t){return"furious"!=g?t:t.filter((function(t){return!!p||!t.disengaged}))})),C=A.enter().append("g").attr("class","nv-series");"classic"==g?(C.append("circle").style("stroke-width",2).attr("class","nv-legend-symbol").attr("r",5),M=A.select("circle")):"furious"==g&&(C.append("rect").style("stroke-width",2).attr("class","nv-legend-symbol").attr("rx",3).attr("ry",3),M=A.select("rect"),C.append("g").attr("class","nv-check-box").property("innerHTML",'<path d="M0.5,5 L22.5,5 L22.5,26.5 L0.5,26.5 L0.5,5 Z" class="nv-box"></path><path d="M5.5,12.8618467 L11.9185089,19.2803556 L31,0.198864511" class="nv-check"></path>').attr("transform","translate(-10,-8)scale(0.5)"),A.select(".nv-check-box").each((function(t,e){d3.select(this).selectAll("path").attr("stroke",y(t,e))}))),C.append("text").attr("text-anchor","start").attr("class","nv-legend-text").attr("dy",".32em").attr("dx","8");var S,D=A.select("text.nv-legend-text");switch(A.on("mouseover",(function(t,e){h.legendMouseover(t,e)})).on("mouseout",(function(t,e){h.legendMouseout(t,e)})).on("click",(function(t,e){h.legendClick(t,e);var n=A.data();d&&("classic"==g?f?(n.forEach((function(t){t.disabled=!0})),t.disabled=!1):(t.disabled=!t.disabled,n.every((function(t){return t.disabled}))&&n.forEach((function(t){t.disabled=!1}))):"furious"==g&&(p?(t.disengaged=!t.disengaged,t.userDisabled=null==t.userDisabled?!!t.disabled:t.userDisabled,t.disabled=t.disengaged||t.userDisabled):p||(t.disabled=!t.disabled,t.userDisabled=t.disabled,n.filter((function(t){return!t.disengaged})).every((function(t){return t.userDisabled}))&&n.forEach((function(t){t.disabled=t.userDisabled=!1})))),h.stateChange({disabled:n.map((function(t){return!!t.disabled})),disengaged:n.map((function(t){return!!t.disengaged}))}))})).on("dblclick",(function(t,e){if(("furious"!=g||!p)&&(h.legendDblclick(t,e),d)){var n=A.data();n.forEach((function(t){t.disabled=!0,"furious"==g&&(t.userDisabled=t.disabled)})),t.disabled=!1,"furious"==g&&(t.userDisabled=t.disabled),h.stateChange({disabled:n.map((function(t){return!!t.disabled}))})}})),A.classed("nv-disabled",(function(t){return t.userDisabled})),A.exit().remove(),D.attr("fill",y).text((function(t){return a(i(t))})),g){case"furious":S=23;break;case"classic":S=20}if(l){var E=[];A.each((function(t,n){var r,o;if(a(i(t))&&a(i(t)).length>s){var l=a(i(t)).substring(0,s);r=d3.select(this).select("text").text(l+"..."),d3.select(this).append("svg:title").text(a(i(t)))}else r=d3.select(this).select("text");try{if((o=r.node().getComputedTextLength())<=0)throw Error()}catch(t){o=e.utils.calcApproxTextWidth(r)}E.push(o+u)}));for(var F=0,T=0,W=[];T<m&&F<E.length;)W[F]=E[F],T+=E[F++];for(0===F&&(F=1);T>m&&F>1;){W=[],F--;for(var N=0;N<E.length;N++)E[N]>(W[N%F]||0)&&(W[N%F]=E[N]);T=W.reduce((function(t,e,n,r){return t+e}))}for(var O=[],L=0,_=0;L<F;L++)O[L]=_,_+=W[L];A.attr("transform",(function(t,e){return"translate("+O[e%F]+","+(5+Math.floor(e/F)*S)+")"})),c?w.attr("transform","translate("+(n-t.right-T)+","+t.top+")"):w.attr("transform","translate(0,"+t.top+")"),r=t.top+t.bottom+Math.ceil(E.length/F)*S}else{var B,P=5,V=5,I=0;A.attr("transform",(function(e,r){var i=d3.select(this).select("text").node().getComputedTextLength()+u;return B=V,n<t.left+t.right+B+i&&(V=B=5,P+=S),(V+=i)>I&&(I=V),"translate("+B+","+P+")"})),w.attr("transform","translate("+(n-t.right-I)+","+t.top+")"),r=t.top+t.bottom+P+15}"furious"==g&&M.attr("width",(function(t,e){return D[0][e].getComputedTextLength()+27})).attr("height",18).attr("y",-9).attr("x",-15),M.style("fill",b).style("stroke",(function(t,e){return t.color||o(t,e)}))})),v}return v.dispatch=h,v.options=e.utils.optionsFunc.bind(v),v._options=Object.create({},{width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},key:{get:function(){return i},set:function(t){i=t}},keyFormatter:{get:function(){return a},set:function(t){a=t}},align:{get:function(){return l},set:function(t){l=t}},rightAlign:{get:function(){return c},set:function(t){c=t}},maxKeyLength:{get:function(){return s},set:function(t){s=t}},padding:{get:function(){return u},set:function(t){u=t}},updateState:{get:function(){return d},set:function(t){d=t}},radioButtonMode:{get:function(){return f},set:function(t){f=t}},expanded:{get:function(){return p},set:function(t){p=t}},vers:{get:function(){return g},set:function(t){g=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},color:{get:function(){return o},set:function(t){o=e.utils.getColor(t)}}}),e.utils.initOptions(v),v},e.models.historicalBar=function(){"use strict";var t,n,r,i,a={top:0,right:0,bottom:0,left:0},o=null,s=null,l=Math.floor(1e4*Math.random()),u=null,c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=[],g=[0],v=!1,m=!0,y=e.utils.defaultColor(),b=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),x=!0,k=e.utils.renderWatch(b,0);function w(M){return M.each((function(w){k.reset(),u=d3.select(this);var M=e.utils.availableWidth(o,u,a),A=e.utils.availableHeight(s,u,a);e.utils.initSVG(u),c.domain(t||d3.extent(w[0].values.map(f).concat(h))),v?c.range(r||[.5*M/w[0].values.length,M*(w[0].values.length-.5)/w[0].values.length]):c.range(r||[0,M]),d.domain(n||d3.extent(w[0].values.map(p).concat(g))).range(i||[A,0]),c.domain()[0]===c.domain()[1]&&(c.domain()[0]?c.domain([c.domain()[0]-.01*c.domain()[0],c.domain()[1]+.01*c.domain()[1]]):c.domain([-1,1])),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]+.01*d.domain()[0],d.domain()[1]-.01*d.domain()[1]]):d.domain([-1,1]));var C=u.selectAll("g.nv-wrap.nv-historicalBar-"+l).data([w[0].values]),S=C.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBar-"+l),D=S.append("defs"),E=S.append("g"),F=C.select("g");E.append("g").attr("class","nv-bars"),C.attr("transform","translate("+a.left+","+a.top+")"),u.on("click",(function(t,e){b.chartClick({data:t,index:e,pos:d3.event,id:l})})),D.append("clipPath").attr("id","nv-chart-clip-path-"+l).append("rect"),C.select("#nv-chart-clip-path-"+l+" rect").attr("width",M).attr("height",A),F.attr("clip-path",m?"url(#nv-chart-clip-path-"+l+")":"");var T=C.select(".nv-bars").selectAll(".nv-bar").data((function(t){return t}),(function(t,e){return f(t,e)}));T.exit().remove(),T.enter().append("rect").attr("x",0).attr("y",(function(t,n){return e.utils.NaNtoZero(d(Math.max(0,p(t,n))))})).attr("height",(function(t,n){return e.utils.NaNtoZero(Math.abs(d(p(t,n))-d(0)))})).attr("transform",(function(t,e){return"translate("+(c(f(t,e))-M/w[0].values.length*.45)+",0)"})).on("mouseover",(function(t,e){x&&(d3.select(this).classed("hover",!0),b.elementMouseover({data:t,index:e,color:d3.select(this).style("fill")}))})).on("mouseout",(function(t,e){x&&(d3.select(this).classed("hover",!1),b.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")}))})).on("mousemove",(function(t,e){x&&b.elementMousemove({data:t,index:e,color:d3.select(this).style("fill")})})).on("click",(function(t,e){x&&(b.elementClick({data:t,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation())})).on("dblclick",(function(t,e){x&&(b.elementDblClick({data:t,index:e,color:d3.select(this).style("fill")}),d3.event.stopPropagation())})),T.attr("fill",(function(t,e){return y(t,e)})).attr("class",(function(t,e,n){return(p(t,e)<0?"nv-bar negative":"nv-bar positive")+" nv-bar-"+n+"-"+e})).watchTransition(k,"bars").attr("transform",(function(t,e){return"translate("+(c(f(t,e))-M/w[0].values.length*.45)+",0)"})).attr("width",M/w[0].values.length*.9),T.watchTransition(k,"bars").attr("y",(function(t,n){var r=p(t,n)<0?d(0):d(0)-d(p(t,n))<1?d(0)-1:d(p(t,n));return e.utils.NaNtoZero(r)})).attr("height",(function(t,n){return e.utils.NaNtoZero(Math.max(Math.abs(d(p(t,n))-d(0)),1))}))})),k.renderEnd("historicalBar immediate"),w}return w.highlightPoint=function(t,e){u.select(".nv-bars .nv-bar-0-"+t).classed("hover",e)},w.clearHighlights=function(){u.select(".nv-bars .nv-bar.hover").classed("hover",!1)},w.dispatch=b,w.options=e.utils.optionsFunc.bind(w),w._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return s},set:function(t){s=t}},forceX:{get:function(){return h},set:function(t){h=t}},forceY:{get:function(){return g},set:function(t){g=t}},padData:{get:function(){return v},set:function(t){v=t}},x:{get:function(){return f},set:function(t){f=t}},y:{get:function(){return p},set:function(t){p=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return n},set:function(t){n=t}},xRange:{get:function(){return r},set:function(t){r=t}},yRange:{get:function(){return i},set:function(t){i=t}},clipEdge:{get:function(){return m},set:function(t){m=t}},id:{get:function(){return l},set:function(t){l=t}},interactive:{get:function(){return x},set:function(t){x=t}},margin:{get:function(){return a},set:function(t){a.top=void 0!==t.top?t.top:a.top,a.right=void 0!==t.right?t.right:a.right,a.bottom=void 0!==t.bottom?t.bottom:a.bottom,a.left=void 0!==t.left?t.left:a.left}},color:{get:function(){return y},set:function(t){y=e.utils.getColor(t)}}}),e.utils.initOptions(w),w},e.models.historicalBarChart=function(t){"use strict";var n,r,i=t||e.models.historicalBar(),a=e.models.axis(),o=e.models.axis(),s=e.models.legend(),l=e.interactiveGuideline(),u=e.models.tooltip(),c={top:30,right:90,bottom:50,left:90},d=null,f=e.utils.defaultColor(),p=null,h=null,g=!1,v=!0,m=!0,y=!1,b=!1,x={},k=null,w=null,M=d3.dispatch("tooltipHide","stateChange","changeState","renderEnd"),A=250;a.orient("bottom").tickPadding(7),o.orient(y?"right":"left"),u.duration(0).headerEnabled(!1).valueFormatter((function(t,e){return o.tickFormat()(t,e)})).headerFormatter((function(t,e){return a.tickFormat()(t,e)}));var C=e.utils.renderWatch(M,0);function S(t){return t.each((function(u){C.reset(),C.models(i),v&&C.models(a),m&&C.models(o);var w=d3.select(this);e.utils.initSVG(w);var D,E=e.utils.availableWidth(p,w,c),F=e.utils.availableHeight(h,w,c);if(S.update=function(){w.transition().duration(A).call(S)},S.container=this,x.disabled=u.map((function(t){return!!t.disabled})),!k)for(D in k={},x)x[D]instanceof Array?k[D]=x[D].slice(0):k[D]=x[D];if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(S,w),S;w.selectAll(".nv-noData").remove(),n=i.xScale(),r=i.yScale();var T=w.selectAll("g.nv-wrap.nv-historicalBarChart").data([u]),W=T.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBarChart").append("g"),N=T.select("g");W.append("g").attr("class","nv-x nv-axis"),W.append("g").attr("class","nv-y nv-axis"),W.append("g").attr("class","nv-barsWrap"),W.append("g").attr("class","nv-legendWrap"),W.append("g").attr("class","nv-interactive"),g?(s.width(E),N.select(".nv-legendWrap").datum(u).call(s),d||s.height()===c.top||(c.top=s.height(),F=e.utils.availableHeight(h,w,c)),T.select(".nv-legendWrap").attr("transform","translate(0,"+-c.top+")")):N.select(".nv-legendWrap").selectAll("*").remove(),T.attr("transform","translate("+c.left+","+c.top+")"),y&&N.select(".nv-y.nv-axis").attr("transform","translate("+E+",0)"),b&&(l.width(E).height(F).margin({left:c.left,top:c.top}).svgContainer(w).xScale(n),T.select(".nv-interactive").call(l)),i.width(E).height(F).color(u.map((function(t,e){return t.color||f(t,e)})).filter((function(t,e){return!u[e].disabled}))),N.select(".nv-barsWrap").datum(u.filter((function(t){return!t.disabled}))).transition().call(i),v&&(a.scale(n)._ticks(e.utils.calcTicksX(E/100,u)).tickSize(-F,0),N.select(".nv-x.nv-axis").attr("transform","translate(0,"+r.range()[0]+")"),N.select(".nv-x.nv-axis").transition().call(a)),m&&(o.scale(r)._ticks(e.utils.calcTicksY(F/36,u)).tickSize(-E,0),N.select(".nv-y.nv-axis").transition().call(o)),l.dispatch.on("elementMousemove",(function(t){i.clearHighlights();var n,r,s,c=[];u.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(a,o){r=e.interactiveBisect(a.values,t.pointXValue,S.x()),i.highlightPoint(r,!0);var l=a.values[r];void 0!==l&&(void 0===n&&(n=l),void 0===s&&(s=S.xScale()(S.x()(l,r))),c.push({key:a.key,value:S.y()(l,r),color:f(a,a.seriesIndex),data:a.values[r]}))}));var d=a.tickFormat()(S.x()(n,r));l.tooltip.valueFormatter((function(t,e){return o.tickFormat()(t)})).data({value:d,index:r,series:c})(),l.renderGuideLine(s)})),l.dispatch.on("elementMouseout",(function(t){M.tooltipHide(),i.clearHighlights()})),s.dispatch.on("legendClick",(function(e,n){e.disabled=!e.disabled,u.filter((function(t){return!t.disabled})).length||u.map((function(t){return t.disabled=!1,T.selectAll(".nv-series").classed("disabled",!1),t})),x.disabled=u.map((function(t){return!!t.disabled})),M.stateChange(x),t.transition().call(S)})),s.dispatch.on("legendDblclick",(function(t){u.forEach((function(t){t.disabled=!0})),t.disabled=!1,x.disabled=u.map((function(t){return!!t.disabled})),M.stateChange(x),S.update()})),M.on("changeState",(function(t){void 0!==t.disabled&&(u.forEach((function(e,n){e.disabled=t.disabled[n]})),x.disabled=t.disabled),S.update()}))})),C.renderEnd("historicalBarChart immediate"),S}return i.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:S.x()(t.data),value:S.y()(t.data),color:t.color},u.data(t).hidden(!1)})),i.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)})),i.dispatch.on("elementMousemove.tooltip",(function(t){u()})),S.dispatch=M,S.bars=i,S.legend=s,S.xAxis=a,S.yAxis=o,S.interactiveLayer=l,S.tooltip=u,S.options=e.utils.optionsFunc.bind(S),S._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showLegend:{get:function(){return g},set:function(t){g=t}},showXAxis:{get:function(){return v},set:function(t){v=t}},showYAxis:{get:function(){return m},set:function(t){m=t}},defaultState:{get:function(){return k},set:function(t){k=t}},noData:{get:function(){return w},set:function(t){w=t}},margin:{get:function(){return c},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),s.color(f),i.color(f)}},duration:{get:function(){return A},set:function(t){A=t,C.reset(A),o.duration(A),a.duration(A)}},rightAlignYAxis:{get:function(){return y},set:function(t){y=t,o.orient(t?"right":"left")}},useInteractiveGuideline:{get:function(){return b},set:function(t){b=t,!0===t&&S.interactive(!1)}}}),e.utils.inheritOptions(S,i),e.utils.initOptions(S),S},e.models.ohlcBarChart=function(){var t=e.models.historicalBarChart(e.models.ohlcBar());return t.useInteractiveGuideline(!0),t.interactiveLayer.tooltip.contentGenerator((function(e){var n=e.series[0].data;return'<h3 style="color: #'+(n.open<n.close?"2ca02c":"d62728")+'">'+e.value+"</h3><table><tr><td>open:</td><td>"+t.yAxis.tickFormat()(n.open)+"</td></tr><tr><td>close:</td><td>"+t.yAxis.tickFormat()(n.close)+"</td></tr><tr><td>high</td><td>"+t.yAxis.tickFormat()(n.high)+"</td></tr><tr><td>low:</td><td>"+t.yAxis.tickFormat()(n.low)+"</td></tr></table>"})),t},e.models.candlestickBarChart=function(){var t=e.models.historicalBarChart(e.models.candlestickBar());return t.useInteractiveGuideline(!0),t.interactiveLayer.tooltip.contentGenerator((function(e){var n=e.series[0].data;return'<h3 style="color: #'+(n.open<n.close?"2ca02c":"d62728")+'">'+e.value+"</h3><table><tr><td>open:</td><td>"+t.yAxis.tickFormat()(n.open)+"</td></tr><tr><td>close:</td><td>"+t.yAxis.tickFormat()(n.close)+"</td></tr><tr><td>high</td><td>"+t.yAxis.tickFormat()(n.high)+"</td></tr><tr><td>low:</td><td>"+t.yAxis.tickFormat()(n.low)+"</td></tr></table>"})),t},e.models.legend=function(){"use strict";var t={top:5,right:0,bottom:5,left:0},n=400,r=20,i=function(t){return t.key},a=function(t){return t},o=e.utils.getColor(),s=20,l=!0,u=32,c=!0,d=!0,f=!0,p=!1,h=!1,g=d3.dispatch("legendClick","legendDblclick","legendMouseover","legendMouseout","stateChange"),v="classic";function m(y){function b(t,e){return"furious"!=v?"#000":h?t.disengaged?"#000":"#fff":h?void 0:(t.color||(t.color=o(t,e)),t.disabled?t.color:"#fff")}function x(t,e){return h&&"furious"==v&&t.disengaged?"#eee":t.color||o(t,e)}function k(t,e){return h&&"furious"==v?1:t.disabled?0:1}return y.each((function(o){var m=n-t.left-t.right,y=d3.select(this);e.utils.initSVG(y);var w=y.selectAll("g.nv-legend").data([o]),M=w.enter().append("g").attr("class","nvd3 nv-legend").append("g"),A=w.select("g");c?w.attr("transform","translate("+-t.right+","+t.top+")"):w.attr("transform","translate("+t.left+","+t.top+")");var C,S,D=A.selectAll(".nv-series").data((function(t){return"furious"!=v?t:t.filter((function(t){return!!h||!t.disengaged}))})),E=D.enter().append("g").attr("class","nv-series");switch(v){case"furious":S=23;break;case"classic":S=20}"classic"==v?(E.append("circle").style("stroke-width",2).attr("class","nv-legend-symbol").attr("r",5),C=D.select(".nv-legend-symbol")):"furious"==v&&(E.append("rect").style("stroke-width",2).attr("class","nv-legend-symbol").attr("rx",3).attr("ry",3),C=D.select(".nv-legend-symbol"),E.append("g").attr("class","nv-check-box").property("innerHTML",'<path d="M0.5,5 L22.5,5 L22.5,26.5 L0.5,26.5 L0.5,5 Z" class="nv-box"></path><path d="M5.5,12.8618467 L11.9185089,19.2803556 L31,0.198864511" class="nv-check"></path>').attr("transform","translate(-10,-8)scale(0.5)"),D.select(".nv-check-box").each((function(t,e){d3.select(this).selectAll("path").attr("stroke",b(t,e))}))),E.append("text").attr("text-anchor","start").attr("class","nv-legend-text").attr("dy",".32em").attr("dx","8");var F=D.select("text.nv-legend-text");D.on("mouseover",(function(t,e){g.legendMouseover(t,e)})).on("mouseout",(function(t,e){g.legendMouseout(t,e)})).on("click",(function(t,e){g.legendClick(t,e);var n=D.data();d&&("classic"==v?p?(n.forEach((function(t){t.disabled=!0})),t.disabled=!1):(t.disabled=!t.disabled,n.every((function(t){return t.disabled}))&&n.forEach((function(t){t.disabled=!1}))):"furious"==v&&(h?(t.disengaged=!t.disengaged,t.userDisabled=null==t.userDisabled?!!t.disabled:t.userDisabled,t.disabled=t.disengaged||t.userDisabled):h||(t.disabled=!t.disabled,t.userDisabled=t.disabled,n.filter((function(t){return!t.disengaged})).every((function(t){return t.userDisabled}))&&n.forEach((function(t){t.disabled=t.userDisabled=!1})))),g.stateChange({disabled:n.map((function(t){return!!t.disabled})),disengaged:n.map((function(t){return!!t.disengaged}))}))})).on("dblclick",(function(t,e){if(f){if("furious"==v&&h)return;if(g.legendDblclick(t,e),d){var n=D.data();n.forEach((function(t){t.disabled=!0,"furious"==v&&(t.userDisabled=t.disabled)})),t.disabled=!1,"furious"==v&&(t.userDisabled=t.disabled),g.stateChange({disabled:n.map((function(t){return!!t.disabled}))})}}})),D.classed("nv-disabled",(function(t){return t.userDisabled})),D.exit().remove(),F.attr("fill",b).text((function(t){return a(i(t))}));var T=0;if(l){var W=[];D.each((function(t,n){var r,o;if(a(i(t))&&a(i(t)).length>s){var l=a(i(t)).substring(0,s);r=d3.select(this).select("text").text(l+"..."),d3.select(this).append("svg:title").text(a(i(t)))}else r=d3.select(this).select("text");try{if((o=r.node().getComputedTextLength())<=0)throw Error()}catch(t){o=e.utils.calcApproxTextWidth(r)}W.push(o+u)}));var N=0,O=[];for(T=0;T<m&&N<W.length;)O[N]=W[N],T+=W[N++];for(0===N&&(N=1);T>m&&N>1;){O=[],N--;for(var L=0;L<W.length;L++)W[L]>(O[L%N]||0)&&(O[L%N]=W[L]);T=O.reduce((function(t,e,n,r){return t+e}))}for(var _=[],B=0,P=0;B<N;B++)_[B]=P,P+=O[B];D.attr("transform",(function(t,e){return"translate("+_[e%N]+","+(5+Math.floor(e/N)*S)+")"})),c?A.attr("transform","translate("+(n-t.right-T)+","+t.top+")"):A.attr("transform","translate(0,"+t.top+")"),r=t.top+t.bottom+Math.ceil(W.length/N)*S}else{var V,I=5,H=5,R=0;D.attr("transform",(function(e,r){var i=d3.select(this).select("text").node().getComputedTextLength()+u;return V=H,n<t.left+t.right+V+i&&(H=V=5,I+=S),(H+=i)>R&&(R=H),T<V+R&&(T=V+R),"translate("+V+","+I+")"})),A.attr("transform","translate("+(n-t.right-R)+","+t.top+")"),r=t.top+t.bottom+I+15}"furious"==v&&(C.attr("width",(function(t,e){return F[0][e].getComputedTextLength()+27})).attr("height",18).attr("y",-9).attr("x",-15),M.insert("rect",":first-child").attr("class","nv-legend-bg").attr("fill","#eee").attr("opacity",0),A.select(".nv-legend-bg").transition().duration(300).attr("x",-S).attr("width",T+S-12).attr("height",r+10).attr("y",-t.top-10).attr("opacity",h?1:0)),C.style("fill",x).style("fill-opacity",k).style("stroke",x)})),m}return m.dispatch=g,m.options=e.utils.optionsFunc.bind(m),m._options=Object.create({},{width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},key:{get:function(){return i},set:function(t){i=t}},keyFormatter:{get:function(){return a},set:function(t){a=t}},align:{get:function(){return l},set:function(t){l=t}},maxKeyLength:{get:function(){return s},set:function(t){s=t}},rightAlign:{get:function(){return c},set:function(t){c=t}},padding:{get:function(){return u},set:function(t){u=t}},updateState:{get:function(){return d},set:function(t){d=t}},enableDoubleClick:{get:function(){return f},set:function(t){f=t}},radioButtonMode:{get:function(){return p},set:function(t){p=t}},expanded:{get:function(){return h},set:function(t){h=t}},vers:{get:function(){return v},set:function(t){v=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},color:{get:function(){return o},set:function(t){o=e.utils.getColor(t)}}}),e.utils.initOptions(m),m},e.models.line=function(){"use strict";var t,n,r=e.models.scatter(),i={top:0,right:0,bottom:0,left:0},a=960,o=500,s=null,l=e.utils.defaultColor(),u=function(t){return t.x},c=function(t){return t.y},d=function(t,e){return!isNaN(c(t,e))&&null!==c(t,e)},f=function(t){return t.area},p=!1,h="linear",g=250,v=d3.dispatch("elementClick","elementMouseover","elementMouseout","renderEnd");r.pointSize(16).pointDomain([16,256]);var m,y,b=e.utils.renderWatch(v,g);function x(g){return b.reset(),b.models(r),g.each((function(g){s=d3.select(this);var v=e.utils.availableWidth(a,s,i),x=e.utils.availableHeight(o,s,i);e.utils.initSVG(s),t=r.xScale(),n=r.yScale(),m=m||t,y=y||n;var k=s.selectAll("g.nv-wrap.nv-line").data([g]),w=k.enter().append("g").attr("class","nvd3 nv-wrap nv-line"),M=w.append("defs"),A=w.append("g"),C=k.select("g");A.append("g").attr("class","nv-groups"),A.append("g").attr("class","nv-scatterWrap"),k.attr("transform","translate("+i.left+","+i.top+")"),r.width(v).height(x);var S=k.select(".nv-scatterWrap");S.call(r),M.append("clipPath").attr("id","nv-edge-clip-"+r.id()).append("rect"),k.select("#nv-edge-clip-"+r.id()+" rect").attr("width",v).attr("height",x>0?x:0),C.attr("clip-path",p?"url(#nv-edge-clip-"+r.id()+")":""),S.attr("clip-path",p?"url(#nv-edge-clip-"+r.id()+")":"");var D=k.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t){return t.key}));D.enter().append("g").style("stroke-opacity",1e-6).style("stroke-width",(function(t){return t.strokeWidth||1.5})).style("fill-opacity",1e-6),D.exit().remove(),D.attr("class",(function(t,e){return(t.classed||"")+" nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})).style("fill",(function(t,e){return l(t,e)})).style("stroke",(function(t,e){return l(t,e)})),D.watchTransition(b,"line: groups").style("stroke-opacity",1).style("fill-opacity",(function(t){return t.fillOpacity||.5}));var E=D.selectAll("path.nv-area").data((function(t){return f(t)?[t]:[]}));E.enter().append("path").attr("class","nv-area").attr("d",(function(t){return d3.svg.area().interpolate(h).defined(d).x((function(t,n){return e.utils.NaNtoZero(m(u(t,n)))})).y0((function(t,n){return e.utils.NaNtoZero(y(c(t,n)))})).y1((function(t,e){return y(n.domain()[0]<=0?n.domain()[1]>=0?0:n.domain()[1]:n.domain()[0])})).apply(this,[t.values])})),D.exit().selectAll("path.nv-area").remove(),E.watchTransition(b,"line: areaPaths").attr("d",(function(r){return d3.svg.area().interpolate(h).defined(d).x((function(n,r){return e.utils.NaNtoZero(t(u(n,r)))})).y0((function(t,r){return e.utils.NaNtoZero(n(c(t,r)))})).y1((function(t,e){return n(n.domain()[0]<=0?n.domain()[1]>=0?0:n.domain()[1]:n.domain()[0])})).apply(this,[r.values])}));var F=D.selectAll("path.nv-line").data((function(t){return[t.values]}));F.enter().append("path").attr("class","nv-line").attr("d",d3.svg.line().interpolate(h).defined(d).x((function(t,n){return e.utils.NaNtoZero(m(u(t,n)))})).y((function(t,n){return e.utils.NaNtoZero(y(c(t,n)))}))),F.watchTransition(b,"line: linePaths").attr("d",d3.svg.line().interpolate(h).defined(d).x((function(n,r){return e.utils.NaNtoZero(t(u(n,r)))})).y((function(t,r){return e.utils.NaNtoZero(n(c(t,r)))}))),m=t.copy(),y=n.copy()})),b.renderEnd("line immediate"),x}return x.dispatch=v,x.scatter=r,r.dispatch.on("elementClick",(function(){v.elementClick.apply(this,arguments)})),r.dispatch.on("elementMouseover",(function(){v.elementMouseover.apply(this,arguments)})),r.dispatch.on("elementMouseout",(function(){v.elementMouseout.apply(this,arguments)})),x.options=e.utils.optionsFunc.bind(x),x._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return o},set:function(t){o=t}},defined:{get:function(){return d},set:function(t){d=t}},interpolate:{get:function(){return h},set:function(t){h=t}},clipEdge:{get:function(){return p},set:function(t){p=t}},margin:{get:function(){return i},set:function(t){i.top=void 0!==t.top?t.top:i.top,i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}},duration:{get:function(){return g},set:function(t){g=t,b.reset(g),r.duration(g)}},isArea:{get:function(){return f},set:function(t){f=d3.functor(t)}},x:{get:function(){return u},set:function(t){u=t,r.x(t)}},y:{get:function(){return c},set:function(t){c=t,r.y(t)}},color:{get:function(){return l},set:function(t){l=e.utils.getColor(t),r.color(l)}}}),e.utils.inheritOptions(x,r),e.utils.initOptions(x),x},e.models.lineChart=function(){"use strict";var t,n,r=e.models.line(),i=e.models.axis(),a=e.models.axis(),o=e.models.legend(),s=e.interactiveGuideline(),l=e.models.tooltip(),u=e.models.focus(e.models.line()),c={top:30,right:20,bottom:50,left:60},d=null,f=e.utils.defaultColor(),p=null,h=null,g=!0,v="top",m=!0,y=!0,b=!1,x=!1,k=!1,w=e.utils.state(),M=null,A=null,C=d3.dispatch("stateChange","changeState","renderEnd"),S=250;i.orient("bottom").tickPadding(7),a.orient(b?"right":"left"),r.clipEdge(!0).duration(0),l.valueFormatter((function(t,e){return a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),s.tooltip.valueFormatter((function(t,e){return a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)}));var D=e.utils.renderWatch(C,S);function E(l){return D.reset(),D.models(r),m&&D.models(i),y&&D.models(a),l.each((function(l){var A=d3.select(this);e.utils.initSVG(A);var D,F=e.utils.availableWidth(p,A,c),T=e.utils.availableHeight(h,A,c)-(k?u.height():0);if(E.update=function(){0===S?A.call(E):A.transition().duration(S).call(E)},E.container=this,w.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(l),E.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(l)).update(),w.disabled=l.map((function(t){return!!t.disabled})),!M)for(D in M={},w)w[D]instanceof Array?M[D]=w[D].slice(0):M[D]=w[D];if(!(l&&l.length&&l.filter((function(t){return t.values.length})).length))return e.utils.noData(E,A),E;A.selectAll(".nv-noData").remove(),u.dispatch.on("onBrush",(function(t){I(t)})),t=r.xScale(),n=r.yScale();var W=A.selectAll("g.nv-wrap.nv-lineChart").data([l]),N=W.enter().append("g").attr("class","nvd3 nv-wrap nv-lineChart").append("g"),O=W.select("g");N.append("g").attr("class","nv-legendWrap");var L=N.append("g").attr("class","nv-focus");L.append("g").attr("class","nv-background").append("rect"),L.append("g").attr("class","nv-x nv-axis"),L.append("g").attr("class","nv-y nv-axis"),L.append("g").attr("class","nv-linesWrap"),L.append("g").attr("class","nv-interactive"),N.append("g").attr("class","nv-focusWrap"),g?(o.width(F),O.select(".nv-legendWrap").datum(l).call(o),"bottom"===v?(c.bottom=i.height()+o.height(),T=e.utils.availableHeight(h,A,c),O.select(".nv-legendWrap").attr("transform","translate(0,"+(T+i.height())+")")):"top"===v&&(d||o.height()===c.top||(c.top=o.height(),T=e.utils.availableHeight(h,A,c)-(k?u.height():0)),W.select(".nv-legendWrap").attr("transform","translate(0,"+-c.top+")"))):O.select(".nv-legendWrap").selectAll("*").remove(),W.attr("transform","translate("+c.left+","+c.top+")"),b&&O.select(".nv-y.nv-axis").attr("transform","translate("+F+",0)"),x&&(s.width(F).height(T).margin({left:c.left,top:c.top}).svgContainer(A).xScale(t),W.select(".nv-interactive").call(s)),O.select(".nv-focus .nv-background rect").attr("width",F).attr("height",T),r.width(F).height(T).color(l.map((function(t,e){return t.color||f(t,e)})).filter((function(t,e){return!l[e].disabled})));var _=O.select(".nv-linesWrap").datum(l.filter((function(t){return!t.disabled})));function B(){m&&O.select(".nv-focus .nv-x.nv-axis").transition().duration(S).call(i)}function P(){y&&O.select(".nv-focus .nv-y.nv-axis").transition().duration(S).call(a)}if(m&&i.scale(t)._ticks(e.utils.calcTicksX(F/100,l)).tickSize(-T,0),y&&a.scale(n)._ticks(e.utils.calcTicksY(T/36,l)).tickSize(-F,0),O.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+T+")"),k||null!==u.brush.extent()){u.width(F),O.select(".nv-focusWrap").style("display",k?"initial":"none").attr("transform","translate(0,"+(T+c.bottom+u.margin().top)+")").call(u);var V=u.brush.empty()?u.xDomain():u.brush.extent();null!==V&&I(V)}else _.call(r),B(),P();function I(t){O.select(".nv-focus .nv-linesWrap").datum(l.filter((function(t){return!t.disabled})).map((function(e,n){return{key:e.key,area:e.area,classed:e.classed,values:e.values.filter((function(e,n){return r.x()(e,n)>=t[0]&&r.x()(e,n)<=t[1]})),disableTooltip:e.disableTooltip}}))).transition().duration(S).call(r),B(),P()}o.dispatch.on("stateChange",(function(t){for(var e in t)w[e]=t[e];C.stateChange(w),E.update()})),s.dispatch.on("elementMousemove",(function(n){r.clearHighlights();var i,o,c,d=[];if(l.filter((function(t,e){return t.seriesIndex=e,!t.disabled&&!t.disableTooltip})).forEach((function(a,s){var l=null!==u.brush.extent()?u.brush.empty()?u.xScale().domain():u.brush.extent():t.domain(),p=a.values.filter((function(t,e){return l[0]<=l[1]?r.x()(t,e)>=l[0]&&r.x()(t,e)<=l[1]:r.x()(t,e)>=l[1]&&r.x()(t,e)<=l[0]})),h=p[o=e.interactiveBisect(p,n.pointXValue,r.x())],g=E.y()(h,o);null!==g&&r.highlightPoint(s,o,!0),void 0!==h&&(void 0===i&&(i=h),void 0===c&&(c=E.xScale()(E.x()(h,o))),d.push({key:a.key,value:g,color:f(a,a.seriesIndex),data:h}))})),d.length>2){var p=E.yScale().invert(n.mouseY),h=.03*Math.abs(E.yScale().domain()[0]-E.yScale().domain()[1]),g=e.nearestValueIndex(d.map((function(t){return t.value})),p,h);null!==g&&(d[g].highlight=!0)}s.tooltip.valueFormatter(s.tooltip.valueFormatter()||function(t,e){return null==t?"N/A":a.tickFormat()(t)}).data({value:E.x()(i,o),index:o,series:d})(),s.renderGuideLine(c)})),s.dispatch.on("elementClick",(function(t){var n,i=[];l.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(r){var a=e.interactiveBisect(r.values,t.pointXValue,E.x()),o=r.values[a];if(void 0!==o){void 0===n&&(n=E.xScale()(E.x()(o,a)));var s=E.yScale()(E.y()(o,a));i.push({point:o,pointIndex:a,pos:[n,s],seriesIndex:r.seriesIndex,series:r})}})),r.dispatch.elementClick(i)})),s.dispatch.on("elementMouseout",(function(t){r.clearHighlights()})),C.on("changeState",(function(t){void 0!==t.disabled&&l.length===t.disabled.length&&(l.forEach((function(e,n){e.disabled=t.disabled[n]})),w.disabled=t.disabled),E.update()}))})),D.renderEnd("lineChart immediate"),E}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.series.disableTooltip||l.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){l.hidden(!0)})),E.dispatch=C,E.lines=r,E.legend=o,E.focus=u,E.xAxis=i,E.x2Axis=u.xAxis,E.yAxis=a,E.y2Axis=u.yAxis,E.interactiveLayer=s,E.tooltip=l,E.state=w,E.dispatch=C,E.options=e.utils.optionsFunc.bind(E),E._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showLegend:{get:function(){return g},set:function(t){g=t}},legendPosition:{get:function(){return v},set:function(t){v=t}},showXAxis:{get:function(){return m},set:function(t){m=t}},showYAxis:{get:function(){return y},set:function(t){y=t}},defaultState:{get:function(){return M},set:function(t){M=t}},noData:{get:function(){return A},set:function(t){A=t}},focusEnable:{get:function(){return k},set:function(t){k=t}},focusHeight:{get:function(){return u.height()},set:function(t){u.height(t)}},focusShowAxisX:{get:function(){return u.showXAxis()},set:function(t){u.showXAxis(t)}},focusShowAxisY:{get:function(){return u.showYAxis()},set:function(t){u.showYAxis(t)}},brushExtent:{get:function(){return u.brushExtent()},set:function(t){u.brushExtent(t)}},focusMargin:{get:function(){return u.margin},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),u.margin.right=void 0!==t.right?t.right:u.margin.right,u.margin.bottom=void 0!==t.bottom?t.bottom:u.margin.bottom,u.margin.left=void 0!==t.left?t.left:u.margin.left}},margin:{get:function(){return c},set:function(t){c.top=void 0!==t.top?t.top:c.top,c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},duration:{get:function(){return S},set:function(t){S=t,D.reset(S),r.duration(S),u.duration(S),i.duration(S),a.duration(S)}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t),o.color(f),r.color(f),u.color(f)}},interpolate:{get:function(){return r.interpolate()},set:function(t){r.interpolate(t),u.interpolate(t)}},xTickFormat:{get:function(){return i.tickFormat()},set:function(t){i.tickFormat(t),u.xTickFormat(t)}},yTickFormat:{get:function(){return a.tickFormat()},set:function(t){a.tickFormat(t),u.yTickFormat(t)}},x:{get:function(){return r.x()},set:function(t){r.x(t),u.x(t)}},y:{get:function(){return r.y()},set:function(t){r.y(t),u.y(t)}},rightAlignYAxis:{get:function(){return b},set:function(t){b=t,a.orient(b?"right":"left")}},useInteractiveGuideline:{get:function(){return x},set:function(t){(x=t)&&(r.interactive(!1),r.useVoronoi(!1))}}}),e.utils.inheritOptions(E,r),e.utils.initOptions(E),E},e.models.lineWithFocusChart=function(){return e.models.lineChart().margin({bottom:30}).focusEnable(!0)},e.models.linePlusBarChart=function(){"use strict";var t,n,r,i,a,o,s,l=e.models.line(),u=e.models.line(),c=e.models.historicalBar(),d=e.models.historicalBar(),f=e.models.axis(),p=e.models.axis(),h=e.models.axis(),g=e.models.axis(),v=e.models.axis(),m=e.models.axis(),y=e.models.legend(),b=d3.svg.brush(),x=e.models.tooltip(),k={top:30,right:30,bottom:30,left:60},w=null,M={top:0,right:30,bottom:20,left:60},A=null,C=null,S=function(t){return t.x},D=function(t){return t.y},E=e.utils.defaultColor(),F=!0,T=!0,W=!1,N=!0,O=50,L=null,_=null,B=d3.dispatch("brush","stateChange","changeState"),P=0,V=e.utils.state(),I=null,H=" (left axis)",R=" (right axis)",j=!1;l.clipEdge(!0),u.interactive(!1),u.pointActive((function(t){return!1})),f.orient("bottom").tickPadding(5),h.orient("left"),g.orient("right"),p.orient("bottom").tickPadding(5),v.orient("left"),m.orient("right"),x.headerEnabled(!0).headerFormatter((function(t,e){return f.tickFormat()(t,e)}));var z=function(t){return t.every((function(t){return t.disabled}))};function q(x){return x.each((function(x){var _=d3.select(this);e.utils.initSVG(_);var G,Y=e.utils.availableWidth(A,_,k),X=e.utils.availableHeight(C,_,k)-(T?O:0),$=O-M.top-M.bottom;if(q.update=function(){_.transition().duration(P).call(q)},q.container=this,V.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(x),q.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(x)).update(),V.disabled=x.map((function(t){return!!t.disabled})),!I)for(G in I={},V)V[G]instanceof Array?I[G]=V[G].slice(0):I[G]=V[G];if(!(x&&x.length&&x.filter((function(t){return t.values.length})).length))return e.utils.noData(q,_),q;_.selectAll(".nv-noData").remove();var Q=x.filter((function(t){return!t.disabled&&t.bar})),Z=x.filter((function(t){return!t.bar}));n=Q.length&&!j?c.xScale():l.xScale(),r=p.scale(),i=j?l.yScale():c.yScale(),a=j?c.yScale():l.yScale(),o=j?u.yScale():d.yScale(),s=j?d.yScale():u.yScale();var U=x.filter((function(t){return!t.disabled&&(j?!t.bar:t.bar)})).map((function(t){return t.values.map((function(t,e){return{x:S(t,e),y:D(t,e)}}))})),K=x.filter((function(t){return!t.disabled&&(j?t.bar:!t.bar)})).map((function(t){return t.values.map((function(t,e){return{x:S(t,e),y:D(t,e)}}))}));n.range([0,Y]),r.domain(d3.extent(d3.merge(U.concat(K)),(function(t){return t.x}))).range([0,Y]);var J=_.selectAll("g.nv-wrap.nv-linePlusBar").data([x]),tt=J.enter().append("g").attr("class","nvd3 nv-wrap nv-linePlusBar").append("g"),et=J.select("g");tt.append("g").attr("class","nv-legendWrap");var nt=tt.append("g").attr("class","nv-focus");nt.append("g").attr("class","nv-x nv-axis"),nt.append("g").attr("class","nv-y1 nv-axis"),nt.append("g").attr("class","nv-y2 nv-axis"),nt.append("g").attr("class","nv-barsWrap"),nt.append("g").attr("class","nv-linesWrap");var rt=tt.append("g").attr("class","nv-context");if(rt.append("g").attr("class","nv-x nv-axis"),rt.append("g").attr("class","nv-y1 nv-axis"),rt.append("g").attr("class","nv-y2 nv-axis"),rt.append("g").attr("class","nv-barsWrap"),rt.append("g").attr("class","nv-linesWrap"),rt.append("g").attr("class","nv-brushBackground"),rt.append("g").attr("class","nv-x nv-brush"),F){var it=y.align()?Y/2:Y,at=y.align()?it:0;y.width(it),et.select(".nv-legendWrap").datum(x.map((function(t){return t.originalKey=void 0===t.originalKey?t.key:t.originalKey,t.key=j?t.originalKey+(t.bar?R:H):t.originalKey+(t.bar?H:R),t}))).call(y),w||y.height()===k.top||(k.top=y.height(),X=e.utils.availableHeight(C,_,k)-O),et.select(".nv-legendWrap").attr("transform","translate("+at+","+-k.top+")")}else et.select(".nv-legendWrap").selectAll("*").remove();J.attr("transform","translate("+k.left+","+k.top+")"),et.select(".nv-context").style("display",T?"initial":"none"),d.width(Y).height($).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&x[e].bar}))),u.width(Y).height($).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&!x[e].bar})));var ot=et.select(".nv-context .nv-barsWrap").datum(Q.length?Q:[{values:[]}]),st=et.select(".nv-context .nv-linesWrap").datum(z(Z)?[{values:[]}]:Z.filter((function(t){return!t.disabled})));et.select(".nv-context").attr("transform","translate(0,"+(X+k.bottom+M.top)+")"),ot.transition().call(d),st.transition().call(u),N&&(p._ticks(e.utils.calcTicksX(Y/100,x)).tickSize(-$,0),et.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+o.range()[0]+")"),et.select(".nv-context .nv-x.nv-axis").transition().call(p)),W&&(v.scale(o)._ticks($/36).tickSize(-Y,0),m.scale(s)._ticks($/36).tickSize(Q.length?0:-Y,0),et.select(".nv-context .nv-y3.nv-axis").style("opacity",Q.length?1:0).attr("transform","translate(0,"+r.range()[0]+")"),et.select(".nv-context .nv-y2.nv-axis").style("opacity",Z.length?1:0).attr("transform","translate("+r.range()[1]+",0)"),et.select(".nv-context .nv-y1.nv-axis").transition().call(v),et.select(".nv-context .nv-y2.nv-axis").transition().call(m)),b.x(r).on("brush",dt),L&&b.extent(L);var lt=et.select(".nv-brushBackground").selectAll("g").data([L||b.extent()]),ut=lt.enter().append("g");ut.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",$),ut.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",$);var ct=et.select(".nv-x.nv-brush").call(b);function dt(){L=b.empty()?null:b.extent(),t=b.empty()?r.domain():b.extent(),B.brush({extent:t,brush:b}),b.empty()||b.extent(L),lt.data([b.empty()?r.domain():L]).each((function(t,e){var n=r(t[0])-r.range()[0],i=r.range()[1]-r(t[1]);d3.select(this).select(".left").attr("width",n<0?0:n),d3.select(this).select(".right").attr("x",r(t[1])).attr("width",i<0?0:i)})),c.width(Y).height(X).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&x[e].bar}))),l.width(Y).height(X).color(x.map((function(t,e){return t.color||E(t,e)})).filter((function(t,e){return!x[e].disabled&&!x[e].bar})));var o=et.select(".nv-focus .nv-barsWrap").datum(Q.length?Q.map((function(e,n){return{key:e.key,values:e.values.filter((function(e,n){return c.x()(e,n)>=t[0]&&c.x()(e,n)<=t[1]}))}})):[{values:[]}]),s=et.select(".nv-focus .nv-linesWrap").datum(z(Z)?[{values:[]}]:Z.filter((function(t){return!t.disabled})).map((function(e,n){return{area:e.area,fillOpacity:e.fillOpacity,strokeWidth:e.strokeWidth,key:e.key,values:e.values.filter((function(e,n){return l.x()(e,n)>=t[0]&&l.x()(e,n)<=t[1]}))}})));n=Q.length&&!j?c.xScale():l.xScale(),f.scale(n)._ticks(e.utils.calcTicksX(Y/100,x)).tickSize(-X,0),f.domain([Math.ceil(t[0]),Math.floor(t[1])]),et.select(".nv-x.nv-axis").transition().duration(P).call(f),o.transition().duration(P).call(c),s.transition().duration(P).call(l),et.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+i.range()[0]+")"),h.scale(i)._ticks(e.utils.calcTicksY(X/36,x)).tickSize(-Y,0),g.scale(a)._ticks(e.utils.calcTicksY(X/36,x)),j?g.tickSize(Z.length?0:-Y,0):g.tickSize(Q.length?0:-Y,0);var u=Q.length?1:0,d=Z.length&&!z(Z)?1:0,p=j?d:u,v=j?u:d;et.select(".nv-focus .nv-y1.nv-axis").style("opacity",p),et.select(".nv-focus .nv-y2.nv-axis").style("opacity",v).attr("transform","translate("+n.range()[1]+",0)"),et.select(".nv-focus .nv-y1.nv-axis").transition().duration(P).call(h),et.select(".nv-focus .nv-y2.nv-axis").transition().duration(P).call(g)}ct.selectAll("rect").attr("height",$),ct.selectAll(".resize").append("path").attr("d",(function(t){var e=+("e"==t),n=e?1:-1,r=$/3;return"M"+.5*n+","+r+"A6,6 0 0 "+e+" "+6.5*n+","+(r+6)+"V"+(2*r-6)+"A6,6 0 0 "+e+" "+.5*n+","+2*r+"ZM"+2.5*n+","+(r+8)+"V"+(2*r-8)+"M"+4.5*n+","+(r+8)+"V"+(2*r-8)})),y.dispatch.on("stateChange",(function(t){for(var e in t)V[e]=t[e];B.stateChange(V),q.update()})),B.on("changeState",(function(t){void 0!==t.disabled&&(x.forEach((function(e,n){e.disabled=t.disabled[n]})),V.disabled=t.disabled),q.update()})),dt()})),q}return l.dispatch.on("elementMouseover.tooltip",(function(t){x.duration(100).valueFormatter((function(t,e){return(j?{main:h,focus:v}:{main:g,focus:m}).main.tickFormat()(t,e)})).data(t).hidden(!1)})),l.dispatch.on("elementMouseout.tooltip",(function(t){x.hidden(!0)})),c.dispatch.on("elementMouseover.tooltip",(function(t){t.value=q.x()(t.data),t.series={value:q.y()(t.data),color:t.color},x.duration(0).valueFormatter((function(t,e){return(j?{main:g,focus:m}:{main:h,focus:v}).main.tickFormat()(t,e)})).data(t).hidden(!1)})),c.dispatch.on("elementMouseout.tooltip",(function(t){x.hidden(!0)})),c.dispatch.on("elementMousemove.tooltip",(function(t){x()})),q.dispatch=B,q.legend=y,q.lines=l,q.lines2=u,q.bars=c,q.bars2=d,q.xAxis=f,q.x2Axis=p,q.y1Axis=h,q.y2Axis=g,q.y3Axis=v,q.y4Axis=m,q.tooltip=x,q.options=e.utils.optionsFunc.bind(q),q._options=Object.create({},{width:{get:function(){return A},set:function(t){A=t}},height:{get:function(){return C},set:function(t){C=t}},showLegend:{get:function(){return F},set:function(t){F=t}},brushExtent:{get:function(){return L},set:function(t){L=t}},noData:{get:function(){return _},set:function(t){_=t}},focusEnable:{get:function(){return T},set:function(t){T=t}},focusHeight:{get:function(){return O},set:function(t){O=t}},focusShowAxisX:{get:function(){return N},set:function(t){N=t}},focusShowAxisY:{get:function(){return W},set:function(t){W=t}},legendLeftAxisHint:{get:function(){return H},set:function(t){H=t}},legendRightAxisHint:{get:function(){return R},set:function(t){R=t}},margin:{get:function(){return k},set:function(t){void 0!==t.top&&(k.top=t.top,w=t.top),k.right=void 0!==t.right?t.right:k.right,k.bottom=void 0!==t.bottom?t.bottom:k.bottom,k.left=void 0!==t.left?t.left:k.left}},focusMargin:{get:function(){return M},set:function(t){M.top=void 0!==t.top?t.top:M.top,M.right=void 0!==t.right?t.right:M.right,M.bottom=void 0!==t.bottom?t.bottom:M.bottom,M.left=void 0!==t.left?t.left:M.left}},duration:{get:function(){return P},set:function(t){P=t}},color:{get:function(){return E},set:function(t){E=e.utils.getColor(t),y.color(E)}},x:{get:function(){return S},set:function(t){S=t,l.x(t),u.x(t),c.x(t),d.x(t)}},y:{get:function(){return D},set:function(t){D=t,l.y(t),u.y(t),c.y(t),d.y(t)}},switchYAxisOrder:{get:function(){return j},set:function(t){if(j!==t){var e=h;h=g,g=e;var n=v;v=m,m=n}j=t,h.orient("left"),g.orient("right"),v.orient("left"),m.orient("right")}}}),e.utils.inheritOptions(q,l),e.utils.initOptions(q),q},e.models.multiBar=function(){"use strict";var t,n,r,i,a,o,s,l={top:0,right:0,bottom:0,left:0},u=960,c=500,d=d3.scale.ordinal(),f=d3.scale.linear(),p=Math.floor(1e4*Math.random()),h=null,g=function(t){return t.x},v=function(t){return t.y},m=[0],y=!0,b=!1,x="zero",k=e.utils.defaultColor(),w=!1,M=null,A=500,C=.1,S=.75,D=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),E=e.utils.renderWatch(D,A),F=0;function T(W){return E.reset(),W.each((function(T){var W=u-l.left-l.right,N=c-l.top-l.bottom;h=d3.select(this),e.utils.initSVG(h);var O=0;if(w&&T.length&&(w=[{values:T[0].values.map((function(t){return{x:t.x,y:0,series:t.series,size:.01}}))}]),b){var L=d3.layout.stack().offset(x).values((function(t){return t.values})).y(v)(!T.length&&w?w:T);L.forEach((function(t,e){t.nonStackable?(T[e].nonStackableSeries=O++,L[e]=T[e]):e>0&&L[e-1].nonStackable&&L[e].values.map((function(t,n){t.y0-=L[e-1].values[n].y,t.y1=t.y0+t.y}))})),T=L}T.forEach((function(t,e){t.values.forEach((function(n){n.series=e,n.key=t.key}))})),b&&T.length>0&&T[0].values.map((function(t,e){var n=0,r=0;T.map((function(t,i){if(!T[i].nonStackable){var a=t.values[e];a.size=Math.abs(a.y),a.y<0?(a.y1=r,r-=a.size):(a.y1=a.size+n,n+=a.size)}}))}));var _=n&&r?[]:T.map((function(t,e){return t.values.map((function(t,n){return{x:g(t,n),y:v(t,n),y0:t.y0,y1:t.y1,idx:e}}))}));d.domain(n||d3.merge(_).map((function(t){return t.x}))).rangeBands(i||[0,W],C),f.domain(r||d3.extent(d3.merge(_).map((function(t){var e=t.y;return b&&!T[t.idx].nonStackable&&(e=t.y>0?t.y1:t.y1+t.y),e})).concat(m))).range(a||[N,0]),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]-.01*d.domain()[0],d.domain()[1]+.01*d.domain()[1]]):d.domain([-1,1])),f.domain()[0]===f.domain()[1]&&(f.domain()[0]?f.domain([f.domain()[0]+.01*f.domain()[0],f.domain()[1]-.01*f.domain()[1]]):f.domain([-1,1])),o=o||d,s=s||f;var B=h.selectAll("g.nv-wrap.nv-multibar").data([T]),P=B.enter().append("g").attr("class","nvd3 nv-wrap nv-multibar"),V=P.append("defs"),I=P.append("g"),H=B.select("g");I.append("g").attr("class","nv-groups"),B.attr("transform","translate("+l.left+","+l.top+")"),V.append("clipPath").attr("id","nv-edge-clip-"+p).append("rect"),B.select("#nv-edge-clip-"+p+" rect").attr("width",W).attr("height",N),H.attr("clip-path",y?"url(#nv-edge-clip-"+p+")":"");var R=B.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t,e){return e}));R.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6);var j=E.transition(R.exit().selectAll("rect.nv-bar"),"multibarExit",Math.min(100,A)).attr("y",(function(t,e,n){var r=s(0)||0;return b&&T[t.series]&&!T[t.series].nonStackable&&(r=s(t.y0)),r})).attr("height",0).remove();j.delay&&j.delay((function(t,e){return e*(A/(F+1))-e})),R.attr("class",(function(t,e){return"nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})).style("fill",(function(t,e){return k(t,e)})).style("stroke",(function(t,e){return k(t,e)})),R.style("stroke-opacity",1).style("fill-opacity",S);var z=R.selectAll("rect.nv-bar").data((function(t){return w&&!T.length?w.values:t.values}));z.exit().remove(),z.enter().append("rect").attr("class",(function(t,e){return v(t,e)<0?"nv-bar negative":"nv-bar positive"})).attr("x",(function(t,e,n){return b&&!T[n].nonStackable?0:n*d.rangeBand()/T.length})).attr("y",(function(t,e,n){return s(b&&!T[n].nonStackable?t.y0:0)||0})).attr("height",0).attr("width",(function(t,e,n){return d.rangeBand()/(b&&!T[n].nonStackable?1:T.length)})).attr("transform",(function(t,e){return"translate("+d(g(t,e))+",0)"})),z.style("fill",(function(t,e,n){return k(t,n,e)})).style("stroke",(function(t,e,n){return k(t,n,e)})).on("mouseover",(function(t,e,n){d3.select(this).classed("hover",!0),D.elementMouseover({data:t,index:e,series:T[n],color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e,n){d3.select(this).classed("hover",!1),D.elementMouseout({data:t,index:e,series:T[n],color:d3.select(this).style("fill")})})).on("mousemove",(function(t,e,n){D.elementMousemove({data:t,index:e,series:T[n],color:d3.select(this).style("fill")})})).on("click",(function(t,e,n){D.elementClick({data:t,index:e,series:T[n],color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation()})).on("dblclick",(function(t,e,n){D.elementDblClick({data:t,index:e,series:T[n],color:d3.select(this).style("fill")}),d3.event.stopPropagation()})),z.attr("class",(function(t,e){return v(t,e)<0?"nv-bar negative":"nv-bar positive"})).attr("transform",(function(t,e){return"translate("+d(g(t,e))+",0)"})),M&&(t||(t=T.map((function(){return!0}))),z.style("fill",(function(e,n,r){return d3.rgb(M(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()})).style("stroke",(function(e,n,r){return d3.rgb(M(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()})));var q=z.watchTransition(E,"multibar",Math.min(250,A)).delay((function(t,e){return e*A/T[0].values.length}));b?q.attr("y",(function(t,e,n){return T[n].nonStackable?v(t,e)<0?f(0):f(0)-f(v(t,e))<-1?f(0)-1:f(v(t,e))||0:f(t.y1)})).attr("height",(function(t,e,n){return T[n].nonStackable?Math.max(Math.abs(f(v(t,e))-f(0)),0)||0:Math.max(Math.abs(f(t.y+t.y0)-f(t.y0)),0)})).attr("x",(function(t,e,n){var r=0;return T[n].nonStackable&&(r=t.series*d.rangeBand()/T.length,T.length!==O&&(r=T[n].nonStackableSeries*d.rangeBand()/(2*O))),r})).attr("width",(function(t,e,n){if(T[n].nonStackable){var r=d.rangeBand()/O;return T.length!==O&&(r=d.rangeBand()/(2*O)),r}return d.rangeBand()})):q.attr("x",(function(t,e){return t.series*d.rangeBand()/T.length})).attr("width",d.rangeBand()/T.length).attr("y",(function(t,e){return v(t,e)<0?f(0):f(0)-f(v(t,e))<1?f(0)-1:f(v(t,e))||0})).attr("height",(function(t,e){return Math.max(Math.abs(f(v(t,e))-f(0)),1)||0})),o=d.copy(),s=f.copy(),T[0]&&T[0].values&&(F=T[0].values.length)})),E.renderEnd("multibar immediate"),T}return T.dispatch=D,T.options=e.utils.optionsFunc.bind(T),T._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},x:{get:function(){return g},set:function(t){g=t}},y:{get:function(){return v},set:function(t){v=t}},xScale:{get:function(){return d},set:function(t){d=t}},yScale:{get:function(){return f},set:function(t){f=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return a},set:function(t){a=t}},forceY:{get:function(){return m},set:function(t){m=t}},stacked:{get:function(){return b},set:function(t){b=t}},stackOffset:{get:function(){return x},set:function(t){x=t}},clipEdge:{get:function(){return y},set:function(t){y=t}},disabled:{get:function(){return t},set:function(e){t=e}},id:{get:function(){return p},set:function(t){p=t}},hideable:{get:function(){return w},set:function(t){w=t}},groupSpacing:{get:function(){return C},set:function(t){C=t}},fillOpacity:{get:function(){return S},set:function(t){S=t}},margin:{get:function(){return l},set:function(t){l.top=void 0!==t.top?t.top:l.top,l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},duration:{get:function(){return A},set:function(t){A=t,E.reset(A)}},color:{get:function(){return k},set:function(t){k=e.utils.getColor(t)}},barColor:{get:function(){return M},set:function(t){M=t?e.utils.getColor(t):null}}}),e.utils.initOptions(T),T},e.models.multiBarChart=function(){"use strict";var t,n,r=e.models.multiBar(),i=e.models.axis(),a=e.models.axis(),o=e.interactiveGuideline(),s=e.models.legend(),l=e.models.legend(),u=e.models.tooltip(),c={top:30,right:20,bottom:50,left:60},d=null,f=null,p=null,h=e.utils.defaultColor(),g=!0,v={},m=!0,y=null,b=!0,x=!0,k=!1,w=!0,M=!1,A=!1,C=0,S=e.utils.state(),D=null,E=null,F=d3.dispatch("stateChange","changeState","renderEnd"),T=function(){return g?180:0},W=250,N=!1;S.stacked=!1,r.stacked(!1),i.orient("bottom").tickPadding(7).showMaxMin(!1).tickFormat((function(t){return t})),a.orient(k?"right":"left").tickFormat(d3.format(",.1f")),u.duration(0).valueFormatter((function(t,e){return a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),o.tooltip.valueFormatter((function(t,e){return null==t?"N/A":a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),o.tooltip.valueFormatter((function(t,e){return null==t?"N/A":a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),o.tooltip.duration(0).valueFormatter((function(t,e){return a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),l.updateState(!1);var O=e.utils.renderWatch(F),L=!1;function _(E){return O.reset(),O.models(r),b&&O.models(i),x&&O.models(a),E.each((function(E){var O=d3.select(this);e.utils.initSVG(O);var B,P=e.utils.availableWidth(f,O,c),V=e.utils.availableHeight(p,O,c);if(_.update=function(){0===W?O.call(_):O.transition().duration(W).call(_)},_.container=this,S.setter(function(t){return function(e){void 0!==e.stacked&&(L=e.stacked),void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(E),_.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),stacked:L}}}(E)).update(),S.disabled=E.map((function(t){return!!t.disabled})),!D)for(B in D={},S)S[B]instanceof Array?D[B]=S[B].slice(0):D[B]=S[B];if(!(E&&E.length&&E.filter((function(t){return t.values.length})).length))return e.utils.noData(_,O),_;O.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale();var I=O.selectAll("g.nv-wrap.nv-multiBarWithLegend").data([E]),H=I.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarWithLegend").append("g"),R=I.select("g");if(H.append("g").attr("class","nv-x nv-axis"),H.append("g").attr("class","nv-y nv-axis"),H.append("g").attr("class","nv-barsWrap"),H.append("g").attr("class","nv-legendWrap"),H.append("g").attr("class","nv-controlsWrap"),H.append("g").attr("class","nv-interactive"),m?"bottom"===y?(s.width(P-c.right),R.select(".nv-legendWrap").datum(E).call(s),c.bottom=i.height()+s.height(),V=e.utils.availableHeight(p,O,c),R.select(".nv-legendWrap").attr("transform","translate(0,"+(V+i.height())+")")):(s.width(P-T()),R.select(".nv-legendWrap").datum(E).call(s),d||s.height()===c.top||(c.top=s.height(),V=e.utils.availableHeight(p,O,c)),R.select(".nv-legendWrap").attr("transform","translate("+T()+","+-c.top+")")):R.select(".nv-legendWrap").selectAll("*").remove(),g){var j=[{key:v.grouped||"Grouped",disabled:r.stacked()},{key:v.stacked||"Stacked",disabled:!r.stacked()}];l.width(T()).color(["#444","#444","#444"]),R.select(".nv-controlsWrap").datum(j).attr("transform","translate(0,"+-c.top+")").call(l)}else R.select(".nv-controlsWrap").selectAll("*").remove();if(I.attr("transform","translate("+c.left+","+c.top+")"),k&&R.select(".nv-y.nv-axis").attr("transform","translate("+P+",0)"),r.disabled(E.map((function(t){return t.disabled}))).width(P).height(V).color(E.map((function(t,e){return t.color||h(t,e)})).filter((function(t,e){return!E[e].disabled}))),R.select(".nv-barsWrap").datum(E.filter((function(t){return!t.disabled}))).call(r),b){i.scale(t)._ticks(e.utils.calcTicksX(P/100,E)).tickSize(-V,0),R.select(".nv-x.nv-axis").attr("transform","translate(0,"+n.range()[0]+")"),R.select(".nv-x.nv-axis").call(i);var z=R.select(".nv-x.nv-axis > g").selectAll("g");if(z.selectAll("line, text").style("opacity",1),M){var q=function(t,e){return"translate("+t+","+e+")"};z.selectAll("text").attr("transform",(function(t,e,n){return q(0,n%2==0?5:17)}));var G=d3.selectAll(".nv-x.nv-axis .nv-wrap g g text")[0].length;R.selectAll(".nv-x.nv-axis .nv-axisMaxMin text").attr("transform",(function(t,e){return q(0,0===e||G%2!=0?17:5)}))}A&&R.selectAll(".tick text").call(e.utils.wrapTicks,_.xAxis.rangeBand()),w&&z.filter((function(t,e){return e%Math.ceil(E[0].values.length/(P/100))!=0})).selectAll("text, line").style("opacity",0),C&&z.selectAll(".tick text").attr("transform","rotate("+C+" 0,0)").style("text-anchor",C>0?"start":"end"),R.select(".nv-x.nv-axis").selectAll("g.nv-axisMaxMin text").style("opacity",1)}x&&(a.scale(n)._ticks(e.utils.calcTicksY(V/36,E)).tickSize(-P,0),R.select(".nv-y.nv-axis").call(a)),N&&(o.width(P).height(V).margin({left:c.left,top:c.top}).svgContainer(O).xScale(t),I.select(".nv-interactive").call(o)),s.dispatch.on("stateChange",(function(t){for(var e in t)S[e]=t[e];F.stateChange(S),_.update()})),l.dispatch.on("legendClick",(function(t,e){if(t.disabled){switch(j=j.map((function(t){return t.disabled=!0,t})),t.disabled=!1,t.key){case"Grouped":case v.grouped:r.stacked(!1);break;case"Stacked":case v.stacked:r.stacked(!0)}S.stacked=r.stacked(),F.stateChange(S),_.update()}})),F.on("changeState",(function(t){void 0!==t.disabled&&(E.forEach((function(e,n){e.disabled=t.disabled[n]})),S.disabled=t.disabled),void 0!==t.stacked&&(r.stacked(t.stacked),S.stacked=t.stacked,L=t.stacked),_.update()})),N?(o.dispatch.on("elementMousemove",(function(e){if(null!=e.pointXValue){var n,r,i,a,s=[];E.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(o,l){r=t.domain().indexOf(e.pointXValue);var u=o.values[r];void 0!==u&&(a=u.x,void 0===n&&(n=u),void 0===i&&(i=e.mouseX),s.push({key:o.key,value:_.y()(u,r),color:h(o,o.seriesIndex),data:o.values[r]}))})),o.tooltip.data({value:a,index:r,series:s})(),o.renderGuideLine(i)}})),o.dispatch.on("elementMouseout",(function(t){o.tooltip.hidden(!0)}))):(r.dispatch.on("elementMouseover.tooltip",(function(t){t.value=_.x()(t.data),t.series={key:t.data.key,value:_.y()(t.data),color:t.color},u.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){u()})))})),O.renderEnd("multibarchart immediate"),_}return _.dispatch=F,_.multibar=r,_.legend=s,_.controls=l,_.xAxis=i,_.yAxis=a,_.state=S,_.tooltip=u,_.interactiveLayer=o,_.options=e.utils.optionsFunc.bind(_),_._options=Object.create({},{width:{get:function(){return f},set:function(t){f=t}},height:{get:function(){return p},set:function(t){p=t}},showLegend:{get:function(){return m},set:function(t){m=t}},legendPosition:{get:function(){return y},set:function(t){y=t}},showControls:{get:function(){return g},set:function(t){g=t}},controlLabels:{get:function(){return v},set:function(t){v=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return D},set:function(t){D=t}},noData:{get:function(){return E},set:function(t){E=t}},reduceXTicks:{get:function(){return w},set:function(t){w=t}},rotateLabels:{get:function(){return C},set:function(t){C=t}},staggerLabels:{get:function(){return M},set:function(t){M=t}},wrapLabels:{get:function(){return A},set:function(t){A=!!t}},margin:{get:function(){return c},set:function(t){void 0!==t.top&&(c.top=t.top,d=t.top),c.right=void 0!==t.right?t.right:c.right,c.bottom=void 0!==t.bottom?t.bottom:c.bottom,c.left=void 0!==t.left?t.left:c.left}},duration:{get:function(){return W},set:function(t){W=t,r.duration(W),i.duration(W),a.duration(W),O.reset(W)}},color:{get:function(){return h},set:function(t){h=e.utils.getColor(t),s.color(h)}},rightAlignYAxis:{get:function(){return k},set:function(t){k=t,a.orient(k?"right":"left")}},useInteractiveGuideline:{get:function(){return N},set:function(t){N=t}},barColor:{get:function(){return r.barColor},set:function(t){r.barColor(t),s.color((function(t,e){return d3.rgb("#ccc").darker(1.5*e).toString()}))}}}),e.utils.inheritOptions(_,r),e.utils.initOptions(_),_},e.models.multiBarHorizontal=function(){"use strict";var t,n,r,i,a,o,s,l={top:0,right:0,bottom:0,left:0},u=960,c=500,d=Math.floor(1e4*Math.random()),f=null,p=d3.scale.ordinal(),h=d3.scale.linear(),g=function(t){return t.x},v=function(t){return t.y},m=function(t){return t.yErr},y=[0],b=e.utils.defaultColor(),x=null,k=!1,w=!1,M=60,A=.1,C=.75,S=d3.format(",.2f"),D=250,E=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),F=e.utils.renderWatch(E,D);function T(d){return F.reset(),d.each((function(d){var D=u-l.left-l.right,T=c-l.top-l.bottom;f=d3.select(this),e.utils.initSVG(f),k&&(d=d3.layout.stack().offset("zero").values((function(t){return t.values})).y(v)(d)),d.forEach((function(t,e){t.values.forEach((function(n){n.series=e,n.key=t.key}))})),k&&d[0].values.map((function(t,e){var n=0,r=0;d.map((function(t){var i=t.values[e];i.size=Math.abs(i.y),i.y<0?(i.y1=r-i.size,r-=i.size):(i.y1=n,n+=i.size)}))}));var W=n&&r?[]:d.map((function(t){return t.values.map((function(t,e){return{x:g(t,e),y:v(t,e),y0:t.y0,y1:t.y1}}))}));p.domain(n||d3.merge(W).map((function(t){return t.x}))).rangeBands(i||[0,T],A),h.domain(r||d3.extent(d3.merge(W).map((function(t){return k?t.y>0?t.y1+t.y:t.y1:t.y})).concat(y))),w&&!k?h.range(a||[h.domain()[0]<0?M:0,D-(h.domain()[1]>0?M:0)]):h.range(a||[0,D]),o=o||p,s=s||d3.scale.linear().domain(h.domain()).range([h(0),h(0)]);var N=d3.select(this).selectAll("g.nv-wrap.nv-multibarHorizontal").data([d]),O=N.enter().append("g").attr("class","nvd3 nv-wrap nv-multibarHorizontal"),L=(O.append("defs"),O.append("g"));N.select("g"),L.append("g").attr("class","nv-groups"),N.attr("transform","translate("+l.left+","+l.top+")");var _=N.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t,e){return e}));_.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),_.exit().watchTransition(F,"multibarhorizontal: exit groups").style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),_.attr("class",(function(t,e){return"nv-group nv-series-"+e})).classed("hover",(function(t){return t.hover})).style("fill",(function(t,e){return b(t,e)})).style("stroke",(function(t,e){return b(t,e)})),_.watchTransition(F,"multibarhorizontal: groups").style("stroke-opacity",1).style("fill-opacity",C);var B=_.selectAll("g.nv-bar").data((function(t){return t.values}));B.exit().remove();var P=B.enter().append("g").attr("transform",(function(t,e,n){return"translate("+s(k?t.y0:0)+","+(k?0:n*p.rangeBand()/d.length+p(g(t,e)))+")"}));P.append("rect").attr("width",0).attr("height",p.rangeBand()/(k?1:d.length)),B.on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),E.elementMouseover({data:t,index:e,color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),E.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")})})).on("mouseout",(function(t,e){E.elementMouseout({data:t,index:e,color:d3.select(this).style("fill")})})).on("mousemove",(function(t,e){E.elementMousemove({data:t,index:e,color:d3.select(this).style("fill")})})).on("click",(function(t,e){E.elementClick({data:t,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this}),d3.event.stopPropagation()})).on("dblclick",(function(t,e){E.elementDblClick({data:t,index:e,color:d3.select(this).style("fill")}),d3.event.stopPropagation()})),m(d[0],0)&&(P.append("polyline"),B.select("polyline").attr("fill","none").attr("points",(function(t,e){var n=m(t,e),r=.8*p.rangeBand()/(2*(k?1:d.length));return[[(n=(n=n.length?n:[-Math.abs(n),Math.abs(n)]).map((function(n){return h(n+(v(t,e)<0?0:v(t,e)))-h(0)})))[0],-r],[n[0],r],[n[0],0],[n[1],0],[n[1],-r],[n[1],r]].map((function(t){return t.join(",")})).join(" ")})).attr("transform",(function(t,e){return"translate(0, "+p.rangeBand()/(2*(k?1:d.length))+")"}))),P.append("text"),w&&!k?(B.select("text").attr("text-anchor",(function(t,e){return v(t,e)<0?"end":"start"})).attr("y",p.rangeBand()/(2*d.length)).attr("dy",".32em").text((function(t,e){var n=S(v(t,e)),r=m(t,e);return void 0===r?n:r.length?n+"+"+S(Math.abs(r[1]))+"-"+S(Math.abs(r[0])):n+"±"+S(Math.abs(r))})),B.watchTransition(F,"multibarhorizontal: bars").select("text").attr("x",(function(t,e){return v(t,e)<0?-4:h(v(t,e))-h(0)+4}))):B.selectAll("text").text(""),B.selectAll("text.nv-bar-label").text(""),B.attr("class",(function(t,e){return v(t,e)<0?"nv-bar negative":"nv-bar positive"})),x&&(t||(t=d.map((function(){return!0}))),B.style("fill",(function(e,n,r){return d3.rgb(x(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()})).style("stroke",(function(e,n,r){return d3.rgb(x(e,n)).darker(t.map((function(t,e){return e})).filter((function(e,n){return!t[n]}))[r]).toString()}))),k?B.watchTransition(F,"multibarhorizontal: bars").attr("transform",(function(t,e){return"translate("+h(t.y1)+","+p(g(t,e))+")"})).select("rect").attr("width",(function(t,e){return Math.abs(h(v(t,e)+t.y0)-h(t.y0))||0})).attr("height",p.rangeBand()):B.watchTransition(F,"multibarhorizontal: bars").attr("transform",(function(t,e){return"translate("+(v(t,e)<0?h(v(t,e)):h(0))+","+(t.series*p.rangeBand()/d.length+p(g(t,e)))+")"})).select("rect").attr("height",p.rangeBand()/d.length).attr("width",(function(t,e){return Math.max(Math.abs(h(v(t,e))-h(0)),1)||0})),o=p.copy(),s=h.copy()})),F.renderEnd("multibarHorizontal immediate"),T}return T.dispatch=E,T.options=e.utils.optionsFunc.bind(T),T._options=Object.create({},{width:{get:function(){return u},set:function(t){u=t}},height:{get:function(){return c},set:function(t){c=t}},x:{get:function(){return g},set:function(t){g=t}},y:{get:function(){return v},set:function(t){v=t}},yErr:{get:function(){return m},set:function(t){m=t}},xScale:{get:function(){return p},set:function(t){p=t}},yScale:{get:function(){return h},set:function(t){h=t}},xDomain:{get:function(){return n},set:function(t){n=t}},yDomain:{get:function(){return r},set:function(t){r=t}},xRange:{get:function(){return i},set:function(t){i=t}},yRange:{get:function(){return a},set:function(t){a=t}},forceY:{get:function(){return y},set:function(t){y=t}},stacked:{get:function(){return k},set:function(t){k=t}},showValues:{get:function(){return w},set:function(t){w=t}},disabled:{get:function(){return t},set:function(e){t=e}},id:{get:function(){return d},set:function(t){d=t}},valueFormat:{get:function(){return S},set:function(t){S=t}},valuePadding:{get:function(){return M},set:function(t){M=t}},groupSpacing:{get:function(){return A},set:function(t){A=t}},fillOpacity:{get:function(){return C},set:function(t){C=t}},margin:{get:function(){return l},set:function(t){l.top=void 0!==t.top?t.top:l.top,l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},duration:{get:function(){return D},set:function(t){D=t,F.reset(D)}},color:{get:function(){return b},set:function(t){b=e.utils.getColor(t)}},barColor:{get:function(){return x},set:function(t){x=t?e.utils.getColor(t):null}}}),e.utils.initOptions(T),T},e.models.multiBarHorizontalChart=function(){"use strict";var t,n,r=e.models.multiBarHorizontal(),i=e.models.axis(),a=e.models.axis(),o=e.models.legend().height(30),s=e.models.legend().height(30),l=e.models.tooltip(),u={top:30,right:20,bottom:50,left:60},c=null,d=null,f=null,p=e.utils.defaultColor(),h=!0,g="top",v={},m=!0,y="top",b=!0,x=!0,k=!1,w=e.utils.state(),M=null,A=null,C=d3.dispatch("stateChange","changeState","renderEnd"),S=function(){return h?180:0},D=250;w.stacked=!1,r.stacked(k),i.orient("left").tickPadding(5).showMaxMin(!1).tickFormat((function(t){return t})),a.orient("bottom").tickFormat(d3.format(",.1f")),l.duration(0).valueFormatter((function(t,e){return a.tickFormat()(t,e)})).headerFormatter((function(t,e){return i.tickFormat()(t,e)})),s.updateState(!1);var E=e.utils.renderWatch(C,D);function F(l){return E.reset(),E.models(r),b&&E.models(i),x&&E.models(a),l.each((function(l){var A=d3.select(this);e.utils.initSVG(A);var E,T=e.utils.availableWidth(d,A,u),W=e.utils.availableHeight(f,A,u);if(F.update=function(){A.transition().duration(D).call(F)},F.container=this,k=r.stacked(),w.setter(function(t){return function(e){void 0!==e.stacked&&(k=e.stacked),void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(l),F.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),stacked:k}}}(l)).update(),w.disabled=l.map((function(t){return!!t.disabled})),!M)for(E in M={},w)w[E]instanceof Array?M[E]=w[E].slice(0):M[E]=w[E];if(!(l&&l.length&&l.filter((function(t){return t.values.length})).length))return e.utils.noData(F,A),F;A.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale().clamp(!0);var N=A.selectAll("g.nv-wrap.nv-multiBarHorizontalChart").data([l]),O=N.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarHorizontalChart").append("g"),L=N.select("g");if(O.append("g").attr("class","nv-x nv-axis"),O.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),O.append("g").attr("class","nv-barsWrap"),O.append("g").attr("class","nv-legendWrap"),O.append("g").attr("class","nv-controlsWrap"),m?(o.width(T-S()),L.select(".nv-legendWrap").datum(l).call(o),"bottom"===y?(u.bottom=i.height()+o.height(),W=e.utils.availableHeight(f,A,u),L.select(".nv-legendWrap").attr("transform","translate("+S()+","+(W+i.height())+")")):"top"===y&&(c||o.height()===u.top||(u.top=o.height(),W=e.utils.availableHeight(f,A,u)),L.select(".nv-legendWrap").attr("transform","translate("+S()+","+-u.top+")"))):L.select(".nv-legendWrap").selectAll("*").remove(),h){var _=[{key:v.grouped||"Grouped",disabled:r.stacked()},{key:v.stacked||"Stacked",disabled:!r.stacked()}];s.width(S()).color(["#444","#444","#444"]),"bottom"===g?(u.bottom=i.height()+o.height(),W=e.utils.availableHeight(f,A,u),L.select(".nv-controlsWrap").datum(_).attr("transform","translate(0,"+(W+i.height())+")").call(s)):"top"===g&&L.select(".nv-controlsWrap").datum(_).attr("transform","translate(0,"+-u.top+")").call(s)}else L.select(".nv-controlsWrap").selectAll("*").remove();N.attr("transform","translate("+u.left+","+u.top+")"),r.disabled(l.map((function(t){return t.disabled}))).width(T).height(W).color(l.map((function(t,e){return t.color||p(t,e)})).filter((function(t,e){return!l[e].disabled}))),L.select(".nv-barsWrap").datum(l.filter((function(t){return!t.disabled}))).transition().call(r),b&&(i.scale(t)._ticks(e.utils.calcTicksY(W/24,l)).tickSize(-T,0),L.select(".nv-x.nv-axis").call(i),L.select(".nv-x.nv-axis").selectAll("g").selectAll("line, text")),x&&(a.scale(n)._ticks(e.utils.calcTicksX(T/100,l)).tickSize(-W,0),L.select(".nv-y.nv-axis").attr("transform","translate(0,"+W+")"),L.select(".nv-y.nv-axis").call(a)),L.select(".nv-zeroLine line").attr("x1",n(0)).attr("x2",n(0)).attr("y1",0).attr("y2",-W),o.dispatch.on("stateChange",(function(t){for(var e in t)w[e]=t[e];C.stateChange(w),F.update()})),s.dispatch.on("legendClick",(function(t,e){if(t.disabled){switch(_=_.map((function(t){return t.disabled=!0,t})),t.disabled=!1,t.key){case"Grouped":case v.grouped:r.stacked(!1);break;case"Stacked":case v.stacked:r.stacked(!0)}w.stacked=r.stacked(),C.stateChange(w),k=r.stacked(),F.update()}})),C.on("changeState",(function(t){void 0!==t.disabled&&(l.forEach((function(e,n){e.disabled=t.disabled[n]})),w.disabled=t.disabled),void 0!==t.stacked&&(r.stacked(t.stacked),w.stacked=t.stacked,k=t.stacked),F.update()}))})),E.renderEnd("multibar horizontal chart immediate"),F}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.value=F.x()(t.data),t.series={key:t.data.key,value:F.y()(t.data),color:t.color},l.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){l.hidden(!0)})),r.dispatch.on("elementMousemove.tooltip",(function(t){l()})),F.dispatch=C,F.multibar=r,F.legend=o,F.controls=s,F.xAxis=i,F.yAxis=a,F.state=w,F.tooltip=l,F.options=e.utils.optionsFunc.bind(F),F._options=Object.create({},{width:{get:function(){return d},set:function(t){d=t}},height:{get:function(){return f},set:function(t){f=t}},showLegend:{get:function(){return m},set:function(t){m=t}},legendPosition:{get:function(){return y},set:function(t){y=t}},controlsPosition:{get:function(){return g},set:function(t){g=t}},showControls:{get:function(){return h},set:function(t){h=t}},controlLabels:{get:function(){return v},set:function(t){v=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return M},set:function(t){M=t}},noData:{get:function(){return A},set:function(t){A=t}},margin:{get:function(){return u},set:function(t){void 0!==t.top&&(u.top=t.top,c=t.top),u.right=void 0!==t.right?t.right:u.right,u.bottom=void 0!==t.bottom?t.bottom:u.bottom,u.left=void 0!==t.left?t.left:u.left}},duration:{get:function(){return D},set:function(t){D=t,E.reset(D),r.duration(D),i.duration(D),a.duration(D)}},color:{get:function(){return p},set:function(t){p=e.utils.getColor(t),o.color(p)}},barColor:{get:function(){return r.barColor},set:function(t){r.barColor(t),o.color((function(t,e){return d3.rgb("#ccc").darker(1.5*e).toString()}))}}}),e.utils.inheritOptions(F,r),e.utils.initOptions(F),F},e.models.multiChart=function(){"use strict";var t,n,r={top:30,right:20,bottom:50,left:60},i=null,a=e.utils.defaultColor(),o=null,s=null,l=!0,u=null,c=function(t){return t.x},d=function(t){return t.y},f="linear",p=!0,h=e.interactiveGuideline(),g=!1,v=" (right axis)",m=250,y=d3.scale.linear(),b=d3.scale.linear(),x=d3.scale.linear(),k=e.models.line().yScale(b).duration(m),w=e.models.line().yScale(x).duration(m),M=e.models.scatter().yScale(b).duration(m),A=e.models.scatter().yScale(x).duration(m),C=e.models.multiBar().stacked(!1).yScale(b).duration(m),S=e.models.multiBar().stacked(!1).yScale(x).duration(m),D=e.models.stackedArea().yScale(b).duration(m),E=e.models.stackedArea().yScale(x).duration(m),F=e.models.axis().scale(y).orient("bottom").tickPadding(5).duration(m),T=e.models.axis().scale(b).orient("left").duration(m),W=e.models.axis().scale(x).orient("right").duration(m),N=e.models.legend().height(30),O=e.models.tooltip(),L=d3.dispatch(),_=[k,w,M,A,C,S,D,E];function B(u){return u.each((function(u){var p=d3.select(this);e.utils.initSVG(p),B.update=function(){p.transition().call(B)},B.container=this;var m=e.utils.availableWidth(o,p,r),L=e.utils.availableHeight(s,p,r),P=u.filter((function(t){return"line"==t.type&&1==t.yAxis})),V=u.filter((function(t){return"line"==t.type&&2==t.yAxis})),I=u.filter((function(t){return"scatter"==t.type&&1==t.yAxis})),H=u.filter((function(t){return"scatter"==t.type&&2==t.yAxis})),R=u.filter((function(t){return"bar"==t.type&&1==t.yAxis})),j=u.filter((function(t){return"bar"==t.type&&2==t.yAxis})),z=u.filter((function(t){return"area"==t.type&&1==t.yAxis})),q=u.filter((function(t){return"area"==t.type&&2==t.yAxis}));if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(B,p),B;p.selectAll(".nv-noData").remove();var G=u.filter((function(t){return!t.disabled&&1==t.yAxis})).map((function(t){return t.values.map((function(t,e){return{x:c(t),y:d(t)}}))})),Y=u.filter((function(t){return!t.disabled&&2==t.yAxis})).map((function(t){return t.values.map((function(t,e){return{x:c(t),y:d(t)}}))}));y.domain(d3.extent(d3.merge(G.concat(Y)),(function(t){return t.x}))).range([0,m]);var X=p.selectAll("g.wrap.multiChart").data([u]),$=X.enter().append("g").attr("class","wrap nvd3 multiChart").append("g");$.append("g").attr("class","nv-x nv-axis"),$.append("g").attr("class","nv-y1 nv-axis"),$.append("g").attr("class","nv-y2 nv-axis"),$.append("g").attr("class","stack1Wrap"),$.append("g").attr("class","stack2Wrap"),$.append("g").attr("class","bars1Wrap"),$.append("g").attr("class","bars2Wrap"),$.append("g").attr("class","scatters1Wrap"),$.append("g").attr("class","scatters2Wrap"),$.append("g").attr("class","lines1Wrap"),$.append("g").attr("class","lines2Wrap"),$.append("g").attr("class","legendWrap"),$.append("g").attr("class","nv-interactive");var Q=X.select("g"),Z=u.map((function(t,e){return u[e].color||a(t,e)}));if(l){var U=N.align()?m/2:m,K=N.align()?U:0;N.width(U),N.color(Z),Q.select(".legendWrap").datum(u.map((function(t){return t.originalKey=void 0===t.originalKey?t.key:t.originalKey,t.key=t.originalKey+(1==t.yAxis?"":v),t}))).call(N),i||N.height()===r.top||(r.top=N.height(),L=e.utils.availableHeight(s,p,r)),Q.select(".legendWrap").attr("transform","translate("+K+","+-r.top+")")}else Q.select(".legendWrap").selectAll("*").remove();k.width(m).height(L).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"line"==u[e].type}))),w.width(m).height(L).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"line"==u[e].type}))),M.width(m).height(L).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"scatter"==u[e].type}))),A.width(m).height(L).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"scatter"==u[e].type}))),C.width(m).height(L).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"bar"==u[e].type}))),S.width(m).height(L).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"bar"==u[e].type}))),D.width(m).height(L).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&1==u[e].yAxis&&"area"==u[e].type}))),E.width(m).height(L).interpolate(f).color(Z.filter((function(t,e){return!u[e].disabled&&2==u[e].yAxis&&"area"==u[e].type}))),Q.attr("transform","translate("+r.left+","+r.top+")");var J=Q.select(".lines1Wrap").datum(P.filter((function(t){return!t.disabled}))),tt=Q.select(".scatters1Wrap").datum(I.filter((function(t){return!t.disabled}))),et=Q.select(".bars1Wrap").datum(R.filter((function(t){return!t.disabled}))),nt=Q.select(".stack1Wrap").datum(z.filter((function(t){return!t.disabled}))),rt=Q.select(".lines2Wrap").datum(V.filter((function(t){return!t.disabled}))),it=Q.select(".scatters2Wrap").datum(H.filter((function(t){return!t.disabled}))),at=Q.select(".bars2Wrap").datum(j.filter((function(t){return!t.disabled}))),ot=Q.select(".stack2Wrap").datum(q.filter((function(t){return!t.disabled}))),st=[];C.stacked()&&R.length&&(st=R.filter((function(t){return!t.disabled})).map((function(t){return t.values}))).length>0&&(st=st.reduce((function(t,e){return t.map((function(t,n){return{x:t.x,y:t.y+e[n].y}}))}))),R.length&&st.push({x:0,y:0});var lt=[];function ut(t){var e=2===t.series.yAxis?W:T;t.value=t.point.x,t.series={value:t.point.y,color:t.point.color,key:t.series.key},O.duration(0).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function ct(t){var e=2===t.series.yAxis?W:T;t.value=t.point.x,t.series={value:t.point.y,color:t.point.color,key:t.series.key},O.duration(100).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function dt(t){var e=2===t.series.yAxis?W:T;t.point.x=D.x()(t.point),t.point.y=D.y()(t.point),O.duration(0).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function ft(t){var e=2===t.series.yAxis?W:T;t.value=C.x()(t.data),t.series={value:C.y()(t.data),color:t.color,key:t.data.key},O.duration(0).headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter((function(t,n){return e.tickFormat()(t,n)})).data(t).hidden(!1)}function pt(){for(var t=0,e=_.length;t<e;t++){var n=_[t];try{n.clearHighlights()}catch(t){}}}S.stacked()&&j.length&&(lt=j.filter((function(t){return!t.disabled})).map((function(t){return t.values}))).length>0&&(lt=lt.reduce((function(t,e){return t.map((function(t,n){return{x:t.x,y:t.y+e[n].y}}))}))),j.length&&lt.push({x:0,y:0}),b.domain(t||d3.extent(d3.merge(G).concat(st),(function(t){return t.y}))).range([0,L]),x.domain(n||d3.extent(d3.merge(Y).concat(lt),(function(t){return t.y}))).range([0,L]),k.yDomain(b.domain()),M.yDomain(b.domain()),C.yDomain(b.domain()),D.yDomain(b.domain()),w.yDomain(x.domain()),A.yDomain(x.domain()),S.yDomain(x.domain()),E.yDomain(x.domain()),z.length&&d3.transition(nt).call(D),q.length&&d3.transition(ot).call(E),R.length&&d3.transition(et).call(C),j.length&&d3.transition(at).call(S),P.length&&d3.transition(J).call(k),V.length&&d3.transition(rt).call(w),I.length&&d3.transition(tt).call(M),H.length&&d3.transition(it).call(A),F._ticks(e.utils.calcTicksX(m/100,u)).tickSize(-L,0),Q.select(".nv-x.nv-axis").attr("transform","translate(0,"+L+")"),d3.transition(Q.select(".nv-x.nv-axis")).call(F),T._ticks(e.utils.calcTicksY(L/36,u)).tickSize(-m,0),d3.transition(Q.select(".nv-y1.nv-axis")).call(T),W._ticks(e.utils.calcTicksY(L/36,u)).tickSize(-m,0),d3.transition(Q.select(".nv-y2.nv-axis")).call(W),Q.select(".nv-y1.nv-axis").classed("nv-disabled",!G.length).attr("transform","translate("+y.range()[0]+",0)"),Q.select(".nv-y2.nv-axis").classed("nv-disabled",!Y.length).attr("transform","translate("+y.range()[1]+",0)"),N.dispatch.on("stateChange",(function(t){B.update()})),g&&(h.width(m).height(L).margin({left:r.left,top:r.top}).svgContainer(p).xScale(y),X.select(".nv-interactive").call(h)),g?(h.dispatch.on("elementMousemove",(function(t){pt();var n,r,i,o=[];u.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(s,l){var u=y.domain(),c=s.values.filter((function(t,e){return B.x()(t,e)>=u[0]&&B.x()(t,e)<=u[1]})),d=c[r=e.interactiveBisect(c,t.pointXValue,B.x())],f=B.y()(d,r);null!==f&&function(t,e,n){for(var r=0,i=_.length;r<i;r++){var a=_[r];try{a.highlightPoint(t,e,n)}catch(t){}}}(l,r,!0),void 0!==d&&(void 0===n&&(n=d),void 0===i&&(i=y(B.x()(d,r))),o.push({key:s.key,value:f,color:a(s,s.seriesIndex),data:d,yAxis:2==s.yAxis?W:T}))})),h.tooltip.headerFormatter((function(t,e){return F.tickFormat()(t,e)})).valueFormatter(h.tooltip.valueFormatter()||function(t,e){var n=o[e].yAxis;return null==t?"N/A":n.tickFormat()(t)}).data({value:B.x()(n,r),index:r,series:o})(),h.renderGuideLine(i)})),h.dispatch.on("elementMouseout",(function(t){pt()}))):(k.dispatch.on("elementMouseover.tooltip",ut),w.dispatch.on("elementMouseover.tooltip",ut),k.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),w.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),M.dispatch.on("elementMouseover.tooltip",ct),A.dispatch.on("elementMouseover.tooltip",ct),M.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),A.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),D.dispatch.on("elementMouseover.tooltip",dt),E.dispatch.on("elementMouseover.tooltip",dt),D.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),E.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),C.dispatch.on("elementMouseover.tooltip",ft),S.dispatch.on("elementMouseover.tooltip",ft),C.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),S.dispatch.on("elementMouseout.tooltip",(function(t){O.hidden(!0)})),C.dispatch.on("elementMousemove.tooltip",(function(t){O()})),S.dispatch.on("elementMousemove.tooltip",(function(t){O()})))})),B}return B.dispatch=L,B.legend=N,B.lines1=k,B.lines2=w,B.scatters1=M,B.scatters2=A,B.bars1=C,B.bars2=S,B.stack1=D,B.stack2=E,B.xAxis=F,B.yAxis1=T,B.yAxis2=W,B.tooltip=O,B.interactiveLayer=h,B.options=e.utils.optionsFunc.bind(B),B._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return s},set:function(t){s=t}},showLegend:{get:function(){return l},set:function(t){l=t}},yDomain1:{get:function(){return t},set:function(e){t=e}},yDomain2:{get:function(){return n},set:function(t){n=t}},noData:{get:function(){return u},set:function(t){u=t}},interpolate:{get:function(){return f},set:function(t){f=t}},legendRightAxisHint:{get:function(){return v},set:function(t){v=t}},margin:{get:function(){return r},set:function(t){void 0!==t.top&&(r.top=t.top,i=t.top),r.right=void 0!==t.right?t.right:r.right,r.bottom=void 0!==t.bottom?t.bottom:r.bottom,r.left=void 0!==t.left?t.left:r.left}},color:{get:function(){return a},set:function(t){a=e.utils.getColor(t)}},x:{get:function(){return c},set:function(t){c=t,k.x(t),w.x(t),M.x(t),A.x(t),C.x(t),S.x(t),D.x(t),E.x(t)}},y:{get:function(){return d},set:function(t){d=t,k.y(t),w.y(t),M.y(t),A.y(t),D.y(t),E.y(t),C.y(t),S.y(t)}},useVoronoi:{get:function(){return p},set:function(t){p=t,k.useVoronoi(t),w.useVoronoi(t),D.useVoronoi(t),E.useVoronoi(t)}},useInteractiveGuideline:{get:function(){return g},set:function(t){(g=t)&&(k.interactive(!1),k.useVoronoi(!1),w.interactive(!1),w.useVoronoi(!1),D.interactive(!1),D.useVoronoi(!1),E.interactive(!1),E.useVoronoi(!1),M.interactive(!1),A.interactive(!1))}},duration:{get:function(){return m},set:function(t){m=t,[k,w,D,E,M,A,F,T,W].forEach((function(t){t.duration(m)}))}}}),e.utils.initOptions(B),B},e.models.ohlcBar=function(){"use strict";var t,n,r,i,a={top:0,right:0,bottom:0,left:0},o=null,s=null,l=Math.floor(1e4*Math.random()),u=null,c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=function(t){return t.open},g=function(t){return t.close},v=function(t){return t.high},m=function(t){return t.low},y=[],b=[],x=!1,k=!0,w=e.utils.defaultColor(),M=!1,A=d3.dispatch("stateChange","changeState","renderEnd","chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove");function C(M){return M.each((function(M){u=d3.select(this);var C=e.utils.availableWidth(o,u,a),S=e.utils.availableHeight(s,u,a);e.utils.initSVG(u);var D=C/M[0].values.length*.9;c.domain(t||d3.extent(M[0].values.map(f).concat(y))),x?c.range(r||[.5*C/M[0].values.length,C*(M[0].values.length-.5)/M[0].values.length]):c.range(r||[5+D/2,C-D/2-5]),d.domain(n||[d3.min(M[0].values.map(m).concat(b)),d3.max(M[0].values.map(v).concat(b))]).range(i||[S,0]),c.domain()[0]===c.domain()[1]&&(c.domain()[0]?c.domain([c.domain()[0]-.01*c.domain()[0],c.domain()[1]+.01*c.domain()[1]]):c.domain([-1,1])),d.domain()[0]===d.domain()[1]&&(d.domain()[0]?d.domain([d.domain()[0]+.01*d.domain()[0],d.domain()[1]-.01*d.domain()[1]]):d.domain([-1,1]));var E=d3.select(this).selectAll("g.nv-wrap.nv-ohlcBar").data([M[0].values]),F=E.enter().append("g").attr("class","nvd3 nv-wrap nv-ohlcBar"),T=F.append("defs"),W=F.append("g"),N=E.select("g");W.append("g").attr("class","nv-ticks"),E.attr("transform","translate("+a.left+","+a.top+")"),u.on("click",(function(t,e){A.chartClick({data:t,index:e,pos:d3.event,id:l})})),T.append("clipPath").attr("id","nv-chart-clip-path-"+l).append("rect"),E.select("#nv-chart-clip-path-"+l+" rect").attr("width",C).attr("height",S),N.attr("clip-path",k?"url(#nv-chart-clip-path-"+l+")":"");var O=E.select(".nv-ticks").selectAll(".nv-tick").data((function(t){return t}));O.exit().remove(),O.enter().append("path").attr("class",(function(t,e,n){return(h(t,e)>g(t,e)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+e})).attr("d",(function(t,e){return"m0,0l0,"+(d(h(t,e))-d(v(t,e)))+"l"+-D/2+",0l"+D/2+",0l0,"+(d(m(t,e))-d(h(t,e)))+"l0,"+(d(g(t,e))-d(m(t,e)))+"l"+D/2+",0l"+-D/2+",0z"})).attr("transform",(function(t,e){return"translate("+c(f(t,e))+","+d(v(t,e))+")"})).attr("fill",(function(t,e){return w[0]})).attr("stroke",(function(t,e){return w[0]})).attr("x",0).attr("y",(function(t,e){return d(Math.max(0,p(t,e)))})).attr("height",(function(t,e){return Math.abs(d(p(t,e))-d(0))})),O.attr("class",(function(t,e,n){return(h(t,e)>g(t,e)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+e})),d3.transition(O).attr("transform",(function(t,e){return"translate("+c(f(t,e))+","+d(v(t,e))+")"})).attr("d",(function(t,e){var n=C/M[0].values.length*.9;return"m0,0l0,"+(d(h(t,e))-d(v(t,e)))+"l"+-n/2+",0l"+n/2+",0l0,"+(d(m(t,e))-d(h(t,e)))+"l0,"+(d(g(t,e))-d(m(t,e)))+"l"+n/2+",0l"+-n/2+",0z"}))})),C}return C.highlightPoint=function(t,e){C.clearHighlights(),u.select(".nv-ohlcBar .nv-tick-0-"+t).classed("hover",e)},C.clearHighlights=function(){u.select(".nv-ohlcBar .nv-tick.hover").classed("hover",!1)},C.dispatch=A,C.options=e.utils.optionsFunc.bind(C),C._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return s},set:function(t){s=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return n},set:function(t){n=t}},xRange:{get:function(){return r},set:function(t){r=t}},yRange:{get:function(){return i},set:function(t){i=t}},forceX:{get:function(){return y},set:function(t){y=t}},forceY:{get:function(){return b},set:function(t){b=t}},padData:{get:function(){return x},set:function(t){x=t}},clipEdge:{get:function(){return k},set:function(t){k=t}},id:{get:function(){return l},set:function(t){l=t}},interactive:{get:function(){return M},set:function(t){M=t}},x:{get:function(){return f},set:function(t){f=t}},y:{get:function(){return p},set:function(t){p=t}},open:{get:function(){return h()},set:function(t){h=t}},close:{get:function(){return g()},set:function(t){g=t}},high:{get:function(){return v},set:function(t){v=t}},low:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return a},set:function(t){a.top=null!=t.top?t.top:a.top,a.right=null!=t.right?t.right:a.right,a.bottom=null!=t.bottom?t.bottom:a.bottom,a.left=null!=t.left?t.left:a.left}},color:{get:function(){return w},set:function(t){w=e.utils.getColor(t)}}}),e.utils.initOptions(C),C},e.models.parallelCoordinates=function(){"use strict";var t,n,r,i={top:30,right:0,bottom:10,left:0},a=null,o=null,s=null,l=null,u=d3.scale.ordinal(),c={},d="undefined values",f=[],p=[],h=[],g=!0,v=e.utils.defaultColor(),m=[],y=[],b=[],x=[],k=1,w=d3.svg.line(),M=d3.svg.axis(),A=d3.dispatch("brushstart","brush","brushEnd","dimensionsOrder","stateChange","elementClick","elementMouseover","elementMouseout","elementMousemove","renderEnd","activeChanged"),C=e.utils.renderWatch(A);function S(D){return C.reset(),D.each((function(C){var S=d3.select(this);if(s=e.utils.availableWidth(a,S,i),l=e.utils.availableHeight(o,S,i),e.utils.initSVG(S),void 0===C[0].values){var D=[];C.forEach((function(t){var e={};Object.keys(t).forEach((function(n){"name"!==n&&(e[n]=t[n])})),D.push({key:t.name,values:e})})),C=D}var E=C.map((function(t){return t.values}));0===y.length&&(y=C),h=f.sort((function(t,e){return t.currentPosition-e.currentPosition})).map((function(t){return t.key})),p=f.filter((function(t){return!t.disabled})),u.rangePoints([0,s],1).domain(p.map((function(t){return t.key})));var F={},T=!1,W=[];h.forEach((function(t){var e=d3.extent(E,(function(e){return+e[t]})),n=e[0],r=e[1],i=!1;(isNaN(n)||isNaN(r))&&(i=!0,n=0,r=0),n===r&&(n-=1,r+=1);var a=m.filter((function(e){return e.dimension==t}));0!==a.length&&(i?(n=c[t].domain()[0],r=c[t].domain()[1]):!a[0].hasOnlyNaN&&g?(n=n>a[0].extent[0]?a[0].extent[0]:n,r=r<a[0].extent[1]?a[0].extent[1]:r):a[0].hasNaN&&(r=r<a[0].extent[1]?a[0].extent[1]:r,F[t]=c[t].domain()[1],T=!0)),c[t]=d3.scale.linear().domain([n,r]).range([.9*(l-12),0]),x=[],c[t].brush=d3.svg.brush().y(c[t]).on("brushstart",Y).on("brush",X).on("brushend",$)}));var N=S.selectAll("g.nv-wrap.nv-parallelCoordinates").data([C]),O=N.enter().append("g").attr("class","nvd3 nv-wrap nv-parallelCoordinates").append("g"),L=N.select("g");O.append("g").attr("class","nv-parallelCoordinates background"),O.append("g").attr("class","nv-parallelCoordinates foreground"),O.append("g").attr("class","nv-parallelCoordinates missingValuesline"),N.attr("transform","translate("+i.left+","+i.top+")"),w.interpolate("cardinal").tension(k),M.orient("left");var _,B,P=d3.behavior.drag().on("dragstart",(function(t){b[t.key]=this.parentNode.__origin__=u(t.key),n.attr("visibility","hidden")})).on("drag",(function(e){b[e.key]=Math.min(s,Math.max(0,this.parentNode.__origin__+=d3.event.x)),t.attr("d",q),p.sort((function(t,e){return Z(t.key)-Z(e.key)})),p.forEach((function(t,e){return t.currentPosition=e})),u.domain(p.map((function(t){return t.key}))),r.attr("transform",(function(t){return"translate("+Z(t.key)+")"}))})).on("dragend",(function(e,r){delete this.parentNode.__origin__,delete b[e.key],d3.select(this.parentNode).attr("transform","translate("+u(e.key)+")"),t.attr("d",q),n.attr("d",q).attr("visibility",null),A.dimensionsOrder(p)})),V=u.range()[1]-u.range()[0];if(V=isNaN(V)?u.range()[0]:V,!isNaN(V)){var I=[0+V/2,l-12,s-V/2,l-12];(_=N.select(".missingValuesline").selectAll("line").data([I])).enter().append("line"),_.exit().remove(),_.attr("x1",(function(t){return t[0]})).attr("y1",(function(t){return t[1]})).attr("x2",(function(t){return t[2]})).attr("y2",(function(t){return t[3]})),(B=N.select(".missingValuesline").selectAll("text").data([d])).append("text").data([d]),B.enter().append("text"),B.exit().remove(),B.attr("y",l).attr("x",s-92-V/2).text((function(t){return t}))}(n=N.select(".background").selectAll("path").data(C)).enter().append("path"),n.exit().remove(),n.attr("d",q),(t=N.select(".foreground").selectAll("path").data(C)).enter().append("path"),t.exit().remove(),t.attr("d",q).style("stroke-width",(function(t,e){return isNaN(t.strokeWidth)&&(t.strokeWidth=1),t.strokeWidth})).attr("stroke",(function(t,e){return t.color||v(t,e)})),t.on("mouseover",(function(t,e){d3.select(this).classed("hover",!0).style("stroke-width",t.strokeWidth+2+"px").style("stroke-opacity",1),A.elementMouseover({label:t.name,color:t.color||v(t,e),values:t.values,dimensions:p})})),t.on("mouseout",(function(t,e){d3.select(this).classed("hover",!1).style("stroke-width",t.strokeWidth+"px").style("stroke-opacity",.7),A.elementMouseout({label:t.name,index:e})})),t.on("mousemove",(function(t,e){A.elementMousemove()})),t.on("click",(function(t){A.elementClick({id:t.id})}));var H=(r=L.selectAll(".dimension").data(p)).enter().append("g").attr("class","nv-parallelCoordinates dimension");r.attr("transform",(function(t){return"translate("+u(t.key)+",0)"})),H.append("g").attr("class","nv-axis"),H.append("text").attr("class","nv-label").style("cursor","move").attr("dy","-1em").attr("text-anchor","middle").on("mouseover",(function(t,e){A.elementMouseover({label:t.tooltip||t.key,color:t.color})})).on("mouseout",(function(t,e){A.elementMouseout({label:t.tooltip})})).on("mousemove",(function(t,e){A.elementMousemove()})).call(P),H.append("g").attr("class","nv-brushBackground"),r.exit().remove(),r.select(".nv-label").text((function(t){return t.key})),G(g);var R=h.filter((function(t){return!c[t].brush.empty()})),j=R.map((function(t){return c[t].brush.extent()})),z=y.slice(0);function q(t){return w(p.map((function(e){if(isNaN(t.values[e.key])||isNaN(parseFloat(t.values[e.key]))||T){var n=c[e.key].domain(),r=c[e.key].range(),i=n[0]-(n[1]-n[0])/9;if(x.indexOf(e.key)<0){var a=d3.scale.linear().domain([i,n[1]]).range([l-12,r[1]]);c[e.key].brush.y(a),x.push(e.key)}if(isNaN(t.values[e.key])||isNaN(parseFloat(t.values[e.key])))return[u(e.key),c[e.key](i)]}return void 0!==_&&(x.length>0||T?(_.style("display","inline"),B.style("display","inline")):(_.style("display","none"),B.style("display","none"))),[u(e.key),c[e.key](t.values[e.key])]})))}function G(t){m.forEach((function(e){var n=c[e.dimension].brush.y().domain();e.hasOnlyNaN&&(e.extent[1]=(c[e.dimension].domain()[1]-n[0])*(e.extent[1]-e.extent[0])/(F[e.dimension]-e.extent[0])+n[0]),e.hasNaN&&(e.extent[0]=n[0]),t&&c[e.dimension].brush.extent(e.extent)})),r.select(".nv-brushBackground").each((function(t){d3.select(this).call(c[t.key].brush)})).selectAll("rect").attr("x",-8).attr("width",16),Q()}function Y(){!1===g&&(g=!0,G(!0))}function X(){R=h.filter((function(t){return!c[t].brush.empty()})),j=R.map((function(t){return c[t].brush.extent()})),m=[],R.forEach((function(t,e){m[e]={dimension:t,extent:j[e],hasNaN:!1,hasOnlyNaN:!1}})),y=[],t.style("display",(function(t){var e=R.every((function(e,n){return!(!isNaN(t.values[e])&&!isNaN(parseFloat(t.values[e]))||j[n][0]!=c[e].brush.y().domain()[0])||j[n][0]<=t.values[e]&&t.values[e]<=j[n][1]&&!isNaN(parseFloat(t.values[e]))}));return e&&y.push(t),e?null:"none"})),Q(),A.brush({filters:m,active:y})}function $(){var t=R.length>0;m.forEach((function(t){t.extent[0]===c[t.dimension].brush.y().domain()[0]&&x.indexOf(t.dimension)>=0&&(t.hasNaN=!0),t.extent[1]<c[t.dimension].domain()[0]&&(t.hasOnlyNaN=!0)})),A.brushEnd(y,t)}function Q(){r.select(".nv-axis").each((function(t,e){var n=m.filter((function(e){return e.dimension==t.key}));W[t.key]=c[t.key].domain(),0!=n.length&&g&&(W[t.key]=[],n[0].extent[1]>c[t.key].domain()[0]&&(W[t.key]=[n[0].extent[1]]),n[0].extent[0]>=c[t.key].domain()[0]&&W[t.key].push(n[0].extent[0])),d3.select(this).call(M.scale(c[t.key]).tickFormat(t.format).tickValues(W[t.key]))}))}function Z(t){var e=b[t];return null==e?u(t):e}y=[],t.style("display",(function(t){var e=R.every((function(e,n){return!(!isNaN(t.values[e])&&!isNaN(parseFloat(t.values[e]))||j[n][0]!=c[e].brush.y().domain()[0])||j[n][0]<=t.values[e]&&t.values[e]<=j[n][1]&&!isNaN(parseFloat(t.values[e]))}));return e&&y.push(t),e?null:"none"})),(m.length>0||!e.utils.arrayEquals(y,z))&&A.activeChanged(y)})),S}return S.dispatch=A,S.options=e.utils.optionsFunc.bind(S),S._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return o},set:function(t){o=t}},dimensionData:{get:function(){return f},set:function(t){f=t}},displayBrush:{get:function(){return g},set:function(t){g=t}},filters:{get:function(){return m},set:function(t){m=t}},active:{get:function(){return y},set:function(t){y=t}},lineTension:{get:function(){return k},set:function(t){k=t}},undefinedValuesLabel:{get:function(){return d},set:function(t){d=t}},dimensions:{get:function(){return f.map((function(t){return t.key}))},set:function(t){e.deprecated("dimensions","use dimensionData instead"),0===f.length?t.forEach((function(t){f.push({key:t})})):t.forEach((function(t,e){f[e].key=t}))}},dimensionNames:{get:function(){return f.map((function(t){return t.key}))},set:function(t){e.deprecated("dimensionNames","use dimensionData instead"),h=[],0===f.length?t.forEach((function(t){f.push({key:t})})):t.forEach((function(t,e){f[e].key=t}))}},dimensionFormats:{get:function(){return f.map((function(t){return t.format}))},set:function(t){e.deprecated("dimensionFormats","use dimensionData instead"),0===f.length?t.forEach((function(t){f.push({format:t})})):t.forEach((function(t,e){f[e].format=t}))}},margin:{get:function(){return i},set:function(t){i.top=void 0!==t.top?t.top:i.top,i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}},color:{get:function(){return v},set:function(t){v=e.utils.getColor(t)}}}),e.utils.initOptions(S),S},e.models.parallelCoordinatesChart=function(){"use strict";var t=e.models.parallelCoordinates(),n=e.models.legend(),r=e.models.tooltip(),i=(e.models.tooltip(),{top:0,right:0,bottom:0,left:0}),a=null,o=null,s=null,l=!0,u=e.utils.defaultColor(),c=e.utils.state(),d=[],f=!0,p=null,h=null,g="undefined",v=d3.dispatch("dimensionsOrder","brushEnd","stateChange","changeState","renderEnd"),m=e.utils.renderWatch(v);function y(r){return m.reset(),m.models(t),r.each((function(r){var u=d3.select(this);e.utils.initSVG(u);var h,g=e.utils.availableWidth(o,u,i),m=e.utils.availableHeight(s,u,i);if(y.update=function(){u.call(y)},y.container=this,c.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(d),y.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(d)).update(),c.disabled=d.map((function(t){return!!t.disabled})),(d=d.map((function(t){return t.disabled=!!t.disabled,t}))).forEach((function(t,e){t.originalPosition=isNaN(t.originalPosition)?e:t.originalPosition,t.currentPosition=isNaN(t.currentPosition)?e:t.currentPosition})),!p)for(h in p={},c)c[h]instanceof Array?p[h]=c[h].slice(0):p[h]=c[h];if(!r||!r.length)return e.utils.noData(y,u),y;u.selectAll(".nv-noData").remove();var b=u.selectAll("g.nv-wrap.nv-parallelCoordinatesChart").data([r]),x=b.enter().append("g").attr("class","nvd3 nv-wrap nv-parallelCoordinatesChart").append("g"),k=b.select("g");x.append("g").attr("class","nv-parallelCoordinatesWrap"),x.append("g").attr("class","nv-legendWrap"),k.select("rect").attr("width",g).attr("height",m>0?m:0),l?(n.width(g).color((function(t){return"rgb(188,190,192)"})),k.select(".nv-legendWrap").datum(d.sort((function(t,e){return t.originalPosition-e.originalPosition}))).call(n),a||n.height()===i.top||(i.top=n.height(),m=e.utils.availableHeight(s,u,i)),b.select(".nv-legendWrap").attr("transform","translate( 0 ,"+-i.top+")")):k.select(".nv-legendWrap").selectAll("*").remove(),b.attr("transform","translate("+i.left+","+i.top+")"),t.width(g).height(m).dimensionData(d).displayBrush(f),k.select(".nv-parallelCoordinatesWrap ").datum(r).transition().call(t),t.dispatch.on("brushEnd",(function(t,e){e?(f=!0,v.brushEnd(t)):f=!1})),n.dispatch.on("stateChange",(function(t){for(var e in t)c[e]=t[e];v.stateChange(c),y.update()})),t.dispatch.on("dimensionsOrder",(function(t){d.sort((function(t,e){return t.currentPosition-e.currentPosition}));var e=!1;d.forEach((function(t,n){t.currentPosition=n,t.currentPosition!==t.originalPosition&&(e=!0)})),v.dimensionsOrder(d,e)})),v.on("changeState",(function(t){void 0!==t.disabled&&(d.forEach((function(e,n){e.disabled=t.disabled[n]})),c.disabled=t.disabled),y.update()}))})),m.renderEnd("parraleleCoordinateChart immediate"),y}return r.contentGenerator((function(t){var e='<table><thead><tr><td class="legend-color-guide"><div style="background-color:'+t.color+'"></div></td><td><strong>'+t.key+"</strong></td></tr></thead>";return 0!==t.series.length&&(e+='<tbody><tr><td height ="10px"></td></tr>',t.series.forEach((function(t){e=e+'<tr><td class="legend-color-guide"><div style="background-color:'+t.color+'"></div></td><td class="key">'+t.key+'</td><td class="value">'+t.value+"</td></tr>"})),e+="</tbody>"),e+="</table>"})),t.dispatch.on("elementMouseover.tooltip",(function(t){var e={key:t.label,color:t.color,series:[]};t.values&&(Object.keys(t.values).forEach((function(n){var r,i=t.dimensions.filter((function(t){return t.key===n}))[0];i&&(r=isNaN(t.values[n])||isNaN(parseFloat(t.values[n]))?g:i.format(t.values[n]),e.series.push({idx:i.currentPosition,key:n,value:r,color:i.color}))})),e.series.sort((function(t,e){return t.idx-e.idx}))),r.data(e).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){r.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(){r()})),y.dispatch=v,y.parallelCoordinates=t,y.legend=n,y.tooltip=r,y.options=e.utils.optionsFunc.bind(y),y._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return s},set:function(t){s=t}},showLegend:{get:function(){return l},set:function(t){l=t}},defaultState:{get:function(){return p},set:function(t){p=t}},dimensionData:{get:function(){return d},set:function(t){d=t}},displayBrush:{get:function(){return f},set:function(t){f=t}},noData:{get:function(){return h},set:function(t){h=t}},nanValue:{get:function(){return g},set:function(t){g=t}},margin:{get:function(){return i},set:function(t){void 0!==t.top&&(i.top=t.top,a=t.top),i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}},color:{get:function(){return u},set:function(r){u=e.utils.getColor(r),n.color(u),t.color(u)}}}),e.utils.inheritOptions(y,t),e.utils.initOptions(y),y},e.models.pie=function(){"use strict";var t={top:0,right:0,bottom:0,left:0},n=500,r=500,i=function(t){return t.x},a=function(t){return t.y},o=Math.floor(1e4*Math.random()),s=null,l=e.utils.defaultColor(),u=d3.format(",.2f"),c=!0,d=!1,f="key",p=.02,h=!1,g=!1,v=!1,m=!0,y=0,b=!1,x=!1,k=!1,w=!1,M=0,A=.5,C=250,S=[],D=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout","elementMousemove","renderEnd"),E=[],F=[],T=e.utils.renderWatch(D);function W(N){return T.reset(),N.each((function(W){var N=n-t.left-t.right,O=r-t.top-t.bottom,L=Math.min(N,O)/2,_=[],B=[];if(s=d3.select(this),0===S.length)for(var P=L-L/10,V=A*L,I=0;I<W[0].length;I++)_.push(P),B.push(V);else m?(_=S.map((function(t){return(t.outer-t.outer/10)*L})),B=S.map((function(t){return(t.inner-t.inner/10)*L})),A=d3.min(S.map((function(t){return t.inner-t.inner/10})))):(_=S.map((function(t){return t.outer*L})),B=S.map((function(t){return t.inner*L})),A=d3.min(S.map((function(t){return t.inner}))));e.utils.initSVG(s);var H=s.selectAll(".nv-wrap.nv-pie").data(W),R=H.enter().append("g").attr("class","nvd3 nv-wrap nv-pie nv-chart-"+o).append("g"),j=H.select("g"),z=R.append("g").attr("class","nv-pie");for(R.append("g").attr("class","nv-pieLabels"),H.attr("transform","translate("+t.left+","+t.top+")"),j.select(".nv-pie").attr("transform","translate("+N/2+","+O/2+")"),j.select(".nv-pieLabels").attr("transform","translate("+N/2+","+O/2+")"),s.on("click",(function(t,e){D.chartClick({data:t,index:e,pos:d3.event,id:o})})),E=[],F=[],I=0;I<W[0].length;I++){var q=d3.svg.arc().outerRadius(_[I]),G=d3.svg.arc().outerRadius(_[I]+5);!1!==x&&(q.startAngle(x),G.startAngle(x)),!1!==w&&(q.endAngle(w),G.endAngle(w)),g&&(q.innerRadius(B[I]),G.innerRadius(B[I])),q.cornerRadius&&M&&(q.cornerRadius(M),G.cornerRadius(M)),E.push(q),F.push(G)}var Y=d3.layout.pie().sort(null).value((function(t){return t.disabled?0:a(t)}));Y.padAngle&&k&&Y.padAngle(k),g&&v&&(z.append("text").attr("class","nv-pie-title"),H.select(".nv-pie-title").style("text-anchor","middle").text((function(t){return v})).style("font-size",Math.min(N,O)*A*2/(v.length+2)+"px").attr("dy","0.35em").attr("transform",(function(t,e){return"translate(0, "+y+")"})));var X=H.select(".nv-pie").selectAll(".nv-slice").data(Y),$=H.select(".nv-pieLabels").selectAll(".nv-label").data(Y);X.exit().remove(),$.exit().remove();var Q=X.enter().append("g");if(Q.attr("class","nv-slice"),Q.on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),m&&d3.select(this).select("path").transition().duration(70).attr("d",F[e]),D.elementMouseover({data:t.data,index:e,color:d3.select(this).style("fill"),percent:(t.endAngle-t.startAngle)/(2*Math.PI)})})),Q.on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),m&&d3.select(this).select("path").transition().duration(50).attr("d",E[e]),D.elementMouseout({data:t.data,index:e})})),Q.on("mousemove",(function(t,e){D.elementMousemove({data:t.data,index:e})})),Q.on("click",(function(t,e){D.elementClick({data:t.data,index:e,color:d3.select(this).style("fill"),event:d3.event,element:this})})),Q.on("dblclick",(function(t,e){D.elementDblClick({data:t.data,index:e,color:d3.select(this).style("fill")})})),X.attr("fill",(function(t,e){return l(t.data,e)})),X.attr("stroke",(function(t,e){return l(t.data,e)})),Q.append("path").each((function(t){this._current=t})),X.select("path").transition().duration(C).attr("d",(function(t,e){return E[e](t)})).attrTween("d",(function(t,e){t.endAngle=isNaN(t.endAngle)?0:t.endAngle,t.startAngle=isNaN(t.startAngle)?0:t.startAngle,g||(t.innerRadius=0);var n=d3.interpolate(this._current,t);return this._current=n(0),function(t){return E[e](n(t))}})),c){var Z=[];for(I=0;I<W[0].length;I++)Z.push(E[I]),d?g&&(Z[I]=d3.svg.arc().outerRadius(E[I].outerRadius()),!1!==x&&Z[I].startAngle(x),!1!==w&&Z[I].endAngle(w)):g||Z[I].innerRadius(0);$.enter().append("g").classed("nv-label",!0).each((function(t,e){var n=d3.select(this);n.attr("transform",(function(t,e){if(b){t.outerRadius=_[e]+10,t.innerRadius=_[e]+15;var n=(t.startAngle+t.endAngle)/2*(180/Math.PI);return(t.startAngle+t.endAngle)/2<Math.PI?n-=90:n+=90,"translate("+Z[e].centroid(t)+") rotate("+n+")"}return t.outerRadius=L+10,t.innerRadius=L+15,"translate("+Z[e].centroid(t)+")"})),n.append("rect").style("stroke","#fff").style("fill","#fff").attr("rx",3).attr("ry",3),n.append("text").style("text-anchor",b?(t.startAngle+t.endAngle)/2<Math.PI?"start":"end":"middle").style("fill","#000")}));var U={},K=function(t){return 140*Math.floor(t[0]/140)+","+14*Math.floor(t[1]/14)},J=function(t){return(t.endAngle-t.startAngle)/(2*Math.PI)};$.watchTransition(T,"pie labels").attr("transform",(function(t,e){if(b){t.outerRadius=_[e]+10,t.innerRadius=_[e]+15;var n=(t.startAngle+t.endAngle)/2*(180/Math.PI);return(t.startAngle+t.endAngle)/2<Math.PI?n-=90:n+=90,"translate("+Z[e].centroid(t)+") rotate("+n+")"}t.outerRadius=L+10,t.innerRadius=L+15;var r=Z[e].centroid(t),i=J(t);if(t.value&&i>=p){var a=K(r);U[a]&&(r[1]-=14),U[K(r)]=!0}return"translate("+r+")"})),$.select(".nv-label text").style("text-anchor",(function(t,e){return b?(t.startAngle+t.endAngle)/2<Math.PI?"start":"end":"middle"})).text((function(t,e){var n=J(t),r="";if(!t.value||n<p)return"";if("function"==typeof f)r=f(t,e,{key:i(t.data),value:a(t.data),percent:u(n)});else switch(f){case"key":r=i(t.data);break;case"value":r=u(a(t.data));break;case"percent":r=d3.format("%")(n)}return r})),h&&$.each((function(t,n){if(this.getBBox){var r=this.getBBox(),i=Z[n].centroid(t),a={x:i[0]+r.x,y:i[1]+r.y},o={x:a.x+r.width,y:a.y},s={x:a.x,y:a.y+r.height},l={x:a.x+r.width,y:a.y+r.height};t.visible=e.utils.pointIsInArc(a,t,q)&&e.utils.pointIsInArc(o,t,q)&&e.utils.pointIsInArc(s,t,q)&&e.utils.pointIsInArc(l,t,q)}})).style("display",(function(t){return t.visible?null:"none"}))}})),T.renderEnd("pie immediate"),W}return W.dispatch=D,W.options=e.utils.optionsFunc.bind(W),W._options=Object.create({},{arcsRadius:{get:function(){return S},set:function(t){S=t}},width:{get:function(){return n},set:function(t){n=t}},height:{get:function(){return r},set:function(t){r=t}},showLabels:{get:function(){return c},set:function(t){c=t}},title:{get:function(){return v},set:function(t){v=t}},titleOffset:{get:function(){return y},set:function(t){y=t}},labelThreshold:{get:function(){return p},set:function(t){p=t}},hideOverlapLabels:{get:function(){return h},set:function(t){h=t}},valueFormat:{get:function(){return u},set:function(t){u=t}},x:{get:function(){return i},set:function(t){i=t}},id:{get:function(){return o},set:function(t){o=t}},endAngle:{get:function(){return w},set:function(t){w=t}},startAngle:{get:function(){return x},set:function(t){x=t}},padAngle:{get:function(){return k},set:function(t){k=t}},cornerRadius:{get:function(){return M},set:function(t){M=t}},donutRatio:{get:function(){return A},set:function(t){A=t}},labelsOutside:{get:function(){return d},set:function(t){d=t}},labelSunbeamLayout:{get:function(){return b},set:function(t){b=t}},donut:{get:function(){return g},set:function(t){g=t}},growOnHover:{get:function(){return m},set:function(t){m=t}},pieLabelsOutside:{get:function(){return d},set:function(t){d=t,e.deprecated("pieLabelsOutside","use labelsOutside instead")}},donutLabelsOutside:{get:function(){return d},set:function(t){d=t,e.deprecated("donutLabelsOutside","use labelsOutside instead")}},labelFormat:{get:function(){return u},set:function(t){u=t,e.deprecated("labelFormat","use valueFormat instead")}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},duration:{get:function(){return C},set:function(t){C=t,T.reset(C)}},y:{get:function(){return a},set:function(t){a=d3.functor(t)}},color:{get:function(){return l},set:function(t){l=e.utils.getColor(t)}},labelType:{get:function(){return f},set:function(t){f=t||"key"}}}),e.utils.initOptions(W),W},e.models.pieChart=function(){"use strict";var t=e.models.pie(),n=e.models.legend(),r=e.models.tooltip(),i={top:30,right:20,bottom:20,left:20},a=null,o=null,s=null,l=!1,u=!0,c="top",d=e.utils.defaultColor(),f=e.utils.state(),p=null,h=null,g=250,v=d3.dispatch("stateChange","changeState","renderEnd");r.duration(0).headerEnabled(!1).valueFormatter((function(e,n){return t.valueFormat()(e,n)}));var m=e.utils.renderWatch(v);function y(r){return m.reset(),m.models(t),r.each((function(r){var l=d3.select(this);e.utils.initSVG(l);var d,h=e.utils.availableWidth(o,l,i),g=e.utils.availableHeight(s,l,i);if(y.update=function(){l.transition().call(y)},y.container=this,f.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(r),y.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(r)).update(),f.disabled=r.map((function(t){return!!t.disabled})),!p)for(d in p={},f)f[d]instanceof Array?p[d]=f[d].slice(0):p[d]=f[d];if(!r||!r.length)return e.utils.noData(y,l),y;l.selectAll(".nv-noData").remove();var m=l.selectAll("g.nv-wrap.nv-pieChart").data([r]),b=m.enter().append("g").attr("class","nvd3 nv-wrap nv-pieChart").append("g"),x=m.select("g");if(b.append("g").attr("class","nv-pieWrap"),b.append("g").attr("class","nv-legendWrap"),u)if("top"===c)n.width(h).key(t.x()),m.select(".nv-legendWrap").datum(r).call(n),a||n.height()===i.top||(i.top=n.height(),g=e.utils.availableHeight(s,l,i)),m.select(".nv-legendWrap").attr("transform","translate(0,"+-i.top+")");else if("right"===c){var k=e.models.legend().width();h/2<k&&(k=h/2),n.height(g).key(t.x()),n.width(k),h-=n.width(),m.select(".nv-legendWrap").datum(r).call(n).attr("transform","translate("+h+",0)")}else"bottom"===c&&(n.width(h).key(t.x()),m.select(".nv-legendWrap").datum(r).call(n),i.bottom=n.height(),g=e.utils.availableHeight(s,l,i),m.select(".nv-legendWrap").attr("transform","translate(0,"+g+")"));else x.select(".nv-legendWrap").selectAll("*").remove();m.attr("transform","translate("+i.left+","+i.top+")"),t.width(h).height(g);var w=x.select(".nv-pieWrap").datum([r]);d3.transition(w).call(t),n.dispatch.on("stateChange",(function(t){for(var e in t)f[e]=t[e];v.stateChange(f),y.update()})),v.on("changeState",(function(t){void 0!==t.disabled&&(r.forEach((function(e,n){e.disabled=t.disabled[n]})),f.disabled=t.disabled),y.update()}))})),m.renderEnd("pieChart immediate"),y}return t.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:y.x()(t.data),value:y.y()(t.data),color:t.color,percent:t.percent},l||(delete t.percent,delete t.series.percent),r.data(t).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){r.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(t){r()})),y.legend=n,y.dispatch=v,y.pie=t,y.tooltip=r,y.options=e.utils.optionsFunc.bind(y),y._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return s},set:function(t){s=t}},noData:{get:function(){return h},set:function(t){h=t}},showTooltipPercent:{get:function(){return l},set:function(t){l=t}},showLegend:{get:function(){return u},set:function(t){u=t}},legendPosition:{get:function(){return c},set:function(t){c=t}},defaultState:{get:function(){return p},set:function(t){p=t}},color:{get:function(){return d},set:function(e){d=e,n.color(d),t.color(d)}},duration:{get:function(){return g},set:function(e){g=e,m.reset(g),t.duration(g)}},margin:{get:function(){return i},set:function(t){void 0!==t.top&&(i.top=t.top,a=t.top),i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}}}),e.utils.inheritOptions(y,t),e.utils.initOptions(y),y},e.models.sankey=function(){"use strict";var t={},n=24,r=8,i=[1,1],a=[],o=[],s=!0,l=function(t){a.forEach((function(t){t.sourceLinks=[],t.targetLinks=[]})),o.forEach((function(t){var e=t.source,n=t.target;"number"==typeof e&&(e=t.source=a[t.source]),"number"==typeof n&&(n=t.target=a[t.target]),e.sourceLinks.push(t),n.targetLinks.push(t)})),a.forEach((function(t){t.value=Math.max(d3.sum(t.sourceLinks,f),d3.sum(t.targetLinks,f))})),function(){for(var t,e,r=a,o=0;r.length&&o<a.length;)t=[],r.forEach((function(e){e.x=o,e.dx=n,e.sourceLinks.forEach((function(e){t.indexOf(e.target)<0&&t.push(e.target)}))})),r=t,++o;s&&function(t){a.forEach((function(e){e.sourceLinks.length||(e.x=t-1)}))}(o),e=(i[0]-n)/(o-1),a.forEach((function(t){t.x*=e}))}(),function(t){var e,n=d3.nest().key((function(t){return t.x})).sortKeys(d3.ascending).entries(a).map((function(t){return t.values}));e=d3.min(n,(function(t){return(i[1]-(t.length-1)*r)/d3.sum(t,f)})),n.forEach((function(t){t.forEach((function(t,n){t.y=n,t.dy=t.value*e}))})),o.forEach((function(t){t.dy=t.value*e})),p(),d();for(var s=1;t>0;--t)u(s*=.99),p(),d(),l(s),p(),d();function l(t){function e(t){return(t.source.y+t.sy+t.dy/2)*t.value}n.forEach((function(n,r){n.forEach((function(n){if(n.targetLinks.length){var r=d3.sum(n.targetLinks,e)/d3.sum(n.targetLinks,f);n.y+=(r-c(n))*t}}))}))}function u(t){function e(t){return(t.target.y+t.ty+t.dy/2)*t.value}n.slice().reverse().forEach((function(n){n.forEach((function(n){if(n.sourceLinks.length){var r=d3.sum(n.sourceLinks,e)/d3.sum(n.sourceLinks,f);n.y+=(r-c(n))*t}}))}))}function p(){n.forEach((function(t){var e,n,a,o=0,s=t.length;for(t.sort(h),a=0;a<s;++a)(n=o-(e=t[a]).y)>0&&(e.y+=n),o=e.y+e.dy+r;if((n=o-r-i[1])>0)for(o=e.y-=n,a=s-2;a>=0;--a)(n=(e=t[a]).y+e.dy+r-o)>0&&(e.y-=n),o=e.y}))}function h(t,e){return t.y-e.y}}(t)},u=function(){var t=.5;function e(e){var n=e.source.x+e.source.dx,r=e.target.x,i=d3.interpolateNumber(n,r),a=i(t),o=i(1-t),s=e.source.y+e.sy+e.dy/2,l=e.target.y+e.ty+e.dy/2;return"M"+n+","+s+"C"+a+","+s+" "+o+","+l+" "+r+","+l}return e.curvature=function(n){return arguments.length?(t=+n,e):t},e},c=function(t){return t.y+t.dy/2};function d(){function t(t,e){return t.source.y-e.source.y}function e(t,e){return t.target.y-e.target.y}a.forEach((function(n){n.sourceLinks.sort(e),n.targetLinks.sort(t)})),a.forEach((function(t){var e=0,n=0;t.sourceLinks.forEach((function(t){t.sy=e,e+=t.dy})),t.targetLinks.forEach((function(t){t.ty=n,n+=t.dy}))}))}function f(t){return t.value}return t.options=e.utils.optionsFunc.bind(t),t._options=Object.create({},{nodeWidth:{get:function(){return n},set:function(t){n=+t}},nodePadding:{get:function(){return r},set:function(t){r=t}},nodes:{get:function(){return a},set:function(t){a=t}},links:{get:function(){return o},set:function(t){o=t}},size:{get:function(){return i},set:function(t){i=t}},sinksRight:{get:function(){return s},set:function(t){s=t}},layout:{get:function(){l(32)},set:function(t){l(t)}},relayout:{get:function(){d()},set:function(t){}},center:{get:function(){return c()},set:function(t){"function"==typeof t&&(c=t)}},link:{get:function(){return u()},set:function(t){return"function"==typeof t&&(u=t),u()}}}),e.utils.initOptions(t),t},e.models.sankeyChart=function(){"use strict";var t={top:5,right:0,bottom:5,left:0},n=e.models.sankey(),r=600,i=400,a=36,o=40,s="units",l=void 0,u=d3.format(",.0f"),c=function(t){return u(t)+" "+s},d=d3.scale.category20(),f=function(t){return t.source.name+" → "+t.target.name+"\n"+c(t.value)},p=function(t){return t.color=d(t.name.replace(/ .*/,""))},h=function(t){return d3.rgb(t.color).darker(2)},g=function(t){return t.name+"\n"+c(t.value)},v=function(t,e){t.append("text").attr("x",0).attr("y",0).attr("class","nvd3-sankey-chart-error").attr("text-anchor","middle").text(e)};function m(t){return t.each((function(e){var s={nodes:[{node:1,name:"Test 1"},{node:2,name:"Test 2"},{node:3,name:"Test 3"},{node:4,name:"Test 4"},{node:5,name:"Test 5"},{node:6,name:"Test 6"}],links:[{source:0,target:1,value:2295},{source:0,target:5,value:1199},{source:1,target:2,value:1119},{source:1,target:5,value:1176},{source:2,target:3,value:487},{source:2,target:5,value:632},{source:3,target:4,value:301},{source:3,target:5,value:186}]},u=!1,c=!1;if(("object"==typeof e.nodes&&e.nodes.length)>=0&&("object"==typeof e.links&&e.links.length)>=0&&(u=!0),e.nodes&&e.nodes.length>0&&e.links&&e.links.length>0&&(c=!0),!u)return console.error("NVD3 Sankey chart error:","invalid data format for",e),console.info("Valid data format is: ",s,JSON.stringify(s)),v(t,"Error loading chart, data is invalid"),!1;if(!c)return v(t,"No data available"),!1;var d=t.append("svg").attr("width",r).attr("height",i).append("g").attr("class","nvd3 nv-wrap nv-sankeyChart");n.nodeWidth(a).nodePadding(o).size([r,i]);var m=n.link();n.nodes(e.nodes).links(e.links).layout(32).center(l);var y=d.append("g").selectAll(".link").data(e.links).enter().append("path").attr("class","link").attr("d",m).style("stroke-width",(function(t){return Math.max(1,t.dy)})).sort((function(t,e){return e.dy-t.dy}));y.append("title").text(f);var b=d.append("g").selectAll(".node").data(e.nodes).enter().append("g").attr("class","node").attr("transform",(function(t){return"translate("+t.x+","+t.y+")"})).call(d3.behavior.drag().origin((function(t){return t})).on("dragstart",(function(){this.parentNode.appendChild(this)})).on("drag",(function(t){d3.select(this).attr("transform","translate("+t.x+","+(t.y=Math.max(0,Math.min(i-t.dy,d3.event.y)))+")"),n.relayout(),y.attr("d",m)})));b.append("rect").attr("height",(function(t){return t.dy})).attr("width",n.nodeWidth()).style("fill",p).style("stroke",h).append("title").text(g),b.append("text").attr("x",-6).attr("y",(function(t){return t.dy/2})).attr("dy",".35em").attr("text-anchor","end").attr("transform",null).text((function(t){return t.name})).filter((function(t){return t.x<r/2})).attr("x",6+n.nodeWidth()).attr("text-anchor","start")})),m}return m.options=e.utils.optionsFunc.bind(m),m._options=Object.create({},{units:{get:function(){return s},set:function(t){s=t}},width:{get:function(){return r},set:function(t){r=t}},height:{get:function(){return i},set:function(t){i=t}},format:{get:function(){return c},set:function(t){c=t}},linkTitle:{get:function(){return f},set:function(t){f=t}},nodeWidth:{get:function(){return a},set:function(t){a=t}},nodePadding:{get:function(){return o},set:function(t){o=t}},center:{get:function(){return l},set:function(t){l=t}},margin:{get:function(){return t},set:function(e){t.top=void 0!==e.top?e.top:t.top,t.right=void 0!==e.right?e.right:t.right,t.bottom=void 0!==e.bottom?e.bottom:t.bottom,t.left=void 0!==e.left?e.left:t.left}},nodeStyle:{get:function(){return{}},set:function(t){p=void 0!==t.fillColor?t.fillColor:p,h=void 0!==t.strokeColor?t.strokeColor:h,g=void 0!==t.title?t.title:g}}}),e.utils.initOptions(m),m},e.models.scatter=function(){"use strict";var t,n,r,i,a,o,s,l,u={top:0,right:0,bottom:0,left:0},c=null,d=null,f=e.utils.defaultColor(),p=null,h=Math.floor(1e5*Math.random()),g=null,v=d3.scale.linear(),m=d3.scale.linear(),y=d3.scale.linear(),b=function(t){return t.x},x=function(t){return t.y},k=function(t){return t.size||1},w=function(t){return t.shape||"circle"},M=[],A=[],C=[],S=!0,D=function(t){return!t.notActive},E=!1,F=.1,T=!1,W=!0,N=!1,O=function(){return 25},L=null,_=null,B=null,P=null,V=null,I=null,H=!1,R=d3.dispatch("elementClick","elementDblClick","elementMouseover","elementMouseout","renderEnd"),j=!0,z=250,q=300,G=!1,Y=!1,X=e.utils.renderWatch(R,z),$=[16,256],Q={};function Z(t){var e;return e=t[0].series+":"+t[1],Q[e]=Q[e]||{}}function U(t){var e;e=t[0].series+":"+t[1],delete Q[e]}function K(t){var e,n,r,i=Z(t),a=!1;for(e=1;e<arguments.length;e+=2)n=arguments[e],r=arguments[e+1](t[0],t[1]),i[n]===r&&i.hasOwnProperty(n)||(i[n]=r,a=!0);return a}function J(z){return X.reset(),z.each((function(z){g=d3.select(this);var Q=e.utils.availableWidth(c,g,u),Z=e.utils.availableHeight(d,g,u);e.utils.initSVG(g),z.forEach((function(t,e){t.values.forEach((function(t){t.series=e}))}));var tt="function"==typeof J.yScale().base,et=L&&_&&V?[]:d3.merge(z.map((function(t){return t.values.map((function(t,e){return{x:b(t,e),y:x(t,e),size:k(t,e)}}))})));if(v.domain(L||d3.extent(et.map((function(t){return t.x})).concat(M))),E&&z[0]?v.range(B||[(Q*F+Q)/(2*z[0].values.length),Q-Q*(1+F)/(2*z[0].values.length)]):v.range(B||[0,Q]),tt){var nt=d3.min(et.map((function(t){if(0!==t.y)return t.y})));m.clamp(!0).domain(_||d3.extent(et.map((function(t){return 0!==t.y?t.y:.1*nt})).concat(A))).range(P||[Z,0])}else m.domain(_||d3.extent(et.map((function(t){return t.y})).concat(A))).range(P||[Z,0]);y.domain(V||d3.extent(et.map((function(t){return t.size})).concat(C))).range(I||$),H=v.domain()[0]===v.domain()[1]||m.domain()[0]===m.domain()[1],v.domain()[0]===v.domain()[1]&&(v.domain()[0]?v.domain([v.domain()[0]-.01*v.domain()[0],v.domain()[1]+.01*v.domain()[1]]):v.domain([-1,1])),m.domain()[0]===m.domain()[1]&&(m.domain()[0]?m.domain([m.domain()[0]-.01*m.domain()[0],m.domain()[1]+.01*m.domain()[1]]):m.domain([-1,1])),isNaN(v.domain()[0])&&v.domain([-1,1]),isNaN(m.domain()[0])&&m.domain([-1,1]),t=t||v,n=n||m,r=r||y;var rt=v(1)!==t(1)||m(1)!==n(1)||y(1)!==r(1);s=s||d;var it=(o=o||c)!==c||s!==d,at=(i=i||[])[0]!==v.domain()[0]||i[1]!==v.domain()[1];i=v.domain(),a=a||[],at=at||a[0]!==m.domain()[0]||a[1]!==m.domain()[1],a=m.domain();var ot=g.selectAll("g.nv-wrap.nv-scatter").data([z]),st=ot.enter().append("g").attr("class","nvd3 nv-wrap nv-scatter nv-chart-"+h),lt=st.append("defs"),ut=st.append("g"),ct=ot.select("g");function dt(){if(Y=!1,!S)return!1;if(!0===j){ot.select(".nv-point-paths").selectAll("path").remove();var t=d3.merge(z.map((function(t,n){return t.values.map((function(t,r){var i=b(t,r),a=x(t,r);return[e.utils.NaNtoZero(v(i))+1e-4*Math.random(),e.utils.NaNtoZero(m(a))+1e-4*Math.random(),n,r,t]})).filter((function(t,e){return D(t[4],e)}))})));if(0==t.length)return!1;t.length<3&&(t.push([v.range()[0]-20,m.range()[0]-20,null,null]),t.push([v.range()[1]+20,m.range()[1]+20,null,null]),t.push([v.range()[0]-20,m.range()[0]+20,null,null]),t.push([v.range()[1]+20,m.range()[1]-20,null,null]));var n=d3.geom.polygon([[-10,-10],[-10,d+10],[c+10,d+10],[c+10,-10]]);t=t.sort((function(t,e){return t[0]-e[0]||t[1]-e[1]}));for(var r=0;r<t.length-1;)Math.abs(t[r][0]-t[r+1][0])<1e-4&&Math.abs(t[r][1]-t[r+1][1])<1e-4?t.splice(r+1,1):r++;var i=d3.geom.voronoi(t).map((function(e,r){return{data:n.clip(e),series:t[r][2],point:t[r][3]}})),a=ot.select(".nv-point-paths").selectAll("path").data(i),o=a.enter().append("svg:path").attr("d",(function(t){return t&&t.data&&0!==t.data.length?"M"+t.data.join(",")+"Z":"M 0 0"})).attr("id",(function(t,e){return"nv-path-"+e})).attr("clip-path",(function(t,e){return"url(#nv-clip-"+h+"-"+e+")"}));N&&o.style("fill",d3.rgb(230,230,230)).style("fill-opacity",.4).style("stroke-opacity",1).style("stroke",d3.rgb(200,200,200)),W&&(ot.select(".nv-point-clips").selectAll("*").remove(),ot.select(".nv-point-clips").selectAll("clipPath").data(t).enter().append("svg:clipPath").attr("id",(function(t,e){return"nv-clip-"+h+"-"+e})).append("svg:circle").attr("cx",(function(t){return t[0]})).attr("cy",(function(t){return t[1]})).attr("r",O));var s=function(t,e,n){if(Y)return 0;var r=z[e.series];if(void 0!==r){var i=r.values[e.point];i.color=f(r,e.series),i.x=b(i),i.y=x(i);var a=g.node().getBoundingClientRect(),o=window.pageYOffset||document.documentElement.scrollTop,s=window.pageXOffset||document.documentElement.scrollLeft;n({point:i,series:r,pos:{left:v(b(i,e.point))+a.left+s+u.left+10,top:m(x(i,e.point))+a.top+o+u.top+10},relativePos:[v(b(i,e.point))+u.left,m(x(i,e.point))+u.top],seriesIndex:e.series,pointIndex:e.point,event:d3.event,element:t})}};a.on("click",(function(t){s(this,t,R.elementClick)})).on("dblclick",(function(t){s(this,t,R.elementDblClick)})).on("mouseover",(function(t){s(this,t,R.elementMouseover)})).on("mouseout",(function(t,e){s(this,t,R.elementMouseout)}))}else ot.select(".nv-groups").selectAll(".nv-group").selectAll(".nv-point").on("click",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];R.elementClick({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e,event:d3.event,element:this})})).on("dblclick",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];R.elementDblClick({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e})})).on("mouseover",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];R.elementMouseover({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e,color:f(t,e)})})).on("mouseout",(function(t,e){if(Y||!z[t.series])return 0;var n=z[t.series],r=n.values[e];R.elementMouseout({point:r,series:n,pos:[v(b(r,e))+u.left,m(x(r,e))+u.top],relativePos:[v(b(r,e))+u.left,m(x(r,e))+u.top],seriesIndex:t.series,pointIndex:e,color:f(t,e)})}))}ot.classed("nv-single-point",H),ut.append("g").attr("class","nv-groups"),ut.append("g").attr("class","nv-point-paths"),st.append("g").attr("class","nv-point-clips"),ot.attr("transform","translate("+u.left+","+u.top+")"),lt.append("clipPath").attr("id","nv-edge-clip-"+h).append("rect").attr("transform","translate( -10, -10)"),ot.select("#nv-edge-clip-"+h+" rect").attr("width",Q+20).attr("height",Z>0?Z+20:0),ct.attr("clip-path",T?"url(#nv-edge-clip-"+h+")":""),Y=!0;var ft=ot.select(".nv-groups").selectAll(".nv-group").data((function(t){return t}),(function(t){return t.key}));ft.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),ft.exit().remove(),ft.attr("class",(function(t,e){return(t.classed||"")+" nv-group nv-series-"+e})).classed("nv-noninteractive",!S).classed("hover",(function(t){return t.hover})),ft.watchTransition(X,"scatter: groups").style("fill",(function(t,e){return f(t,e)})).style("stroke",(function(t,e){return t.pointBorderColor||p||f(t,e)})).style("stroke-opacity",1).style("fill-opacity",.5);var pt=ft.selectAll("path.nv-point").data((function(t){return t.values.map((function(t,e){return[t,e]})).filter((function(t,e){return D(t[0],e)}))}));if(pt.enter().append("path").attr("class",(function(t){return"nv-point nv-point-"+t[1]})).style("fill",(function(t){return t.color})).style("stroke",(function(t){return t.color})).attr("transform",(function(r){return"translate("+e.utils.NaNtoZero(t(b(r[0],r[1])))+","+e.utils.NaNtoZero(n(x(r[0],r[1])))+")"})).attr("d",e.utils.symbol().type((function(t){return w(t[0])})).size((function(t){return y(k(t[0],t[1]))}))),pt.exit().each(U).remove(),ft.exit().selectAll("path.nv-point").watchTransition(X,"scatter exit").attr("transform",(function(t){return"translate("+e.utils.NaNtoZero(v(b(t[0],t[1])))+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"})).remove(),pt.filter((function(t){return K(t,"x",b,"y",x)||rt||it||at})).watchTransition(X,"scatter points").attr("transform",(function(t){return"translate("+e.utils.NaNtoZero(v(b(t[0],t[1])))+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"})),pt.filter((function(t){return K(t,"shape",w,"size",k)||rt||it||at})).watchTransition(X,"scatter points").attr("d",e.utils.symbol().type((function(t){return w(t[0])})).size((function(t){return y(k(t[0],t[1]))}))),G){var ht=ft.selectAll(".nv-label").data((function(t){return t.values.map((function(t,e){return[t,e]})).filter((function(t,e){return D(t[0],e)}))}));ht.enter().append("text").style("fill",(function(t,e){return t.color})).style("stroke-opacity",0).style("fill-opacity",1).attr("transform",(function(r){return"translate("+(e.utils.NaNtoZero(t(b(r[0],r[1])))+Math.sqrt(y(k(r[0],r[1]))/Math.PI)+2)+","+e.utils.NaNtoZero(n(x(r[0],r[1])))+")"})).text((function(t,e){return t[0].label})),ht.exit().remove(),ft.exit().selectAll("path.nv-label").watchTransition(X,"scatter exit").attr("transform",(function(t){return"translate("+(e.utils.NaNtoZero(v(b(t[0],t[1])))+Math.sqrt(y(k(t[0],t[1]))/Math.PI)+2)+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"})).remove(),ht.each((function(t){d3.select(this).classed("nv-label",!0).classed("nv-label-"+t[1],!1).classed("hover",!1)})),ht.watchTransition(X,"scatter labels").attr("transform",(function(t){return"translate("+(e.utils.NaNtoZero(v(b(t[0],t[1])))+Math.sqrt(y(k(t[0],t[1]))/Math.PI)+2)+","+e.utils.NaNtoZero(m(x(t[0],t[1])))+")"}))}q?(clearTimeout(l),l=setTimeout(dt,q)):dt(),t=v.copy(),n=m.copy(),r=y.copy(),o=c,s=d})),X.renderEnd("scatter immediate"),J}return J.dispatch=R,J.options=e.utils.optionsFunc.bind(J),J._calls=new function(){this.clearHighlights=function(){return e.dom.write((function(){g.selectAll(".nv-point.hover").classed("hover",!1)})),null},this.highlightPoint=function(t,n,r){e.dom.write((function(){g.select(".nv-groups").selectAll(".nv-series-"+t).selectAll(".nv-point-"+n).classed("hover",r)}))}},R.on("elementMouseover.point",(function(t){S&&J._calls.highlightPoint(t.seriesIndex,t.pointIndex,!0)})),R.on("elementMouseout.point",(function(t){S&&J._calls.highlightPoint(t.seriesIndex,t.pointIndex,!1)})),J._options=Object.create({},{width:{get:function(){return c},set:function(t){c=t}},height:{get:function(){return d},set:function(t){d=t}},xScale:{get:function(){return v},set:function(t){v=t}},yScale:{get:function(){return m},set:function(t){m=t}},pointScale:{get:function(){return y},set:function(t){y=t}},xDomain:{get:function(){return L},set:function(t){L=t}},yDomain:{get:function(){return _},set:function(t){_=t}},pointDomain:{get:function(){return V},set:function(t){V=t}},xRange:{get:function(){return B},set:function(t){B=t}},yRange:{get:function(){return P},set:function(t){P=t}},pointRange:{get:function(){return I},set:function(t){I=t}},forceX:{get:function(){return M},set:function(t){M=t}},forceY:{get:function(){return A},set:function(t){A=t}},forcePoint:{get:function(){return C},set:function(t){C=t}},interactive:{get:function(){return S},set:function(t){S=t}},pointActive:{get:function(){return D},set:function(t){D=t}},padDataOuter:{get:function(){return F},set:function(t){F=t}},padData:{get:function(){return E},set:function(t){E=t}},clipEdge:{get:function(){return T},set:function(t){T=t}},clipVoronoi:{get:function(){return W},set:function(t){W=t}},clipRadius:{get:function(){return O},set:function(t){O=t}},showVoronoi:{get:function(){return N},set:function(t){N=t}},id:{get:function(){return h},set:function(t){h=t}},interactiveUpdateDelay:{get:function(){return q},set:function(t){q=t}},showLabels:{get:function(){return G},set:function(t){G=t}},pointBorderColor:{get:function(){return p},set:function(t){p=t}},x:{get:function(){return b},set:function(t){b=d3.functor(t)}},y:{get:function(){return x},set:function(t){x=d3.functor(t)}},pointSize:{get:function(){return k},set:function(t){k=d3.functor(t)}},pointShape:{get:function(){return w},set:function(t){w=d3.functor(t)}},margin:{get:function(){return u},set:function(t){u.top=void 0!==t.top?t.top:u.top,u.right=void 0!==t.right?t.right:u.right,u.bottom=void 0!==t.bottom?t.bottom:u.bottom,u.left=void 0!==t.left?t.left:u.left}},duration:{get:function(){return z},set:function(t){z=t,X.reset(z)}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t)}},useVoronoi:{get:function(){return j},set:function(t){!1===(j=t)&&(W=!1)}}}),e.utils.initOptions(J),J},e.models.scatterChart=function(){"use strict";var t=e.models.scatter(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),a=e.models.distribution(),o=e.models.distribution(),s=e.models.tooltip(),l={top:30,right:20,bottom:50,left:75},u=null,c=null,d=null,f=null,p=e.utils.defaultColor(),h=t.xScale(),g=t.yScale(),v=!1,m=!1,y=!0,b=!0,x=!0,k=!1,w=e.utils.state(),M=null,A=d3.dispatch("stateChange","changeState","renderEnd"),C=null,S=250,D=!1;t.xScale(h).yScale(g),n.orient("bottom").tickPadding(10),r.orient(k?"right":"left").tickPadding(10),a.axis("x"),o.axis("y"),s.headerFormatter((function(t,e){return n.tickFormat()(t,e)})).valueFormatter((function(t,e){return r.tickFormat()(t,e)}));var E=e.utils.renderWatch(A,S);function F(C){return E.reset(),E.models(t),b&&E.models(n),x&&E.models(r),v&&E.models(a),m&&E.models(o),C.each((function(C){f=d3.select(this),e.utils.initSVG(f);var T,W=e.utils.availableWidth(c,f,l),N=e.utils.availableHeight(d,f,l);if(F.update=function(){0===S?f.call(F):f.transition().duration(S).call(F)},F.container=this,w.setter(function(t){return function(e){void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(C),F.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled}))}}}(C)).update(),w.disabled=C.map((function(t){return!!t.disabled})),!M)for(T in M={},w)w[T]instanceof Array?M[T]=w[T].slice(0):M[T]=w[T];if(!(C&&C.length&&C.filter((function(t){return t.values.length})).length))return e.utils.noData(F,f),E.renderEnd("scatter immediate"),F;f.selectAll(".nv-noData").remove(),h=t.xScale(),g=t.yScale();var O=f.selectAll("g.nv-wrap.nv-scatterChart").data([C]),L=O.enter().append("g").attr("class","nvd3 nv-wrap nv-scatterChart nv-chart-"+t.id()).append("g"),_=O.select("g");if(L.append("rect").attr("class","nvd3 nv-background").style("pointer-events","none"),L.append("g").attr("class","nv-x nv-axis"),L.append("g").attr("class","nv-y nv-axis"),L.append("g").attr("class","nv-scatterWrap"),L.append("g").attr("class","nv-regressionLinesWrap"),L.append("g").attr("class","nv-distWrap"),L.append("g").attr("class","nv-legendWrap"),k&&_.select(".nv-y.nv-axis").attr("transform","translate("+W+",0)"),y){var B=W;i.width(B),O.select(".nv-legendWrap").datum(C).call(i),u||i.height()===l.top||(l.top=i.height(),N=e.utils.availableHeight(d,f,l)),O.select(".nv-legendWrap").attr("transform","translate(0,"+-l.top+")")}else _.select(".nv-legendWrap").selectAll("*").remove();O.attr("transform","translate("+l.left+","+l.top+")"),t.width(W).height(N).color(C.map((function(t,e){return t.color=t.color||p(t,e),t.color})).filter((function(t,e){return!C[e].disabled}))).showLabels(D),O.select(".nv-scatterWrap").datum(C.filter((function(t){return!t.disabled}))).call(t),O.select(".nv-regressionLinesWrap").attr("clip-path","url(#nv-edge-clip-"+t.id()+")");var P=O.select(".nv-regressionLinesWrap").selectAll(".nv-regLines").data((function(t){return t}));P.enter().append("g").attr("class","nv-regLines");var V=P.selectAll(".nv-regLine").data((function(t){return[t]}));V.enter().append("line").attr("class","nv-regLine").style("stroke-opacity",0),V.filter((function(t){return t.intercept&&t.slope})).watchTransition(E,"scatterPlusLineChart: regline").attr("x1",h.range()[0]).attr("x2",h.range()[1]).attr("y1",(function(t,e){return g(h.domain()[0]*t.slope+t.intercept)})).attr("y2",(function(t,e){return g(h.domain()[1]*t.slope+t.intercept)})).style("stroke",(function(t,e,n){return p(t,n)})).style("stroke-opacity",(function(t,e){return t.disabled||void 0===t.slope||void 0===t.intercept?0:1})),b&&(n.scale(h)._ticks(e.utils.calcTicksX(W/100,C)).tickSize(-N,0),_.select(".nv-x.nv-axis").attr("transform","translate(0,"+g.range()[0]+")").call(n)),x&&(r.scale(g)._ticks(e.utils.calcTicksY(N/36,C)).tickSize(-W,0),_.select(".nv-y.nv-axis").call(r)),v&&(a.getData(t.x()).scale(h).width(W).color(C.map((function(t,e){return t.color||p(t,e)})).filter((function(t,e){return!C[e].disabled}))),L.select(".nv-distWrap").append("g").attr("class","nv-distributionX"),_.select(".nv-distributionX").attr("transform","translate(0,"+g.range()[0]+")").datum(C.filter((function(t){return!t.disabled}))).call(a)),m&&(o.getData(t.y()).scale(g).width(N).color(C.map((function(t,e){return t.color||p(t,e)})).filter((function(t,e){return!C[e].disabled}))),L.select(".nv-distWrap").append("g").attr("class","nv-distributionY"),_.select(".nv-distributionY").attr("transform","translate("+(k?W:-o.size())+",0)").datum(C.filter((function(t){return!t.disabled}))).call(o)),i.dispatch.on("stateChange",(function(t){for(var e in t)w[e]=t[e];A.stateChange(w),F.update()})),A.on("changeState",(function(t){void 0!==t.disabled&&(C.forEach((function(e,n){e.disabled=t.disabled[n]})),w.disabled=t.disabled),F.update()})),t.dispatch.on("elementMouseout.tooltip",(function(e){s.hidden(!0),f.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-distx-"+e.pointIndex).attr("y1",0),f.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-disty-"+e.pointIndex).attr("x2",o.size())})),t.dispatch.on("elementMouseover.tooltip",(function(t){f.select(".nv-series-"+t.seriesIndex+" .nv-distx-"+t.pointIndex).attr("y1",t.relativePos[1]-N),f.select(".nv-series-"+t.seriesIndex+" .nv-disty-"+t.pointIndex).attr("x2",t.relativePos[0]+a.size()),s.data(t).hidden(!1)})),h.copy(),g.copy()})),E.renderEnd("scatter with line immediate"),F}return F.dispatch=A,F.scatter=t,F.legend=i,F.xAxis=n,F.yAxis=r,F.distX=a,F.distY=o,F.tooltip=s,F.options=e.utils.optionsFunc.bind(F),F._options=Object.create({},{width:{get:function(){return c},set:function(t){c=t}},height:{get:function(){return d},set:function(t){d=t}},container:{get:function(){return f},set:function(t){f=t}},showDistX:{get:function(){return v},set:function(t){v=t}},showDistY:{get:function(){return m},set:function(t){m=t}},showLegend:{get:function(){return y},set:function(t){y=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return M},set:function(t){M=t}},noData:{get:function(){return C},set:function(t){C=t}},duration:{get:function(){return S},set:function(t){S=t}},showLabels:{get:function(){return D},set:function(t){D=t}},margin:{get:function(){return l},set:function(t){void 0!==t.top&&(l.top=t.top,u=t.top),l.right=void 0!==t.right?t.right:l.right,l.bottom=void 0!==t.bottom?t.bottom:l.bottom,l.left=void 0!==t.left?t.left:l.left}},rightAlignYAxis:{get:function(){return k},set:function(t){k=t,r.orient(t?"right":"left")}},color:{get:function(){return p},set:function(t){p=e.utils.getColor(t),i.color(p),a.color(p),o.color(p)}}}),e.utils.inheritOptions(F,t),e.utils.initOptions(F),F},e.models.sparkline=function(){"use strict";var t,n,r,i,a={top:2,right:0,bottom:2,left:0},o=400,s=32,l=null,u=!0,c=d3.scale.linear(),d=d3.scale.linear(),f=function(t){return t.x},p=function(t){return t.y},h=e.utils.getColor(["#000"]),g=!0,v=!0,m=d3.dispatch("renderEnd"),y=e.utils.renderWatch(m);function b(u){return y.reset(),u.each((function(u){var m=o-a.left-a.right,y=s-a.top-a.bottom;l=d3.select(this),e.utils.initSVG(l),c.domain(t||d3.extent(u,f)).range(r||[0,m]),d.domain(n||d3.extent(u,p)).range(i||[y,0]);var b=l.selectAll("g.nv-wrap.nv-sparkline").data([u]);b.enter().append("g").attr("class","nvd3 nv-wrap nv-sparkline").append("g"),b.select("g"),b.attr("transform","translate("+a.left+","+a.top+")");var x=b.selectAll("path").data((function(t){return[t]}));x.enter().append("path"),x.exit().remove(),x.style("stroke",(function(t,e){return t.color||h(t,e)})).attr("d",d3.svg.line().x((function(t,e){return c(f(t,e))})).y((function(t,e){return d(p(t,e))})));var k=b.selectAll("circle.nv-point").data((function(t){var e=t.map((function(t,e){return p(t,e)}));function n(e){if(-1!=e){var n=t[e];return n.pointIndex=e,n}return null}var r=n(e.lastIndexOf(d.domain()[1])),i=n(e.indexOf(d.domain()[0])),a=n(e.length-1);return[g?i:null,g?r:null,v?a:null].filter((function(t){return null!=t}))}));k.enter().append("circle"),k.exit().remove(),k.attr("cx",(function(t,e){return c(f(t,t.pointIndex))})).attr("cy",(function(t,e){return d(p(t,t.pointIndex))})).attr("r",2).attr("class",(function(t,e){return f(t,t.pointIndex)==c.domain()[1]?"nv-point nv-currentValue":p(t,t.pointIndex)==d.domain()[0]?"nv-point nv-minValue":"nv-point nv-maxValue"}))})),y.renderEnd("sparkline immediate"),b}return b.options=e.utils.optionsFunc.bind(b),b._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return s},set:function(t){s=t}},xDomain:{get:function(){return t},set:function(e){t=e}},yDomain:{get:function(){return n},set:function(t){n=t}},xRange:{get:function(){return r},set:function(t){r=t}},yRange:{get:function(){return i},set:function(t){i=t}},xScale:{get:function(){return c},set:function(t){c=t}},yScale:{get:function(){return d},set:function(t){d=t}},animate:{get:function(){return u},set:function(t){u=t}},showMinMaxPoints:{get:function(){return g},set:function(t){g=t}},showCurrentPoint:{get:function(){return v},set:function(t){v=t}},x:{get:function(){return f},set:function(t){f=d3.functor(t)}},y:{get:function(){return p},set:function(t){p=d3.functor(t)}},margin:{get:function(){return a},set:function(t){a.top=void 0!==t.top?t.top:a.top,a.right=void 0!==t.right?t.right:a.right,a.bottom=void 0!==t.bottom?t.bottom:a.bottom,a.left=void 0!==t.left?t.left:a.left}},color:{get:function(){return h},set:function(t){h=e.utils.getColor(t)}}}),b.dispatch=m,e.utils.initOptions(b),b},e.models.sparklinePlus=function(){"use strict";var t,n,r=e.models.sparkline(),i={top:15,right:100,bottom:10,left:50},a=null,o=null,s=[],l=!1,u=d3.format(",r"),c=d3.format(",.2f"),d=!0,f=!0,p=!1,h=null,g=d3.dispatch("renderEnd"),v=e.utils.renderWatch(g);function m(h){return v.reset(),v.models(r),h.each((function(h){var g=d3.select(this);e.utils.initSVG(g);var v=e.utils.availableWidth(a,g,i),y=e.utils.availableHeight(o,g,i);if(m.update=function(){g.call(m)},m.container=this,!h||!h.length)return e.utils.noData(m,g),m;g.selectAll(".nv-noData").remove();var b=r.y()(h[h.length-1],h.length-1);t=r.xScale(),n=r.yScale();var x=g.selectAll("g.nv-wrap.nv-sparklineplus").data([h]),k=x.enter().append("g").attr("class","nvd3 nv-wrap nv-sparklineplus").append("g"),w=x.select("g");k.append("g").attr("class","nv-sparklineWrap"),k.append("g").attr("class","nv-valueWrap"),k.append("g").attr("class","nv-hoverArea"),x.attr("transform","translate("+i.left+","+i.top+")");var M=w.select(".nv-sparklineWrap");if(r.width(v).height(y),M.call(r),d){var A=w.select(".nv-valueWrap").selectAll(".nv-currentValue").data([b]);A.enter().append("text").attr("class","nv-currentValue").attr("dx",p?-8:8).attr("dy",".9em").style("text-anchor",p?"end":"start"),A.attr("x",v+(p?i.right:0)).attr("y",f?function(t){return n(t)}:0).style("fill",r.color()(h[h.length-1],h.length-1)).text(c(b))}function C(){if(!l){var e=w.selectAll(".nv-hoverValue").data(s),n=e.enter().append("g").attr("class","nv-hoverValue").style("stroke-opacity",0).style("fill-opacity",0);e.exit().transition().duration(250).style("stroke-opacity",0).style("fill-opacity",0).remove(),e.attr("transform",(function(e){return"translate("+t(r.x()(h[e],e))+",0)"})).transition().duration(250).style("stroke-opacity",1).style("fill-opacity",1),s.length&&(n.append("line").attr("x1",0).attr("y1",-i.top).attr("x2",0).attr("y2",y),n.append("text").attr("class","nv-xValue").attr("x",-6).attr("y",-i.top).attr("text-anchor","end").attr("dy",".9em"),w.select(".nv-hoverValue .nv-xValue").text(u(r.x()(h[s[0]],s[0]))),n.append("text").attr("class","nv-yValue").attr("x",6).attr("y",-i.top).attr("text-anchor","start").attr("dy",".9em"),w.select(".nv-hoverValue .nv-yValue").text(c(r.y()(h[s[0]],s[0]))))}}k.select(".nv-hoverArea").append("rect").on("mousemove",(function(){if(!l){var e=d3.mouse(this)[0]-i.left;s=[function(t,e){for(var n=Math.abs(r.x()(t[0],0)-e),i=0,a=0;a<t.length;a++)Math.abs(r.x()(t[a],a)-e)<n&&(n=Math.abs(r.x()(t[a],a)-e),i=a);return i}(h,Math.round(t.invert(e)))],C()}})).on("click",(function(){l=!l})).on("mouseout",(function(){s=[],C()})),w.select(".nv-hoverArea rect").attr("transform",(function(t){return"translate("+-i.left+","+-i.top+")"})).attr("width",v+i.left+i.right).attr("height",y+i.top)})),v.renderEnd("sparklinePlus immediate"),m}return m.dispatch=g,m.sparkline=r,m.options=e.utils.optionsFunc.bind(m),m._options=Object.create({},{width:{get:function(){return a},set:function(t){a=t}},height:{get:function(){return o},set:function(t){o=t}},xTickFormat:{get:function(){return u},set:function(t){u=t}},yTickFormat:{get:function(){return c},set:function(t){c=t}},showLastValue:{get:function(){return d},set:function(t){d=t}},alignValue:{get:function(){return f},set:function(t){f=t}},rightAlignValue:{get:function(){return p},set:function(t){p=t}},noData:{get:function(){return h},set:function(t){h=t}},margin:{get:function(){return i},set:function(t){i.top=void 0!==t.top?t.top:i.top,i.right=void 0!==t.right?t.right:i.right,i.bottom=void 0!==t.bottom?t.bottom:i.bottom,i.left=void 0!==t.left?t.left:i.left}}}),e.utils.inheritOptions(m,r),e.utils.initOptions(m),m},e.models.stackedArea=function(){"use strict";var t,n,r={top:0,right:0,bottom:0,left:0},i=960,a=500,o=e.utils.defaultColor(),s=Math.floor(1e5*Math.random()),l=null,u=function(t){return t.x},c=function(t){return t.y},d=function(t,e){return!isNaN(c(t,e))&&null!==c(t,e)},f="stack",p="zero",h="default",g="linear",v=!1,m=e.models.scatter(),y=250,b=d3.dispatch("areaClick","areaMouseover","areaMouseout","renderEnd","elementClick","elementMouseover","elementMouseout");m.pointSize(2.2).pointDomain([2.2,2.2]);var x=e.utils.renderWatch(b,y);function k(f){return x.reset(),x.models(m),f.each((function(f){var y=i-r.left-r.right,w=a-r.top-r.bottom;l=d3.select(this),e.utils.initSVG(l),t=m.xScale(),n=m.yScale();var M=f;f.forEach((function(t,e){t.seriesIndex=e,t.values=t.values.map((function(t,n){return t.index=n,t.seriesIndex=e,t}))}));var A=f.filter((function(t){return!t.disabled}));f=d3.layout.stack().order(h).offset(p).values((function(t){return t.values})).x(u).y(c).out((function(t,e,n){t.display={y:n,y0:e}}))(A);var C=l.selectAll("g.nv-wrap.nv-stackedarea").data([f]),S=C.enter().append("g").attr("class","nvd3 nv-wrap nv-stackedarea"),D=S.append("defs"),E=S.append("g"),F=C.select("g");E.append("g").attr("class","nv-areaWrap"),E.append("g").attr("class","nv-scatterWrap"),C.attr("transform","translate("+r.left+","+r.top+")"),0==m.forceY().length&&m.forceY().push(0),m.width(y).height(w).x(u).y((function(t){if(void 0!==t.display)return t.display.y+t.display.y0})).color(f.map((function(t,e){return t.color=t.color||o(t,t.seriesIndex),t.color}))),F.select(".nv-scatterWrap").datum(f).call(m),D.append("clipPath").attr("id","nv-edge-clip-"+s).append("rect"),C.select("#nv-edge-clip-"+s+" rect").attr("width",y).attr("height",w),F.attr("clip-path",v?"url(#nv-edge-clip-"+s+")":"");var T=d3.svg.area().defined(d).x((function(e,n){return t(u(e,n))})).y0((function(t){return n(t.display.y0)})).y1((function(t){return n(t.display.y+t.display.y0)})).interpolate(g),W=d3.svg.area().defined(d).x((function(e,n){return t(u(e,n))})).y0((function(t){return n(t.display.y0)})).y1((function(t){return n(t.display.y0)})),N=F.select(".nv-areaWrap").selectAll("path.nv-area").data((function(t){return t}));N.enter().append("path").attr("class",(function(t,e){return"nv-area nv-area-"+e})).attr("d",(function(t,e){return W(t.values,t.seriesIndex)})).on("mouseover",(function(t,e){d3.select(this).classed("hover",!0),b.areaMouseover({point:t,series:t.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:t.seriesIndex})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1),b.areaMouseout({point:t,series:t.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:t.seriesIndex})})).on("click",(function(t,e){d3.select(this).classed("hover",!1),b.areaClick({point:t,series:t.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:t.seriesIndex})})),N.exit().remove(),N.style("fill",(function(t,e){return t.color||o(t,t.seriesIndex)})).style("stroke",(function(t,e){return t.color||o(t,t.seriesIndex)})),N.watchTransition(x,"stackedArea path").attr("d",(function(t,e){return T(t.values,e)})),m.dispatch.on("elementMouseover.area",(function(t){F.select(".nv-chart-"+s+" .nv-area-"+t.seriesIndex).classed("hover",!0)})),m.dispatch.on("elementMouseout.area",(function(t){F.select(".nv-chart-"+s+" .nv-area-"+t.seriesIndex).classed("hover",!1)})),k.d3_stackedOffset_stackPercent=function(t){var e,n,r,i=t.length,a=t[0].length,o=[];for(n=0;n<a;++n){for(e=0,r=0;e<M.length;e++)r+=c(M[e].values[n]);if(r)for(e=0;e<i;e++)t[e][n][1]/=r;else for(e=0;e<i;e++)t[e][n][1]=0}for(n=0;n<a;++n)o[n]=0;return o}})),x.renderEnd("stackedArea immediate"),k}return k.dispatch=b,k.scatter=m,m.dispatch.on("elementClick",(function(){b.elementClick.apply(this,arguments)})),m.dispatch.on("elementMouseover",(function(){b.elementMouseover.apply(this,arguments)})),m.dispatch.on("elementMouseout",(function(){b.elementMouseout.apply(this,arguments)})),k.interpolate=function(t){return arguments.length?(g=t,k):g},k.duration=function(t){return arguments.length?(y=t,x.reset(y),m.duration(y),k):y},k.dispatch=b,k.scatter=m,k.options=e.utils.optionsFunc.bind(k),k._options=Object.create({},{width:{get:function(){return i},set:function(t){i=t}},height:{get:function(){return a},set:function(t){a=t}},defined:{get:function(){return d},set:function(t){d=t}},clipEdge:{get:function(){return v},set:function(t){v=t}},offset:{get:function(){return p},set:function(t){p=t}},order:{get:function(){return h},set:function(t){h=t}},interpolate:{get:function(){return g},set:function(t){g=t}},x:{get:function(){return u},set:function(t){u=d3.functor(t)}},y:{get:function(){return c},set:function(t){c=d3.functor(t)}},margin:{get:function(){return r},set:function(t){r.top=void 0!==t.top?t.top:r.top,r.right=void 0!==t.right?t.right:r.right,r.bottom=void 0!==t.bottom?t.bottom:r.bottom,r.left=void 0!==t.left?t.left:r.left}},color:{get:function(){return o},set:function(t){o=e.utils.getColor(t)}},style:{get:function(){return f},set:function(t){switch(f=t){case"stack":k.offset("zero"),k.order("default");break;case"stream":k.offset("wiggle"),k.order("inside-out");break;case"stream-center":k.offset("silhouette"),k.order("inside-out");break;case"expand":k.offset("expand"),k.order("default");break;case"stack_percent":k.offset(k.d3_stackedOffset_stackPercent),k.order("default")}}},duration:{get:function(){return y},set:function(t){y=t,x.reset(y),m.duration(y)}}}),e.utils.inheritOptions(k,m),e.utils.initOptions(k),k},e.models.stackedAreaChart=function(){"use strict";var t,n,r=e.models.stackedArea(),i=e.models.axis(),a=e.models.axis(),o=e.models.legend(),s=e.models.legend(),l=e.interactiveGuideline(),u=e.models.tooltip(),c=e.models.focus(e.models.stackedArea()),d={top:10,right:25,bottom:50,left:60},f=null,p=null,h=null,g=e.utils.defaultColor(),v=!0,m=!0,y="top",b=!0,x=!0,k=!1,w=!1,M=!1,A=!0,C="TOTAL",S=e.utils.state(),D=null,E=null,F=d3.dispatch("stateChange","changeState","renderEnd"),T=250,W=["Stacked","Stream","Expanded"],N={},O=250;S.style=r.style(),i.orient("bottom").tickPadding(7),a.orient(k?"right":"left"),u.headerFormatter((function(t,e){return i.tickFormat()(t,e)})).valueFormatter((function(t,e){return a.tickFormat()(t,e)})),l.tooltip.headerFormatter((function(t,e){return i.tickFormat()(t,e)})).valueFormatter((function(t,e){return null==t?"N/A":a.tickFormat()(t,e)}));var L=null,_=null;s.updateState(!1);var B=e.utils.renderWatch(F),P=(r.style(),d3.format("%"));function V(u){return B.reset(),B.models(r),b&&B.models(i),x&&B.models(a),u.each((function(u){var E=d3.select(this);e.utils.initSVG(E);var B,I=e.utils.availableWidth(p,E,d),H=e.utils.availableHeight(h,E,d)-(w?c.height():0);if(V.update=function(){E.transition().duration(O).call(V)},V.container=this,S.setter(function(t){return function(e){void 0!==e.style&&e.style,void 0!==e.active&&t.forEach((function(t,n){t.disabled=!e.active[n]}))}}(u),V.update).getter(function(t){return function(){return{active:t.map((function(t){return!t.disabled})),style:r.style()}}}(u)).update(),S.disabled=u.map((function(t){return!!t.disabled})),!D)for(B in D={},S)S[B]instanceof Array?D[B]=S[B].slice(0):D[B]=S[B];if(!(u&&u.length&&u.filter((function(t){return t.values.length})).length))return e.utils.noData(V,E),V;E.selectAll(".nv-noData").remove(),t=r.xScale(),n=r.yScale();var R=E.selectAll("g.nv-wrap.nv-stackedAreaChart").data([u]),j=R.enter().append("g").attr("class","nvd3 nv-wrap nv-stackedAreaChart").append("g"),z=R.select("g");j.append("g").attr("class","nv-legendWrap"),j.append("g").attr("class","nv-controlsWrap");var q=j.append("g").attr("class","nv-focus");if(q.append("g").attr("class","nv-background").append("rect"),q.append("g").attr("class","nv-x nv-axis"),q.append("g").attr("class","nv-y nv-axis"),q.append("g").attr("class","nv-stackedWrap"),q.append("g").attr("class","nv-interactive"),j.append("g").attr("class","nv-focusWrap"),m){var G=v&&"top"===y?I-T:I;if(o.width(G),z.select(".nv-legendWrap").datum(u).call(o),"bottom"===y){var Y=10+(b?12:0);d.bottom=Math.max(o.height()+Y,d.bottom);var X=(H=e.utils.availableHeight(h,E,d)-(w?c.height():0))+Y;z.select(".nv-legendWrap").attr("transform","translate(0,"+X+")")}else"top"===y&&(f||d.top==o.height()||(d.top=o.height(),H=e.utils.availableHeight(h,E,d)-(w?c.height():0)),z.select(".nv-legendWrap").attr("transform","translate("+(I-G)+","+-d.top+")"))}else z.select(".nv-legendWrap").selectAll("*").remove();if(v){var $=[{key:N.stacked||"Stacked",metaKey:"Stacked",disabled:"stack"!=r.style(),style:"stack"},{key:N.stream||"Stream",metaKey:"Stream",disabled:"stream"!=r.style(),style:"stream"},{key:N.expanded||"Expanded",metaKey:"Expanded",disabled:"expand"!=r.style(),style:"expand"},{key:N.stack_percent||"Stack %",metaKey:"Stack_Percent",disabled:"stack_percent"!=r.style(),style:"stack_percent"}];T=W.length/3*260,$=$.filter((function(t){return-1!==W.indexOf(t.metaKey)})),s.width(T).color(["#444","#444","#444"]),z.select(".nv-controlsWrap").datum($).call(s);var Q=Math.max(s.height(),m&&"top"===y?o.height():0);d.top!=Q&&(d.top=Q,H=e.utils.availableHeight(h,E,d)-(w?c.height():0)),z.select(".nv-controlsWrap").attr("transform","translate(0,"+-d.top+")")}else z.select(".nv-controlsWrap").selectAll("*").remove();R.attr("transform","translate("+d.left+","+d.top+")"),k&&z.select(".nv-y.nv-axis").attr("transform","translate("+I+",0)"),M&&(l.width(I).height(H).margin({left:d.left,top:d.top}).svgContainer(E).xScale(t),R.select(".nv-interactive").call(l)),z.select(".nv-focus .nv-background rect").attr("width",I).attr("height",H),r.width(I).height(H).color(u.map((function(t,e){return t.color||g(t,e)})).filter((function(t,e){return!u[e].disabled})));var Z,U=z.select(".nv-focus .nv-stackedWrap").datum(u.filter((function(t){return!t.disabled})));function K(){b&&z.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+H+")").transition().duration(O).call(i)}function J(){if(x){if("expand"===r.style()||"stack_percent"===r.style()){var t=a.tickFormat();L&&t===P||(L=t),a.tickFormat(P)}else L&&(a.tickFormat(L),L=null);z.select(".nv-focus .nv-y.nv-axis").transition().duration(0).call(a)}}if(b&&i.scale(t)._ticks(e.utils.calcTicksX(I/100,u)).tickSize(-H,0),x&&(Z="wiggle"===r.offset()?0:e.utils.calcTicksY(H/36,u),a.scale(n)._ticks(Z).tickSize(-I,0)),w){c.width(I),z.select(".nv-focusWrap").attr("transform","translate(0,"+(H+d.bottom+c.margin().top)+")").datum(u.filter((function(t){return!t.disabled}))).call(c);var tt=c.brush.empty()?c.xDomain():c.brush.extent();null!==tt&&et(tt)}else U.transition().call(r),K(),J();function et(t){z.select(".nv-focus .nv-stackedWrap").datum(u.filter((function(t){return!t.disabled})).map((function(e,n){return{key:e.key,area:e.area,classed:e.classed,values:e.values.filter((function(e,n){return r.x()(e,n)>=t[0]&&r.x()(e,n)<=t[1]})),disableTooltip:e.disableTooltip}}))).transition().duration(O).call(r),K(),J()}r.dispatch.on("areaClick.toggle",(function(t){1===u.filter((function(t){return!t.disabled})).length?u.forEach((function(t){t.disabled=!1})):u.forEach((function(e,n){e.disabled=n!=t.seriesIndex})),S.disabled=u.map((function(t){return!!t.disabled})),F.stateChange(S),V.update()})),o.dispatch.on("stateChange",(function(t){for(var e in t)S[e]=t[e];F.stateChange(S),V.update()})),s.dispatch.on("legendClick",(function(t,e){t.disabled&&($=$.map((function(t){return t.disabled=!0,t})),t.disabled=!1,r.style(t.style),S.style=r.style(),F.stateChange(S),V.update())})),l.dispatch.on("elementMousemove",(function(t){r.clearHighlights();var n,i,a,o=[],s=0,c=!0,d=!1;if(u.filter((function(t,e){return t.seriesIndex=e,!t.disabled})).forEach((function(l,f){i=e.interactiveBisect(l.values,t.pointXValue,V.x());var p=l.values[i],h=V.y()(p,i);if(null!=h&&h>0&&(r.highlightPoint(f,i,!0),d=!0),f!==u.length-1||d||r.highlightPoint(f,i,!0),void 0!==p){void 0===n&&(n=p),void 0===a&&(a=V.xScale()(V.x()(p,i)));var v="expand"==r.style()?p.display.y:V.y()(p,i);o.push({key:l.key,value:v,color:g(l,l.seriesIndex),point:p}),A&&"expand"!=r.style()&&null!=v&&(s+=v,c=!1)}})),o.reverse(),o.length>2){var f=V.yScale().invert(t.mouseY),p=null;o.forEach((function(t,e){f=Math.abs(f);var n=Math.abs(t.point.display.y0),r=Math.abs(t.point.display.y);f>=n&&f<=r+n&&(p=e)})),null!=p&&(o[p].highlight=!0)}A&&"expand"!=r.style()&&o.length>=2&&!c&&o.push({key:C,value:s,total:!0});var h=V.x()(n,i),v=l.tooltip.valueFormatter();"expand"===r.style()||"stack_percent"===r.style()?(_||(_=v),v=d3.format(".1%")):_&&(v=_,_=null),l.tooltip.valueFormatter(v).data({value:h,series:o})(),l.renderGuideLine(a)})),l.dispatch.on("elementMouseout",(function(t){r.clearHighlights()})),c.dispatch.on("onBrush",(function(t){et(t)})),F.on("changeState",(function(t){void 0!==t.disabled&&u.length===t.disabled.length&&(u.forEach((function(e,n){e.disabled=t.disabled[n]})),S.disabled=t.disabled),void 0!==t.style&&(r.style(t.style),t.style),V.update()}))})),B.renderEnd("stacked Area chart immediate"),V}return r.dispatch.on("elementMouseover.tooltip",(function(t){t.point.x=r.x()(t.point),t.point.y=r.y()(t.point),u.data(t).hidden(!1)})),r.dispatch.on("elementMouseout.tooltip",(function(t){u.hidden(!0)})),V.dispatch=F,V.stacked=r,V.legend=o,V.controls=s,V.xAxis=i,V.x2Axis=c.xAxis,V.yAxis=a,V.y2Axis=c.yAxis,V.interactiveLayer=l,V.tooltip=u,V.focus=c,V.dispatch=F,V.options=e.utils.optionsFunc.bind(V),V._options=Object.create({},{width:{get:function(){return p},set:function(t){p=t}},height:{get:function(){return h},set:function(t){h=t}},showLegend:{get:function(){return m},set:function(t){m=t}},legendPosition:{get:function(){return y},set:function(t){y=t}},showXAxis:{get:function(){return b},set:function(t){b=t}},showYAxis:{get:function(){return x},set:function(t){x=t}},defaultState:{get:function(){return D},set:function(t){D=t}},noData:{get:function(){return E},set:function(t){E=t}},showControls:{get:function(){return v},set:function(t){v=t}},controlLabels:{get:function(){return N},set:function(t){N=t}},controlOptions:{get:function(){return W},set:function(t){W=t}},showTotalInTooltip:{get:function(){return A},set:function(t){A=t}},totalLabel:{get:function(){return C},set:function(t){C=t}},focusEnable:{get:function(){return w},set:function(t){w=t}},focusHeight:{get:function(){return c.height()},set:function(t){c.height(t)}},brushExtent:{get:function(){return c.brushExtent()},set:function(t){c.brushExtent(t)}},margin:{get:function(){return d},set:function(t){void 0!==t.top&&(d.top=t.top,f=t.top),d.right=void 0!==t.right?t.right:d.right,d.bottom=void 0!==t.bottom?t.bottom:d.bottom,d.left=void 0!==t.left?t.left:d.left}},focusMargin:{get:function(){return c.margin},set:function(t){c.margin.top=void 0!==t.top?t.top:c.margin.top,c.margin.right=void 0!==t.right?t.right:c.margin.right,c.margin.bottom=void 0!==t.bottom?t.bottom:c.margin.bottom,c.margin.left=void 0!==t.left?t.left:c.margin.left}},duration:{get:function(){return O},set:function(t){O=t,B.reset(O),r.duration(O),i.duration(O),a.duration(O)}},color:{get:function(){return g},set:function(t){g=e.utils.getColor(t),o.color(g),r.color(g),c.color(g)}},x:{get:function(){return r.x()},set:function(t){r.x(t),c.x(t)}},y:{get:function(){return r.y()},set:function(t){r.y(t),c.y(t)}},rightAlignYAxis:{get:function(){return k},set:function(t){k=t,a.orient(k?"right":"left")}},useInteractiveGuideline:{get:function(){return M},set:function(t){M=!!t,V.interactive(!t),V.useVoronoi(!t),r.scatter.interactive(!t)}}}),e.utils.inheritOptions(V,r),e.utils.initOptions(V),V},e.models.stackedAreaWithFocusChart=function(){return e.models.stackedAreaChart().margin({bottom:30}).focusEnable(!0)},e.models.sunburst=function(){"use strict";var t,n,r,i,a={top:0,right:0,bottom:0,left:0},o=600,s=600,l="count",u={count:function(t){return 1},value:function(t){return t.value||t.size},size:function(t){return t.value||t.size}},c=Math.floor(1e4*Math.random()),d=null,f=e.utils.defaultColor(),p=!1,h=function(t){return"count"===l?t.name+" #"+t.value:t.name+" "+(t.value||t.size)},g=.02,v=function(t,e){return t.name>e.name},m=function(t,e){return void 0!==t.parent?t.name+"-"+t.parent.name+"-"+e:t.name},y=!0,b=500,x=d3.dispatch("chartClick","elementClick","elementDblClick","elementMousemove","elementMouseover","elementMouseout","renderEnd"),k=d3.scale.linear().range([0,2*Math.PI]),w=d3.scale.sqrt(),M=d3.layout.partition().sort(v),A={},C=d3.svg.arc().startAngle((function(t){return Math.max(0,Math.min(2*Math.PI,k(t.x)))})).endAngle((function(t){return Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx)))})).innerRadius((function(t){return Math.max(0,w(t.y))})).outerRadius((function(t){return Math.max(0,w(t.y+t.dy))}));function S(t){return D(t)>90?180:0}function D(t){return(Math.max(0,Math.min(2*Math.PI,k(t.x)))+Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx))))/2*(180/Math.PI)-90}function E(t){var e=Math.max(0,Math.min(2*Math.PI,k(t.x)));return(Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx)))-e)/(2*Math.PI)}function F(t){var e=Math.max(0,Math.min(2*Math.PI,k(t.x)));return Math.max(0,Math.min(2*Math.PI,k(t.x+t.dx)))-e>g}function T(e,n){var r=d3.interpolate(k.domain(),[t.x,t.x+t.dx]),a=d3.interpolate(w.domain(),[t.y,1]),o=d3.interpolate(w.range(),[t.y?20:0,i]);return 0===n?function(){return C(e)}:function(t){return k.domain(r(t)),w.domain(a(t)).range(o(t)),C(e)}}function W(t){var e=d3.interpolate({x:t.x0,dx:t.dx0,y:t.y0,dy:t.dy0},t);return function(n){var r=e(n);return t.x0=r.x,t.dx0=r.dx,t.y0=r.y,t.dy0=r.dy,C(r)}}function N(t){t.forEach((function(t){var e=m(t),n=A[e];n?(t.dx0=n.dx,t.x0=n.x,t.dy0=n.dy,t.y0=n.y):(t.dx0=t.dx,t.x0=t.x,t.dy0=t.dy,t.y0=t.y),function(t){var e=m(t);A[e]||(A[e]={});var n=A[e];n.dx=t.dx,n.x=t.x,n.dy=t.dy,n.y=t.y}(t)}))}function O(e){var n=d.selectAll("text"),r=d.selectAll("path");n.transition().attr("opacity",0),t=e,r.transition().duration(b).attrTween("d",T).each("end",(function(t){t.x>=e.x&&t.x<e.x+e.dx&&t.depth>=e.depth&&d3.select(this.parentNode).select("text").transition().duration(b).text((function(t){return h(t)})).attr("opacity",(function(t){return F(t)?1:0})).attr("transform",(function(){var n=this.getBBox().width;if(0===t.depth)return"translate("+n/2*-1+",0)";if(t.depth===e.depth)return"translate("+(w(t.y)+5)+",0)";var r=D(t),i=S(t);return 0===i?"rotate("+r+")translate("+(w(t.y)+5)+",0)":"rotate("+r+")translate("+(w(t.y)+n+5)+",0)rotate("+i+")"}))}))}var L=e.utils.renderWatch(x);function _(t){return L.reset(),t.each((function(t){d=d3.select(this),n=e.utils.availableWidth(o,d,a),r=e.utils.availableHeight(s,d,a),i=Math.min(n,r)/2,w.range([0,i]);var g=d.select("g.nvd3.nv-wrap.nv-sunburst");g[0][0]?g.attr("transform","translate("+(n/2+a.left+a.right)+","+(r/2+a.top+a.bottom)+")"):g=d.append("g").attr("class","nvd3 nv-wrap nv-sunburst nv-chart-"+c).attr("transform","translate("+(n/2+a.left+a.right)+","+(r/2+a.top+a.bottom)+")"),d.on("click",(function(t,e){x.chartClick({data:t,index:e,pos:d3.event,id:c})})),M.value(u[l]||u.count);var v=M.nodes(t[0]).reverse();N(v);var k=g.selectAll(".arc-container").data(v,m);k.enter().append("g").attr("class","arc-container").append("path").attr("d",C).style("fill",(function(t){return t.color?t.color:f(y?(t.children?t:t.parent).name:t.name)})).style("stroke","#FFF").on("click",(function(t,e){O(t),x.elementClick({data:t,index:e})})).on("mouseover",(function(t,e){d3.select(this).classed("hover",!0).style("opacity",.8),x.elementMouseover({data:t,color:d3.select(this).style("fill"),percent:E(t)})})).on("mouseout",(function(t,e){d3.select(this).classed("hover",!1).style("opacity",1),x.elementMouseout({data:t})})).on("mousemove",(function(t,e){x.elementMousemove({data:t})})),k.each((function(t){d3.select(this).select("path").transition().duration(b).attrTween("d",W)})),p&&(k.selectAll("text").remove(),k.append("text").text((function(t){return h(t)})).transition().duration(b).attr("opacity",(function(t){return F(t)?1:0})).attr("transform",(function(t){var e=this.getBBox().width;if(0===t.depth)return"rotate(0)translate("+e/2*-1+",0)";var n=D(t),r=S(t);return 0===r?"rotate("+n+")translate("+(w(t.y)+5)+",0)":"rotate("+n+")translate("+(w(t.y)+e+5)+",0)rotate("+r+")"}))),O(v[v.length-1]),k.exit().transition().duration(b).attr("opacity",0).each("end",(function(t){var e=m(t);A[e]=void 0})).remove()})),L.renderEnd("sunburst immediate"),_}return _.dispatch=x,_.options=e.utils.optionsFunc.bind(_),_._options=Object.create({},{width:{get:function(){return o},set:function(t){o=t}},height:{get:function(){return s},set:function(t){s=t}},mode:{get:function(){return l},set:function(t){l=t}},id:{get:function(){return c},set:function(t){c=t}},duration:{get:function(){return b},set:function(t){b=t}},groupColorByParent:{get:function(){return y},set:function(t){y=!!t}},showLabels:{get:function(){return p},set:function(t){p=!!t}},labelFormat:{get:function(){return h},set:function(t){h=t}},labelThreshold:{get:function(){return g},set:function(t){g=t}},sort:{get:function(){return v},set:function(t){v=t}},key:{get:function(){return m},set:function(t){m=t}},margin:{get:function(){return a},set:function(t){a.top=null!=t.top?t.top:a.top,a.right=null!=t.right?t.right:a.right,a.bottom=null!=t.bottom?t.bottom:a.bottom,a.left=null!=t.left?t.left:a.left}},color:{get:function(){return f},set:function(t){f=e.utils.getColor(t)}}}),e.utils.initOptions(_),_},e.models.sunburstChart=function(){"use strict";var t=e.models.sunburst(),n=e.models.tooltip(),r={top:30,right:20,bottom:20,left:20},i=e.utils.defaultColor(),a=!1,o=(Math.round(1e5*Math.random()),null),s=null,l=250,u=d3.dispatch("stateChange","changeState","renderEnd"),c=e.utils.renderWatch(u);function d(n){return c.reset(),c.models(t),n.each((function(n){var i=d3.select(this);e.utils.initSVG(i);var a=e.utils.availableWidth(null,i,r),o=e.utils.availableHeight(null,i,r);if(d.update=function(){0===l?i.call(d):i.transition().duration(l).call(d)},d.container=i,!n||!n.length)return e.utils.noData(d,i),d;i.selectAll(".nv-noData").remove(),t.width(a).height(o).margin(r),i.call(t)})),c.renderEnd("sunburstChart immediate"),d}return n.duration(0).headerEnabled(!1).valueFormatter((function(t){return t})),t.dispatch.on("elementMouseover.tooltip",(function(t){t.series={key:t.data.name,value:t.data.value||t.data.size,color:t.color,percent:t.percent},a||(delete t.percent,delete t.series.percent),n.data(t).hidden(!1)})),t.dispatch.on("elementMouseout.tooltip",(function(t){n.hidden(!0)})),t.dispatch.on("elementMousemove.tooltip",(function(t){n()})),d.dispatch=u,d.sunburst=t,d.tooltip=n,d.options=e.utils.optionsFunc.bind(d),d._options=Object.create({},{noData:{get:function(){return s},set:function(t){s=t}},defaultState:{get:function(){return o},set:function(t){o=t}},showTooltipPercent:{get:function(){return a},set:function(t){a=t}},color:{get:function(){return i},set:function(e){i=e,t.color(i)}},duration:{get:function(){return l},set:function(e){l=e,c.reset(l),t.duration(l)}},margin:{get:function(){return r},set:function(e){r.top=void 0!==e.top?e.top:r.top,r.right=void 0!==e.right?e.right:r.right,r.bottom=void 0!==e.bottom?e.bottom:r.bottom,r.left=void 0!==e.left?e.left:r.left,t.margin(r)}}}),e.utils.inheritOptions(d,t),e.utils.initOptions(d),d},e.version="1.8.6",d3}.apply(e,r))||(t.exports=i)},38:function(t,e,n){"use strict";n.r(e),n.d(e,"ChartData",(function(){return r}));class r{static get DEFAULT_MULTIPLIER(){return 1.2}static get MAXIMUM_DIVISIONS(){return 10}static get COLORS(){return["#003663","#E84E0F","#02A99A","#999999"]}constructor(t,e,n,r){this.filter=r,this.initialChartSetup(t,e,n)}initialChartSetup(t,e,n,r=!0){this.disableRangeUpdate=e,this.disableOldDataRemoval=n,this.translateService=t,this.range=150,this.chartOptions=this.getDefaultChartOptions(t),this.chartSetup(this.chartOptions),r&&(this.dataHolder=this.createDataHolder(),this.firstLoad=!0)}refresh(){this.initialChartSetup(this.translateService,this.disableRangeUpdate,this.disableOldDataRemoval,!1),this.translateLabels(this.dataHolder),this.updateRange(this.dataHolder)}translateLabels(t){this.createDataHolder().forEach((e,n)=>{t[n].originalKey?t[n].originalKey=e.key:t[n].key=e.key})}setSubTitle(t){this.chartOptions.title.enable=!0;const e=t.map(t=>{if(Array.isArray(t.value)&&!t.value.length)return;const e=Array.isArray(t.value)?t.value.join("/"):t.value;return t.label+(void 0!==e?`<span class="data-value">${e}</span>`:"")});this.chartOptions.title.html=e.map(t=>`<span class="info-element">${t}</span>`)}chartSetup(t){}createDataHolder(){throw new Error("Must implement data holder creation")}addData(t,e){this.removeOldData(this.dataHolder,this.range),this.addNewData(this.dataHolder,t,e,this.isFirstLoad()),this.updateRange(this.dataHolder),this.firstLoad&&(this.firstLoad=!1)}removeOldData(t,e){this.disableOldDataRemoval||t[0].values.length>e&&t.forEach(t=>t.values.shift())}addNewData(t,e,n,r){}updateRange(t,e){if(this.disableRangeUpdate)return;const[n]=r.calculateMaxChartValueAndDivisions(t,e);this.chartOptions.chart.yDomain=[0,n]}isFirstLoad(){return this.firstLoad}getDefaultChartOptions(t){return{chart:{interpolate:"monotone",type:"lineChart",height:500,margin:{left:80,right:80},x:function(t){return t[0]},y:function(t){return t[1]},clipEdge:!0,noData:t.instant("resource.no_data"),showControls:!1,duration:0,rightAlignYAxis:!1,useInteractiveGuideline:!0,xAxis:{showMaxMin:!1,tickFormat:function(t){return d3.time.format("%X")(new Date(t))}},yAxis:{showMaxMin:!1,tickFormat:function(t){return t}},legend:{maxKeyLength:100},color:r.COLORS},title:{enable:!0,className:"chart-additional-info",html:" "}}}static getMaxValueFromDataHolder(t){return Math.max(...t.filter(t=>!t.disabled).flatMap(t=>r.getMaxValueForDataSeries(t)))}static getMaxValueForDataSeries(t){return Math.max(...t.values.map(t=>t[1]))}static calculateMaxChartValueAndDivisions(t,e){let n;n=Array.isArray(t)?r.getMaxValueFromDataHolder(t):r.getMaxValueForDataSeries(t);const i=Math.round(n*(e||r.DEFAULT_MULTIPLIER))||1;return[i,Math.ceil(i/r.MAXIMUM_DIVISIONS)]}static getIntegerRangeForValues(t,e){const[n,i]=r.calculateMaxChartValueAndDivisions(t,e);return d3.range(0,n+1,i)}static formatBytesValue(t,e){let n=t;e&&(n=Math.max(...e.filter(t=>!t.disabled).flatMap(t=>t.values).flatMap(t=>t[1])));const r=Math.floor(Math.log(n)/Math.log(1024));return`${(parseFloat(t)/Math.pow(1024,r)).toFixed(2)} ${["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][r]}`}formatNumber(t){if(t&&this.filter)return this.filter("currency")(t,"",0)}}},39:function(t,e){function n(t,e){return{showToastMessageWithDelay:function(n){return new Promise(r=>{t.success(e.instant(n)),setTimeout(r,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",n),n.$inject=["toastr","$translate"]},40:function(t,e,n){"use strict";n.r(e),n.d(e,"HeapMemoryChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t){super(t,!1,!1)}createDataHolder(){return[{key:this.translateService.instant("resource.memory.committed"),values:[]},{key:this.translateService.instant("resource.memory.used"),area:"true",values:[]}]}addNewData(t,e,n){const[r,i]=t,a=this.parseData(n);r.values.push([e,a.committed]),i.values.push([e,a.used]),this.setMaxHeapSize(a.max)}parseData(t){return t.heapMemoryUsage}setMaxHeapSize(t){if(t>0){const e=[{label:this.translateService.instant("resource.memory.heap.max"),value:i.formatBytesValue(t)}];this.setSubTitle(e)}}updateRange(t){this.setScale(t),super.updateRange(t)}setScale(t){this.chartOptions.chart.yAxis.tickFormat=e=>i.formatBytesValue(e,t)}}},42:function(t,e){angular.module("graphdb.framework.rest.cluster.service",[]).factory("ClusterRestService",n),n.$inject=["$http"];function n(t){return{getClusterConfig:function(){return t.get("rest/cluster/config")},createCluster:function(e){return t.post("rest/cluster/config",e)},updateCluster:function(e){e.nodes&&delete e.nodes;return t.patch("rest/cluster/config",e)},deleteCluster:function(e){const n=$.param({force:e});return t.delete("rest/cluster/config?"+n)},addNodesToCluster:function(e){return t.post("rest/cluster/config/node",{nodes:e})},removeNodesFromCluster:function(e){return t.delete("rest/cluster/config/node",{data:{nodes:e},headers:{"Content-Type":"application/json"}})},getClusterStatus:function(){return t.get("rest/cluster/group/status")},getNodeStatus:function(){return t.get("rest/cluster/node/status")}}}},45:function(t,e,n){"use strict";n.r(e);n(5);function r(t,e,n,r){return{restrict:"AE",template:'<a class="nav-link" role="tab" data-toggle="tab" blur="submit" editable-text="tab.name" e-form="editCurrentlySelectedOnly" ng-click="selectThisTab($event)" ng-dblclick="editCurrentTab()" ><span ng-class="{\'text-muted\': !tab.name}">{{ tab.name || (\'sparql.tab.directive.unnamed.tab.title\' | translate)}}</span><button type="button" ng-click="deleteTab($event)" class="btn btn-link btn-sm secondary delete-sparql-tab-btn" title="Delete tab"><i class="icon-close"></i></button></a>',replace:!0,controller:["$scope","$element","$rootScope","ModalService","toastr","$translate",function(t,r,i,a,o,s){function l(t){return $(t).attr("data-id")}function u(t){$('a[data-id = "'+t+'"]').tab("show")}t.state={},$(r).on("shown.bs.tab",(function(t){i.$broadcast("tabAction",t)})),t.deleteTab=function(c){if(c.preventDefault(),c.stopPropagation(),t.tabs.length<2)return void o.warning(s.instant("sparql.tab.directive.close.last.warning"));c.shiftKey?(t.state.selectedTabId=l(r),a.openSimpleModal({title:s.instant("common.confirm"),message:s.instant("sparql.tab.directive.delete.all.tabs.warning"),warning:!0}).result.then((function(){var r;r=t.state.selectedTabId,t.tabs=t.tabs.filter((function(t){if(t.id===r)return t})),u(t.tabs[0].id),e.set(n.TABS_STATE,t.tabs),i.$broadcast("deleteAllexeptSelected",t.tabs)}))):(t.state.idForDelete=l(r),a.openSimpleModal({title:s.instant("common.confirm"),message:s.instant("sparql.tab.directive.close.tab.warning"),warning:!0}).result.then((function(){!function(e){if(angular.isUndefined(e))throw"Delete by id was called with undefined id";const n=function(e){for(let n=0;n<t.tabs.length;n++){if(t.tabs[n].id===e)return n}}(e);t.tabs.splice(n,1),e===t.currentQuery.id&&t.tabs.length>0&&u(n>0?t.tabs[n-1].id:t.tabs[0].id)}(t.state.idForDelete)})));angular.element(document).find(".CodeMirror textarea:first-child").focus()},t.editCurrentTab=function(){if(l(r)!==t.currentQuery.id)return;t.editCurrentlySelectedOnly.$show();const e=$(".editable-buttons");e.children(".btn.btn-primary").addClass("btn-sm"),e.children(".btn.btn-default").addClass("btn-sm"),$(".editable-controls .editable-input").addClass("form-control-sm").on("change",(function(e){t.currentQuery.name=e.currentTarget.$$currentValue})),$(".editable-buttons .glyphicon.glyphicon-ok").removeClass("glyphicon glyphicon-ok").addClass("fa fa-check"),$(".editable-buttons .glyphicon.glyphicon-remove").removeClass("glyphicon glyphicon-remove").addClass("fa fa-close")},t.selectThisTab=function(e){e.preventDefault(),e.stopPropagation(),t.isTabChangeOk(!1)&&$(r).tab("show")}}]}}angular.module("graphdb.framework.core.directives.queryeditor.sparqltab",["graphdb.framework.core","graphdb.framework.utils.localstorageadapter"]).directive("sparqlTab",r),r.$inject=["$rootScope","LocalStorageAdapter","LSKeys","ModalService"]},46:function(t,e,n){"use strict";n.r(e),n.d(e,"FileDescriptorsChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,!1,!1,e)}chartSetup(t){t.chart.yAxis.tickFormat=t=>this.formatNumber(t),t.chart.color=[t.chart.color[1]]}createDataHolder(){return[{key:this.translateService.instant("resource.system.file_descriptors.open"),area:"true",values:[]}]}addNewData(t,e,n){if(!n.openFileDescriptors){const t=[{label:this.translateService.instant("resource.system.file_descriptors.only_unix")}];return void this.setSubTitle(t)}t[0].values.push([e,n.openFileDescriptors]);const r=[{label:this.translateService.instant("resource.system.file_descriptors.max"),value:this.formatNumber(n.maxFileDescriptors)}];this.setSubTitle(r)}updateRange(t){super.updateRange(t,2)}}},47:function(t,e,n){"use strict";n.r(e),n.d(e,"NonHeapMemoryChart",(function(){return i}));var r=n(40);class i extends r.HeapMemoryChart{constructor(t){super(t,!1,!1)}parseData(t){return t.nonHeapMemoryUsage}}},48:function(t,e,n){"use strict";n.r(e),n.d(e,"CpuLoadChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t){super(t,!1,!1)}chartSetup(t){t.chart.yAxis.tickFormat=function(t){return t+"%"}}createDataHolder(){return[{key:this.translateService.instant("resource.system.cpu_load.label"),values:[]}]}addNewData(t,e,n){t[0].values.push([e,this.formatValue(n.cpuLoad)])}formatValue(t){return parseFloat(t).toFixed(4)}updateRange(t){const e=Math.max(...t[0].values.flatMap(t=>t[1])),n=e>50?100:2*e;this.chartOptions.chart.yDomain=[0,n]}}},49:function(t,e,n){"use strict";n.r(e),n.d(e,"DiskStorageChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t){super(t,!0,!0)}chartSetup(t){Object.assign(t.chart,{type:"multiBarHorizontalChart",height:250,stacked:!0,showControls:!1,xAxis:{showMaxMin:!1,tickFormat:function(t){return t}},yAxis:{showMaxMin:!1,tickFormat:function(t){return(100*t).toFixed(2)+"%"}},yDomain:[0,1]})}translateLabels(t){if(!t)return;super.translateLabels(t);const[e,n]=t;e.values.length&&n.values.length&&(e.values[0][0]=this.translateService.instant("resource.storage.data"),e.values[1][0]=this.translateService.instant("resource.storage.work"),e.values[2][0]=this.translateService.instant("resource.storage.logs"),n.values[0][0]=this.translateService.instant("resource.storage.data"),n.values[1][0]=this.translateService.instant("resource.storage.work"),n.values[2][0]=this.translateService.instant("resource.storage.logs"))}createDataHolder(){return[{key:this.translateService.instant("resource.storage.used"),color:this.chartOptions.chart.color[1],values:[]},{key:this.translateService.instant("resource.storage.free"),color:this.chartOptions.chart.color[0],values:[]}]}addNewData(t,e,n,r){const a=n.storageMemory,[o,s]=t;r&&(o.values.push([this.translateService.instant("resource.storage.data"),0]),o.values.push([this.translateService.instant("resource.storage.work"),0]),o.values.push([this.translateService.instant("resource.storage.logs"),0]),s.values.push([this.translateService.instant("resource.storage.data"),1]),s.values.push([this.translateService.instant("resource.storage.work"),1]),s.values.push([this.translateService.instant("resource.storage.logs"),1]));const l=[{label:this.translateService.instant("resource.storage.subtitle.data"),value:[i.formatBytesValue(a.dataDirUsed),i.formatBytesValue(a.dataDirFree)]},{label:this.translateService.instant("resource.storage.subtitle.work"),value:[i.formatBytesValue(a.workDirUsed),i.formatBytesValue(a.workDirFree)]},{label:this.translateService.instant("resource.storage.subtitle.logs"),value:[i.formatBytesValue(a.logsDirUsed),i.formatBytesValue(a.logsDirFree)]}];this.setSubTitle(l);const u=a.dataDirUsed+a.dataDirFree,c=a.workDirUsed+a.workDirFree,d=a.logsDirUsed+a.logsDirFree;o.values[0][1]=a.dataDirUsed/u,o.values[1][1]=a.workDirUsed/c,o.values[2][1]=a.logsDirUsed/d,s.values[0][1]=a.dataDirFree/u,s.values[1][1]=a.workDirFree/c,s.values[2][1]=a.logsDirFree/d}}},50:function(t,e,n){"use strict";n.r(e),n.d(e,"QueriesChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t){super(t,!1,!1)}chartSetup(t){t.chart.yAxis.tickValues=()=>i.getIntegerRangeForValues(this.dataHolder)}createDataHolder(){return[{key:this.translateService.instant("resource.queries.running"),values:[]}]}addNewData(t,e,n){const{activeQueryData:r,performanceData:i}=n;t[0].values.push([e,r.length]);const a=i.queries.slow,o=i.queries.suboptimal,s=[{label:this.translateService.instant("resource.queries.slow"),value:a},{label:this.translateService.instant("resource.queries.suboptimal"),value:o}];this.setSubTitle(s)}}},51:function(t,e,n){"use strict";n.r(e),n.d(e,"GlobalCacheChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t,e){super(t,!1,!1,e)}chartSetup(t){t.chart.yAxis.tickFormat=t=>this.formatNumber(t)}getTitle(){return this.translateService.instant("resources.global_cache.label")}createDataHolder(){return[{key:this.translateService.instant("resources.global_cache.hits"),values:[]},{key:this.translateService.instant("resources.global_cache.miss"),values:[]}]}addNewData(t,e,n){const[r,i]=t;r.values.push([e,n.cacheHit]),i.values.push([e,n.cacheMiss])}}},52:function(t,e,n){"use strict";n.r(e),n.d(e,"ConnectionsChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t){super(t,!1,!1)}chartSetup(t){t.chart.yAxis.tickValues=()=>i.getIntegerRangeForValues(this.dataHolder)}createDataHolder(){return[{key:this.translateService.instant("resource.connections.active"),values:[]},{key:this.translateService.instant("resource.connections.open"),values:[]}]}addNewData(t,e,n){const r=n.performanceData;t[0].values.push([e,r.activeTransactions]),t[1].values.push([e,r.openConnections])}}},53:function(t,e,n){"use strict";n.r(e),n.d(e,"ClusterHealthChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t){super(t,!0,!1),this.nodesCount=0}chartSetup(t){const e={type:"stackedAreaChart",interpolate:"step-after",stacked:!0,yAxis:{showMaxMin:!1,tickFormat:function(t){return t},tickValues:()=>d3.range(0,this.nodesCount+1,1)}};Object.assign(t.chart,e)}getTitle(){return this.translateService.instant("resources.cluster_health.label")}createDataHolder(){const[t,e,n,r]=i.COLORS;return[{key:this.translateService.instant("resources.cluster_health.in_sync"),color:t,values:[]},{key:this.translateService.instant("resources.cluster_health.syncing"),color:n,values:[]},{key:this.translateService.instant("resources.cluster_health.out_sync"),color:e,values:[]},{key:this.translateService.instant("resources.cluster_health.disconnected"),color:r,values:[]}]}addNewData(t,e,n){const r=n.nodesStats;this.nodesCount=r.nodesInCluster;const[i,a,o,s]=t;i.values.push([e,r.nodesInSync]),o.values.push([e,r.nodesOutOfSync]),s.values.push([e,r.nodesDisconnected]),a.values.push([e,r.nodesSyncing]);const l=[{label:this.translateService.instant("resource.cluster_health.leader_elections"),value:n.term},{label:this.translateService.instant("resource.cluster_health.recoveries"),value:n.failureRecoveriesCount},{label:this.translateService.instant("resource.cluster_health.failed_transactions"),value:n.failedTransactionsCount}];this.setSubTitle(l)}}},54:function(t,e,n){"use strict";n.r(e),n.d(e,"EpoolChart",(function(){return i}));var r=n(38);class i extends r.ChartData{constructor(t){super(t,!1,!1)}chartSetup(t){const e={type:"multiChart",yAxis1:{showMaxMin:!1,axisLabel:this.translateService.instant("resource.epool.reads"),axisLabelDistance:-10,rotateYLabel:!0,tickFormat:function(t){return t},tickValues:()=>i.getIntegerRangeForValues(this.dataHolder[0])},yAxis2:{showMaxMin:!1,axisLabel:this.translateService.instant("resource.epool.writes"),axisLabelDistance:-10,rotateYLabel:!0,tickFormat:function(t){return t},tickValues:()=>i.getIntegerRangeForValues(this.dataHolder[1])},y1Domain:[0,1],y2Domain:[0,1]};Object.assign(t.chart,e)}getTitle(){return this.translateService.instant("resource.epool.label")}createDataHolder(){return[{key:this.translateService.instant("resource.epool.reads"),type:"line",yAxis:1,values:[]},{key:this.translateService.instant("resource.epool.writes"),type:"line",yAxis:2,values:[]}]}addNewData(t,e,n,r){const i=n.performanceData,[a,o]=t;let s=0,l=0;const u=i.entityPool.epoolReads,c=i.entityPool.epoolWrites;if(!r){s=u-a.values[a.values.length-1][2],l=c-o.values[a.values.length-1][2]}a.values.push([e,s,u]),o.values.push([e,l,c])}updateRange(t){this.chartOptions.chart.yDomain1=this.getAxisDomain(t[0]),this.chartOptions.chart.yDomain2=this.getAxisDomain(t[1])}getAxisDomain(t){const[e]=i.calculateMaxChartValueAndDivisions(t);return[0,e]}}},61:function(t,e,n){"use strict";n.r(e);n(4),n(10),n(13),n(258),n(42);var r=n(46),i=n(40),a=n(47),o=n(48),s=n(49),l=n(50),u=n(51),c=n(52),d=n(53),f=n(54);angular.module("graphdb.framework.jmx.resources.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","graphdb.framework.rest.cluster.service"]).controller("ResourcesCtrl",["$scope","$rootScope","$timeout","MonitoringRestService","$translate","$repositories","$q","ClusterRestService","$filter",function(t,e,n,p,h,g,v,m,y){t.AVAILABLE_TABS=Object.freeze({RESOURCE_MONITOR:"resource",PERFORMANCE_MONITOR:"performance",CLUSTER_HEALTH:"cluster"});const b=window.location.hash.slice(1),x=Object.keys(t.AVAILABLE_TABS).find(e=>t.AVAILABLE_TABS[e]===b);t.activeTab=t.AVAILABLE_TABS[x]||t.AVAILABLE_TABS.RESOURCE_MONITOR,e.$on("$translateChangeSuccess",(function(e,n){[t.resourceMonitorData,t.performanceMonitorData,t.structuresMonitorData,t.clusterHealthData].forEach(t=>{Object.values(t.charts).forEach(t=>t.refresh())})})),t.resourceMonitorData={error:{hasError:!1,message:"",retries:0},charts:{cpuLoad:new o.CpuLoadChart(h),fileDescriptors:new r.FileDescriptorsChart(h,y),heapMemory:new i.HeapMemoryChart(h),offHeapMemory:new a.NonHeapMemoryChart(h),diskStorage:new s.DiskStorageChart(h)}},t.performanceMonitorData={error:{hasError:!1,message:"",retries:0},charts:{connectionsChart:new c.ConnectionsChart(h),epoolChart:new f.EpoolChart(h),queriesChart:new l.QueriesChart(h)}},t.structuresMonitorData={error:{hasError:!1,message:"",retries:0},charts:{globalCacheChart:new u.GlobalCacheChart(h,y)}},t.clusterHealthData={error:{hasError:!1,message:"",retries:0},charts:{clusterHealthChart:new d.ClusterHealthChart(h)}},t.hasCluster=!1;t.loader=!0,t.switchTab=e=>{t.activeTab=e,window.location.hash=e},t.getActiveRepository=function(){return g.getActiveRepository()};const k=function(t){return p.monitorQueryTransactionStatistics(t).then((function(t){return t.data}))},w=function(t){return p.monitorQuery(t).then((function(t){return t.data}))},M=function(){return p.monitorCluster()},A=t=>{if(t.chartsHolder.error.hasError){if(3===t.chartsHolder.error.retries)return t.poll&&n.cancel(t.poll),Promise.resolve();t.chartsHolder.error.retries++}return t.fetchFn().then((function(e){C(e,t)})).then(()=>{E(t)}).catch(e=>{D(t,e)}).finally(()=>{t.poll&&n.cancel(t.poll),t.poll=n(()=>A(t),2e3)})},C=(t,e,n)=>{const r=t.data;r&&S(r,e,n)},S=(t,e,n)=>{const r=new Date;n?n(r,t):Object.values(e.chartsHolder.charts).forEach(e=>{e.addData(r,t)})},D=(t,e)=>{t.chartsHolder.error.hasError=!!e,t.chartsHolder.error.hasError&&(t.chartsHolder.error.message=getError(e))},E=t=>{t.chartsHolder.error.hasError=!1,t.chartsHolder.error.message=""};t.monitors=[],t.monitors.push({chartsHolder:t.resourceMonitorData,error:{hasError:!1,message:"",retries:0},fetchFn:function(){return p.monitorResources()},poll:null}),t.monitors.push({chartsHolder:t.structuresMonitorData,error:{hasError:!1,message:"",retries:0},fetchFn:function(){const e=t.getActiveRepository();return e?p.monitorStructures(e):Promise.resolve()},poll:null}),t.monitors.push({chartsHolder:t.performanceMonitorData,error:{hasError:!1,message:"",retries:0},fetchFn:function(){const e=t.getActiveRepository();return e?v.all([k(e),w(e)]).then(t=>{const[e,n]=t;return{data:{performanceData:e,activeQueryData:n}}}):Promise.resolve()},poll:null}),m.getNodeStatus().then(()=>{t.hasCluster=!0;const e={chartsHolder:t.clusterHealthData,fetchFn:M,poll:null};t.monitors.push(e),A(e)}).catch(()=>{t.hasCluster=!1});let F=null;v.all(t.monitors.map(t=>A(t))).finally(()=>{t.loader&&(F&&n.cancel(F),F=n((function(){t.loader=!1}),500))}),t.$on("$destroy",(function(){F&&n.cancel(F);for(const e of t.monitors)e.poll&&n.cancel(e.poll)}))}])},91:function(t,e,n){"use strict";n.r(e);n(4),n(10),n(13),n(39);function r(t,e,n,r,i,a){t.getSqlConfigurations=function(){!e.getActiveRepository()||e.isActiveRepoOntopType()||e.isActiveRepoFedXType()?t.jdbcConfigurations=[]:n.getJdbcConfigurations().success((function(e){t.jdbcConfigurations=e})).error((function(t){const e=getError(t);r.error(e,a.instant("jdbc.not.get.SQL.msg"))}))},t.$watch((function(){return e.getActiveRepository()}),(function(){t.getSqlConfigurations()})),t.deleteConfiguration=function(e){i.openSimpleModal({title:a.instant("common.warning"),message:a.instant("jdbc.delete.sql.table.warning.msg",{name:e}),warning:!0}).result.then((function(){n.deleteJdbcConfiguration(e).success((function(){t.getSqlConfigurations()})).error((function(t){r.error(getError(t),a.instant("jdbc.not.delete.sql.msg"))}))}))}}function i(t,e,n,r,i,a,o,s,l,u,c){t.name=e.search().name||"",t.getNamespaces=function(){v(!0,c.instant("common.refreshing.namespaces"),c.instant("common.extra.message")),s.getRepositoryNamespaces().success((function(e){const n={};e.results.bindings.forEach((function(t){n[t.prefix.value]=t.namespace.value})),t.namespaces=n})).error((function(e){t.repositoryError=getError(e)})).finally((function(){v(!1),m()}))},t.setLoader=v,t.addKnownPrefixes=b,t.page=1,t.noPadding={paddingRight:0,paddingLeft:0},t.sqlTypes=["string","iri","boolean","byte","short","int","long","float","double","decimal","date","time","timestamp","Get suggestion..."],t.currentTabConfig={},t.orientationViewMode=!0,t.currentQuery={},t.$watch((function(){return r.getActiveRepository()}),(function(t,n){t!==n&&e.path("jdbc")}));let d=null;t.goBack=function(){d=a((function(){i.history.back()}),1e3)};const f=t.$on("$locationChangeStart",(function(e){!function(e){t.currentQuery.isPristine||(confirm(c.instant("jdbc.warning.unsaved.changes"))?(window.removeEventListener("beforeunload",p),f(),a.cancel(d)):e.preventDefault())}(e)}));function p(e){t.currentQuery.isPristine||(e.returnValue=!0)}window.addEventListener("beforeunload",p),t.$on("$destroy",(function(t){window.removeEventListener("beforeunload",p),f(),a.cancel(d)}));const h={id:"1",name:"",query:"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\n# Selects two variables to use as columns\nSELECT ?id ?label {\n ?id rdfs:label ?label\n # The following placeholder must be present in the query\n #!filter\n}",inference:!0,sameAs:!0,isNewConfiguration:!0,isPristine:!0};var g;function v(e,n,r){const i=angular.element(document.getElementById("yasr-inner"));t.queryIsRunning=e,e?(t.queryStartTime=Date.now(),t.countTimeouted=!1,t.progressMessage=n,t.extraMessage=r,i.addClass("hide")):(t.progressMessage="",t.extraMessage="",i.removeClass("hide")),null===t.$$phase&&t.$apply()}function m(){t.tabsData=[t.currentQuery];const e=t.currentQuery;t.currentQuery.query?window.editor.setValue(t.currentQuery.query):window.editor.setValue(" "),a((function(){t.currentTabConfig={},t.currentTabConfig.queryType=e.queryType,t.currentTabConfig.resultsCount=e.resultsCount,t.currentTabConfig.offset=e.offset,t.currentTabConfig.allResultsCount=e.allResultsCount,t.currentTabConfig.page=e.page,t.currentTabConfig.pageSize=e.pageSize,t.currentTabConfig.timeFinished=e.timeFinished,t.currentTabConfig.timeTook=e.timeTook,t.currentTabConfig.sizeDelta=e.sizeDelta,t.$apply()}),0),t.canWriteActiveRepo()||(window.editor.options.readOnly=!0)}function y(){t.tabsData=t.tabs=[h],t.currentQuery=angular.copy(h),k(),window.editor&&(t.setQuery(t.currentQuery.query),m()),t.$watch((function(){return t.currentQuery.query}),(function(e,n){e!==n&&t.setDirty()}))}function b(){l.addKnownPrefixes(JSON.stringify(window.editor.getValue())).success((function(t){angular.isDefined(window.editor)&&angular.isDefined(t)&&t!==window.editor.getValue()&&window.editor.setValue(t)})).error((function(t){const e=getError(t);return n.error(e,c.instant("common.add.known.prefixes.error")),!0}))}function x(){C()&&o.getColumnNames(t.currentQuery.query).success((function(e){o.getColumnsTypeSuggestion(t.currentQuery.query,e).success((function(n){const r=[];_.forEach(e,(function(t){r.push({column_name:t,column_type:n[t].column_type,nullable:!0,sparql_type:n[t].sparql_type})})),t.currentQuery.columns=r,t.setDirty()})).error((function(t){n.error(getError(t),c.instant("jdbc.not.suggest.column.types"))}))})).error((function(t){n.error(getError(t),c.instant("jdbc.not.suggest.column.names"))}))}function k(){2===t.page?t.viewMode="editor":t.viewMode="none"}function w(t,e,n,r,i){let a=n[r].value;a=a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return"<div class = 'literal-cell'>"+("<p class='nonUri' style='border: none; background-color: transparent; padding: 0; margin: 0'>"+a+"</p>")+"</div>"}function M(){return window.editor&&"SELECT"===window.editor.getQueryType()}function A(){return C()&&function(){if(!t.currentQuery.columns||!t.currentQuery.columns.length)return n.error(c.instant("jdbc.warning.one.column.msg"),c.instant("jdbc.invalid.columns")),!1;if(t.containsUnknownColumns())return n.error(c.instant("jdbc.warning.all.column.msg"),c.instant("jdbc.invalid.columns")),!1;return!0}()}function C(){return!!M()||(n.error(c.instant("jdbc.warning.invalid.query"),c.instant("jdbc.invalid.query)")),!1)}t.resetCurrentTabConfig=function(){t.currentTabConfig={pageSize:100,page:1,allResultsCount:0,resultsCount:0,queryType:""}},t.saveTab=function(){},t.setQuery=function(t){window.editor.setValue(t||" ")},t.name?(g=t.name,o.getJdbcConfiguration(g).success((function(t){h.query=t.query,h.name=t.name,h.columns=t.columns,h.isNewConfiguration=!t.name,y()})).error((function(t){const e=getError(t);n.error(e,c.instant("jdbc.not.get.sql.msg2"))}))):y(),t.goToPage=function(e){t.page=e;const n=t.currentQuery.columns;2!==e||n&&0!==n.length||!M()||t.getColumnsSuggestions(),k()},t.save=function(){A()&&(t.currentQuery.name?t.currentQuery.isNewConfiguration?o.createNewJdbcConfiguration(t.currentQuery).success((function(){t.currentQuery.isPristine=!0,t.currentQuery.isNewConfiguration=!1,n.success(c.instant("jdbc.saved.configuration")),t.goBack()})).error((function(t){const e=getError(t);n.error(e,c.instant("jdbc.not.saved.configuration"))})):o.updateJdbcConfiguration(t.currentQuery).success((function(){t.currentQuery.isPristine=!0,t.currentQuery.isNewConfiguration=!1,n.success(c.instant("jdbc.configuration.updated")),t.goBack()})).error((function(t){const e=getError(t);n.error(e,c.instant("jdbc.not.saved.configuration"))})):n.error(c.instant("jdbc.required.configuration.name")))},t.hasPrecision=function(t){return"iri"===t||"string"===t||"decimal"===t},t.containsColumnsWithPrecision=function(e){return e&&e.some(e=>t.hasPrecision(e.column_type))},t.hasScale=function(t){return"decimal"===t},t.containsColumnsWithScale=function(e){return e&&e.some(e=>t.hasScale(e.column_type))},t.isLiteral=function(t){return"iri"!==t&&"unknown"!==t},t.containsNonLiteralColumnsOnly=function(e){return e&&e.every(e=>!t.isLiteral(e.column_type))},t.containsUnknownColumns=function(){return t.currentQuery.columns&&t.currentQuery.columns.find(t=>"unknown"===t.column_type)},$("textarea").on("paste",(function(){a((function(){b()}),0)})),t.selectColumnType=function(e,r){const i=_.find(t.currentQuery.columns,(function(t){return t.column_name===e}));"Get suggestion..."===i.column_type&&o.getColumnsTypeSuggestion(t.currentQuery.query,[e]).success((function(t){i.column_type=t[e].column_type,i.column_type===r?n.info(c.instant("jdbc.same.suggested.sql.type",{type:i.column_type}),c.instant("jdbc.suggest.sql.type"),{allowHtml:!0}):n.success(c.instant("jdbc.suggested.sql.type",{type:i.column_type}),c.instant("jdbc.suggest.sql.type"),{allowHtml:!0}),i.sparql_type=t[e].sparql_type})).error((function(t){n.error(getError(t),c.instant("jdbc.not.suggest.column.type"))})),t.setDirty()},t.getColumnsSuggestions=function(){t.currentQuery.columns&&t.currentQuery.columns.length>0?u.openSimpleModal({title:c.instant("common.warning"),message:c.instant("jdbc.warning.column.type.msg"),warning:!0}).result.then((function(){x()})):x()},t.deleteColumn=function(e,n){u.openSimpleModal({title:c.instant("common.warning"),message:c.instant("jdbc.warning.delete.column.msg",{columnName:e}),warning:!0}).result.then((function(){t.currentQuery.columns.splice(n,1),t.setDirty()}))},t.getPreview=function(){if(A()&&(t.executedQueryTab=t.currentQuery,!t.queryIsRunning)){t.currentQuery.outputType="table",t.resetCurrentTabConfig(),v(!0,c.instant("jdbc.preview.first.rows",{name:t.name}),c.instant("common.extra.message"));const e=function(e,r,i){!function(e,r,i){e.results&&e.results.bindings&&e.results.bindings.length?(window.yasr.plugins.table.options.getCellContent=w,t.currentTabConfig.queryType="SELECT",window.yasr.setResponse(r,i,null)):n.info(c.instant("jdbc.table.definition"),c.instant("jdbc.preview.sql"))}(e,i,r),v(!1)},r=function(t){v(!1),n.error(getError(t,0,100),c.instant("jdbc.not.show.preview"))};if(t.canWriteActiveRepo()){const n=JSON.stringify({name:t.currentQuery.name,query:t.currentQuery.query,columns:t.currentQuery.columns||[]});o.getNewSqlTablePreview(n).done(e).fail(r)}else o.getExistingSqlTablePreview(t.currentQuery.name).done(e).fail(r)}},t.setDirty=function(){t.currentQuery.isPristine=!1},t.getTypeLabel=function(t){switch(t){case"iri":return"VARCHAR: IRI";case"string":return"VARCHAR: String";default:return t.indexOf(" ")>0?t:t.toUpperCase()}}}angular.module("graphdb.framework.jdbc.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","toastr"],["graphdb.framework.utils.notifications"]).controller("JdbcListCtrl",r).controller("JdbcCreateCtrl",i),r.$inject=["$scope","$repositories","JdbcRestService","toastr","ModalService","$translate"],i.$inject=["$scope","$location","toastr","$repositories","$window","$timeout","JdbcRestService","RDF4JRepositoriesRestService","SparqlRestService","ModalService","$translate"]},92:function(t,e){angular.module("graphdb.framework.rest.jdbc.service",[]).factory("JdbcRestService",n),n.$inject=["$http","$repositories","$translate"];function n(t,e){return{getJdbcConfigurations:function(){return t.get("rest/sql-views/tables")},getJdbcConfiguration:function(e){return t.get("rest/sql-views/tables/"+e)},createNewJdbcConfiguration:function(t){return n("POST","",t)},updateJdbcConfiguration:function(t){return n("PUT",t.name,t)},deleteJdbcConfiguration:function(e){return t.delete("rest/sql-views/tables/"+e)},getColumnNames:function(e){return t.post("rest/sql-views/columns",e,{headers:{Accept:"application/json","Content-Type":"text/plain"}})},getColumnsTypeSuggestion:function(n,r){if(!Array.isArray(r))throw new Error(e.instant("jdbc.column.names.constraint"));return t({method:"POST",url:"rest/sql-views/types",data:{query:n,column_names:r}})},getExistingSqlTablePreview:function(t,e){return $.ajax({method:"GET",url:"rest/sql-views/preview/"+t,params:{limit:e}})},getNewSqlTablePreview:function(t,e){return $.ajax({method:"POST",url:"rest/sql-views/preview",contentType:"application/json; charset=utf-8",dataType:"json",data:t,params:{limit:e},headers:{Accept:"application/sparql-results+json"}})}};function n(e,n,r){return t({method:e,url:"rest/sql-views/tables/"+n,noCancelOnRouteChange:!0,data:{name:r.name,query:r.query,columns:r.columns||[]}})}}}}]);
2
+ //# sourceMappingURL=12.f348b65d06b0213c492e.bundle.js.map