Created
April 1, 2015 05:07
-
-
Save petk/d43726688595f112a419 to your computer and use it in GitHub Desktop.
Symfony 2.6 PHP Metrics report
This file has been truncated, but you can view the full file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html> | |
<head> | |
<title>PhpMetrics report - by Jean-François Lépine</title> | |
<meta charset="utf-8"> | |
<link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFA+LP9QPiz/UD4s/1A+LP9QPiz/UD4s/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUD4s/1A+LP9QPiz/UD4s/1A+LP9QPiz/UD4s/1A+LP9QPiz/UD4s/wAAAAAAAAAAAAAAAAAAAAAAAAAAUD4s/1A+LP9QPiz/UD4s/1A+LP9QPiz/UD4s/wC6eP8sdU7/ALp4/1A+LP9QPiz/AAAAAAAAAAAAAAAAUD4s/1A+LP9QPiz/UD4s/1A+LP9QPiz/UD4s/wC6eP9QPiz/SUgy/wC6eP9LRTD/ALp4/1A+LP8AAAAAAAAAAFA+LP9QPiz/UD4s/1A+LP9QPiz/UD4s/wC6eP89Wz3/ALp4/wCz9P8As/T/UD4s/wC6eP9QPiz/AAAAAFA+LP9QPiz/UD4s/1A+LP9QPiz/TkAt/1A+LP8Aunj/OGJC/wCz9P8As/T/ALP0/xSbZf9QPiz/UD4s/1A+LP9QPiz/UD4s/1A+LP9QPiz/ALp4/1A+LP8Aunj/ALp4/wui2P9QPiz/Cabd/wevcf8Aunj/UD4s/1A+LP9QPiz/UD4s/1A+LP9QPiz/TUMv/wC6eP8Aunj/ALp4/wC6eP8Aunj/ALp4/wynbP9QPiz/K3dP/zZmRP9QPiz/UD4s/1A+LP9QPiz/ALp4/wC6eP8Aunj/TEQw/xqSX/8As/T/SEoz/wC6eP8BuHf/ALP0/wC6eP8Aunj/C6ht/1A+LP9QPiz/OWFC/wC6eP8Aunj/ALp4/01BLv8qdYv/UD4s/wCz9P9QPiz/ALp4/1A+LP8Aunj/ALp4/wC6eP9QPiz/UD4s/1A+LP8As/T/ALP0/1A+LP8As/T/ALP0/wC6eP8Aunj/UD4s/wC6eP8za0f/UD4s/xeVYv8Kqm7/UD4s/wAAAABQPiz/ALP0/wCz9P8Aunj/ALP0/zdhaf9QPiz/UD4s/wC6eP9QPiz/ALp4/wC6eP8Aunj/UD4s/wAAAAAAAAAAUD4s5FA+LP9QPiz/UD4s/wCz9P8As/T/UD4s/wC6eP8Snmf/UD4s/1A+LP9QPiz/UD4s/1A+LP8AAAAAAAAAAAAAAABQPiz/UD4s/1A+LP8As/T/ALP0/1A+LP8Aunj/UD4s/1A+LP9QPiz/UD4s/1A+LP8AAAAAAAAAAAAAAAAAAAAAAAAAADwvIZJQPiz/UD4s/1A+LP9QPiz/UD4s/1A+LP9QPiz/UD4s/1A+LNMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEY2J1ZQPiz/UD4s/1A+LP9QPiz/RjYnpQAAAAAAAAAAAAAAAAAAAAAAAAAA+B8AAOAHAADAAwAAgAEAAIABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAAgAEAAMADAADgBwAA/B8AAA==" rel="icon" type="image/x-icon" /> <style type="text/css"> | |
/******************** | |
* HTML CSS | |
*/ | |
.chartWrap { | |
margin: 0; | |
padding: 0; | |
overflow: hidden; | |
} | |
/******************** | |
Box shadow and border radius styling | |
*/ | |
.nvtooltip.with-3d-shadow, .with-3d-shadow .nvtooltip { | |
-moz-box-shadow: 0 5px 10px rgba(0,0,0,.2); | |
-webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2); | |
box-shadow: 0 5px 10px rgba(0,0,0,.2); | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
} | |
/******************** | |
* TOOLTIP CSS | |
*/ | |
.nvtooltip { | |
position: absolute; | |
background-color: rgba(255,255,255,1.0); | |
padding: 1px; | |
border: 1px solid rgba(0,0,0,.2); | |
z-index: 10000; | |
font-family: Arial; | |
font-size: 13px; | |
text-align: left; | |
pointer-events: none; | |
white-space: nowrap; | |
-webkit-touch-callout: none; | |
-webkit-user-select: none; | |
-khtml-user-select: none; | |
-moz-user-select: none; | |
-ms-user-select: none; | |
user-select: none; | |
} | |
/*Give tooltips that old fade in transition by | |
putting a "with-transitions" class on the container div. | |
*/ | |
.nvtooltip.with-transitions, .with-transitions .nvtooltip { | |
transition: opacity 250ms linear; | |
-moz-transition: opacity 250ms linear; | |
-webkit-transition: opacity 250ms linear; | |
transition-delay: 250ms; | |
-moz-transition-delay: 250ms; | |
-webkit-transition-delay: 250ms; | |
} | |
.nvtooltip.x-nvtooltip, | |
.nvtooltip.y-nvtooltip { | |
padding: 8px; | |
} | |
.nvtooltip h3 { | |
margin: 0; | |
padding: 4px 14px; | |
line-height: 18px; | |
font-weight: normal; | |
background-color: rgba(247,247,247,0.75); | |
text-align: center; | |
border-bottom: 1px solid #ebebeb; | |
-webkit-border-radius: 5px 5px 0 0; | |
-moz-border-radius: 5px 5px 0 0; | |
border-radius: 5px 5px 0 0; | |
} | |
.nvtooltip p { | |
margin: 0; | |
padding: 5px 14px; | |
text-align: center; | |
} | |
.nvtooltip span { | |
display: inline-block; | |
margin: 2px 0; | |
} | |
.nvtooltip table { | |
margin: 6px; | |
border-spacing:0; | |
} | |
.nvtooltip table td { | |
padding: 2px 9px 2px 0; | |
vertical-align: middle; | |
} | |
.nvtooltip table td.key { | |
font-weight:normal; | |
} | |
.nvtooltip table td.value { | |
text-align: right; | |
font-weight: bold; | |
} | |
.nvtooltip table tr.highlight td { | |
padding: 1px 9px 1px 0; | |
border-bottom-style: solid; | |
border-bottom-width: 1px; | |
border-top-style: solid; | |
border-top-width: 1px; | |
} | |
.nvtooltip table td.legend-color-guide div { | |
width: 8px; | |
height: 8px; | |
vertical-align: middle; | |
} | |
.nvtooltip .footer { | |
padding: 3px; | |
text-align: center; | |
} | |
.nvtooltip-pending-removal { | |
position: absolute; | |
pointer-events: none; | |
} | |
/******************** | |
* SVG CSS | |
*/ | |
svg { | |
-webkit-touch-callout: none; | |
-webkit-user-select: none; | |
-khtml-user-select: none; | |
-moz-user-select: none; | |
-ms-user-select: none; | |
user-select: none; | |
/* Trying to get SVG to act like a greedy block in all browsers */ | |
display: block; | |
width:100%; | |
height:100%; | |
} | |
svg text { | |
font: normal 12px Arial; | |
} | |
svg .title { | |
font: bold 14px Arial; | |
} | |
.nvd3 .nv-background { | |
fill: white; | |
fill-opacity: 0; | |
/* | |
pointer-events: none; | |
*/ | |
} | |
.nvd3.nv-noData { | |
font-size: 18px; | |
font-weight: bold; | |
} | |
/********** | |
* Brush | |
*/ | |
.nv-brush .extent { | |
fill-opacity: .125; | |
shape-rendering: crispEdges; | |
} | |
/********** | |
* Legend | |
*/ | |
.nvd3 .nv-legend .nv-series { | |
cursor: pointer; | |
} | |
.nvd3 .nv-legend .disabled circle { | |
fill-opacity: 0; | |
} | |
/********** | |
* Axes | |
*/ | |
.nvd3 .nv-axis { | |
pointer-events:none; | |
} | |
.nvd3 .nv-axis path { | |
fill: none; | |
stroke: #000; | |
stroke-opacity: .75; | |
shape-rendering: crispEdges; | |
} | |
.nvd3 .nv-axis path.domain { | |
stroke-opacity: .75; | |
} | |
.nvd3 .nv-axis.nv-x path.domain { | |
stroke-opacity: 0; | |
} | |
.nvd3 .nv-axis line { | |
fill: none; | |
stroke: #e5e5e5; | |
shape-rendering: crispEdges; | |
} | |
.nvd3 .nv-axis .zero line, | |
/*this selector may not be necessary*/ .nvd3 .nv-axis line.zero { | |
stroke-opacity: .75; | |
} | |
.nvd3 .nv-axis .nv-axisMaxMin text { | |
font-weight: bold; | |
} | |
.nvd3 .x .nv-axis .nv-axisMaxMin text, | |
.nvd3 .x2 .nv-axis .nv-axisMaxMin text, | |
.nvd3 .x3 .nv-axis .nv-axisMaxMin text { | |
text-anchor: middle | |
} | |
/********** | |
* Brush | |
*/ | |
.nv-brush .resize path { | |
fill: #eee; | |
stroke: #666; | |
} | |
/********** | |
* Bars | |
*/ | |
.nvd3 .nv-bars .negative rect { | |
zfill: brown; | |
} | |
.nvd3 .nv-bars rect { | |
zfill: steelblue; | |
fill-opacity: .75; | |
transition: fill-opacity 250ms linear; | |
-moz-transition: fill-opacity 250ms linear; | |
-webkit-transition: fill-opacity 250ms linear; | |
} | |
.nvd3 .nv-bars rect.hover { | |
fill-opacity: 1; | |
} | |
.nvd3 .nv-bars .hover rect { | |
fill: lightblue; | |
} | |
.nvd3 .nv-bars text { | |
fill: rgba(0,0,0,0); | |
} | |
.nvd3 .nv-bars .hover text { | |
fill: rgba(0,0,0,1); | |
} | |
/********** | |
* Bars | |
*/ | |
.nvd3 .nv-multibar .nv-groups rect, | |
.nvd3 .nv-multibarHorizontal .nv-groups rect, | |
.nvd3 .nv-discretebar .nv-groups rect { | |
stroke-opacity: 0; | |
transition: fill-opacity 250ms linear; | |
-moz-transition: fill-opacity 250ms linear; | |
-webkit-transition: fill-opacity 250ms linear; | |
} | |
.nvd3 .nv-multibar .nv-groups rect:hover, | |
.nvd3 .nv-multibarHorizontal .nv-groups rect:hover, | |
.nvd3 .nv-discretebar .nv-groups rect:hover { | |
fill-opacity: 1; | |
} | |
.nvd3 .nv-discretebar .nv-groups text, | |
.nvd3 .nv-multibarHorizontal .nv-groups text { | |
font-weight: bold; | |
fill: rgba(0,0,0,1); | |
stroke: rgba(0,0,0,0); | |
} | |
/*********** | |
* Pie Chart | |
*/ | |
.nvd3.nv-pie path { | |
stroke-opacity: 0; | |
transition: fill-opacity 250ms linear, stroke-width 250ms linear, stroke-opacity 250ms linear; | |
-moz-transition: fill-opacity 250ms linear, stroke-width 250ms linear, stroke-opacity 250ms linear; | |
-webkit-transition: fill-opacity 250ms linear, stroke-width 250ms linear, stroke-opacity 250ms linear; | |
} | |
.nvd3.nv-pie .nv-slice text { | |
stroke: #000; | |
stroke-width: 0; | |
} | |
.nvd3.nv-pie path { | |
stroke: #fff; | |
stroke-width: 1px; | |
stroke-opacity: 1; | |
} | |
.nvd3.nv-pie .hover path { | |
fill-opacity: .7; | |
} | |
.nvd3.nv-pie .nv-label { | |
pointer-events: none; | |
} | |
.nvd3.nv-pie .nv-label rect { | |
fill-opacity: 0; | |
stroke-opacity: 0; | |
} | |
/********** | |
* Lines | |
*/ | |
.nvd3 .nv-groups path.nv-line { | |
fill: none; | |
stroke-width: 1.5px; | |
/* | |
stroke-linecap: round; | |
shape-rendering: geometricPrecision; | |
transition: stroke-width 250ms linear; | |
-moz-transition: stroke-width 250ms linear; | |
-webkit-transition: stroke-width 250ms linear; | |
transition-delay: 250ms | |
-moz-transition-delay: 250ms; | |
-webkit-transition-delay: 250ms; | |
*/ | |
} | |
.nvd3 .nv-groups path.nv-line.nv-thin-line { | |
stroke-width: 1px; | |
} | |
.nvd3 .nv-groups path.nv-area { | |
stroke: none; | |
/* | |
stroke-linecap: round; | |
shape-rendering: geometricPrecision; | |
stroke-width: 2.5px; | |
transition: stroke-width 250ms linear; | |
-moz-transition: stroke-width 250ms linear; | |
-webkit-transition: stroke-width 250ms linear; | |
transition-delay: 250ms | |
-moz-transition-delay: 250ms; | |
-webkit-transition-delay: 250ms; | |
*/ | |
} | |
.nvd3 .nv-line.hover path { | |
stroke-width: 6px; | |
} | |
/* | |
.nvd3.scatter .groups .point { | |
fill-opacity: 0.1; | |
stroke-opacity: 0.1; | |
} | |
*/ | |
.nvd3.nv-line .nvd3.nv-scatter .nv-groups .nv-point { | |
fill-opacity: 0; | |
stroke-opacity: 0; | |
} | |
.nvd3.nv-scatter.nv-single-point .nv-groups .nv-point { | |
fill-opacity: .5 !important; | |
stroke-opacity: .5 !important; | |
} | |
.with-transitions .nvd3 .nv-groups .nv-point { | |
transition: stroke-width 250ms linear, stroke-opacity 250ms linear; | |
-moz-transition: stroke-width 250ms linear, stroke-opacity 250ms linear; | |
-webkit-transition: stroke-width 250ms linear, stroke-opacity 250ms linear; | |
} | |
.nvd3.nv-scatter .nv-groups .nv-point.hover, | |
.nvd3 .nv-groups .nv-point.hover { | |
stroke-width: 7px; | |
fill-opacity: .95 !important; | |
stroke-opacity: .95 !important; | |
} | |
.nvd3 .nv-point-paths path { | |
stroke: #aaa; | |
stroke-opacity: 0; | |
fill: #eee; | |
fill-opacity: 0; | |
} | |
.nvd3 .nv-indexLine { | |
cursor: ew-resize; | |
} | |
/********** | |
* Distribution | |
*/ | |
.nvd3 .nv-distribution { | |
pointer-events: none; | |
} | |
/********** | |
* Scatter | |
*/ | |
/* **Attempting to remove this for useVoronoi(false), need to see if it's required anywhere | |
.nvd3 .nv-groups .nv-point { | |
pointer-events: none; | |
} | |
*/ | |
.nvd3 .nv-groups .nv-point.hover { | |
stroke-width: 20px; | |
stroke-opacity: .5; | |
} | |
.nvd3 .nv-scatter .nv-point.hover { | |
fill-opacity: 1; | |
} | |
/* | |
.nv-group.hover .nv-point { | |
fill-opacity: 1; | |
} | |
*/ | |
/********** | |
* Stacked Area | |
*/ | |
.nvd3.nv-stackedarea path.nv-area { | |
fill-opacity: .7; | |
/* | |
stroke-opacity: .65; | |
fill-opacity: 1; | |
*/ | |
stroke-opacity: 0; | |
transition: fill-opacity 250ms linear, stroke-opacity 250ms linear; | |
-moz-transition: fill-opacity 250ms linear, stroke-opacity 250ms linear; | |
-webkit-transition: fill-opacity 250ms linear, stroke-opacity 250ms linear; | |
/* | |
transition-delay: 500ms; | |
-moz-transition-delay: 500ms; | |
-webkit-transition-delay: 500ms; | |
*/ | |
} | |
.nvd3.nv-stackedarea path.nv-area.hover { | |
fill-opacity: .9; | |
/* | |
stroke-opacity: .85; | |
*/ | |
} | |
/* | |
.d3stackedarea .groups path { | |
stroke-opacity: 0; | |
} | |
*/ | |
.nvd3.nv-stackedarea .nv-groups .nv-point { | |
stroke-opacity: 0; | |
fill-opacity: 0; | |
} | |
/* | |
.nvd3.nv-stackedarea .nv-groups .nv-point.hover { | |
stroke-width: 20px; | |
stroke-opacity: .75; | |
fill-opacity: 1; | |
}*/ | |
/********** | |
* Line Plus Bar | |
*/ | |
.nvd3.nv-linePlusBar .nv-bar rect { | |
fill-opacity: .75; | |
} | |
.nvd3.nv-linePlusBar .nv-bar rect:hover { | |
fill-opacity: 1; | |
} | |
/********** | |
* Bullet | |
*/ | |
.nvd3.nv-bullet { font: 10px sans-serif; } | |
.nvd3.nv-bullet .nv-measure { fill-opacity: .8; } | |
.nvd3.nv-bullet .nv-measure:hover { fill-opacity: 1; } | |
.nvd3.nv-bullet .nv-marker { stroke: #000; stroke-width: 2px; } | |
.nvd3.nv-bullet .nv-markerTriangle { stroke: #000; fill: #fff; stroke-width: 1.5px; } | |
.nvd3.nv-bullet .nv-tick line { stroke: #666; stroke-width: .5px; } | |
.nvd3.nv-bullet .nv-range.nv-s0 { fill: #eee; } | |
.nvd3.nv-bullet .nv-range.nv-s1 { fill: #ddd; } | |
.nvd3.nv-bullet .nv-range.nv-s2 { fill: #ccc; } | |
.nvd3.nv-bullet .nv-title { font-size: 14px; font-weight: bold; } | |
.nvd3.nv-bullet .nv-subtitle { fill: #999; } | |
.nvd3.nv-bullet .nv-range { | |
fill: #bababa; | |
fill-opacity: .4; | |
} | |
.nvd3.nv-bullet .nv-range:hover { | |
fill-opacity: .7; | |
} | |
/********** | |
* Sparkline | |
*/ | |
.nvd3.nv-sparkline path { | |
fill: none; | |
} | |
.nvd3.nv-sparklineplus g.nv-hoverValue { | |
pointer-events: none; | |
} | |
.nvd3.nv-sparklineplus .nv-hoverValue line { | |
stroke: #333; | |
stroke-width: 1.5px; | |
} | |
.nvd3.nv-sparklineplus, | |
.nvd3.nv-sparklineplus g { | |
pointer-events: all; | |
} | |
.nvd3 .nv-hoverArea { | |
fill-opacity: 0; | |
stroke-opacity: 0; | |
} | |
.nvd3.nv-sparklineplus .nv-xValue, | |
.nvd3.nv-sparklineplus .nv-yValue { | |
/* | |
stroke: #666; | |
*/ | |
stroke-width: 0; | |
font-size: .9em; | |
font-weight: normal; | |
} | |
.nvd3.nv-sparklineplus .nv-yValue { | |
stroke: #f66; | |
} | |
.nvd3.nv-sparklineplus .nv-maxValue { | |
stroke: #2ca02c; | |
fill: #2ca02c; | |
} | |
.nvd3.nv-sparklineplus .nv-minValue { | |
stroke: #d62728; | |
fill: #d62728; | |
} | |
.nvd3.nv-sparklineplus .nv-currentValue { | |
/* | |
stroke: #444; | |
fill: #000; | |
*/ | |
font-weight: bold; | |
font-size: 1.1em; | |
} | |
/********** | |
* historical stock | |
*/ | |
.nvd3.nv-ohlcBar .nv-ticks .nv-tick { | |
stroke-width: 2px; | |
} | |
.nvd3.nv-ohlcBar .nv-ticks .nv-tick.hover { | |
stroke-width: 4px; | |
} | |
.nvd3.nv-ohlcBar .nv-ticks .nv-tick.positive { | |
stroke: #2ca02c; | |
} | |
.nvd3.nv-ohlcBar .nv-ticks .nv-tick.negative { | |
stroke: #d62728; | |
} | |
.nvd3.nv-historicalStockChart .nv-axis .nv-axislabel { | |
font-weight: bold; | |
} | |
.nvd3.nv-historicalStockChart .nv-dragTarget { | |
fill-opacity: 0; | |
stroke: none; | |
cursor: move; | |
} | |
.nvd3 .nv-brush .extent { | |
/* | |
cursor: ew-resize !important; | |
*/ | |
fill-opacity: 0 !important; | |
} | |
.nvd3 .nv-brushBackground rect { | |
stroke: #000; | |
stroke-width: .4; | |
fill: #fff; | |
fill-opacity: .7; | |
} | |
/********** | |
* Indented Tree | |
*/ | |
/** | |
* TODO: the following 3 selectors are based on classes used in the example. I should either make them standard and leave them here, or move to a CSS file not included in the library | |
*/ | |
.nvd3.nv-indentedtree .name { | |
margin-left: 5px; | |
} | |
.nvd3.nv-indentedtree .clickable { | |
color: #08C; | |
cursor: pointer; | |
} | |
.nvd3.nv-indentedtree span.clickable:hover { | |
color: #005580; | |
text-decoration: underline; | |
} | |
.nvd3.nv-indentedtree .nv-childrenCount { | |
display: inline-block; | |
margin-left: 5px; | |
} | |
.nvd3.nv-indentedtree .nv-treeicon { | |
cursor: pointer; | |
/* | |
cursor: n-resize; | |
*/ | |
} | |
.nvd3.nv-indentedtree .nv-treeicon.nv-folded { | |
cursor: pointer; | |
/* | |
cursor: s-resize; | |
*/ | |
} | |
/********** | |
* Parallel Coordinates | |
*/ | |
.nvd3 .background path { | |
fill: none; | |
stroke: #ccc; | |
stroke-opacity: .4; | |
shape-rendering: crispEdges; | |
} | |
.nvd3 .foreground path { | |
fill: none; | |
stroke: steelblue; | |
stroke-opacity: .7; | |
} | |
.nvd3 .brush .extent { | |
fill-opacity: .3; | |
stroke: #fff; | |
shape-rendering: crispEdges; | |
} | |
.nvd3 .axis line, .axis path { | |
fill: none; | |
stroke: #000; | |
shape-rendering: crispEdges; | |
} | |
.nvd3 .axis text { | |
text-shadow: 0 1px 0 #fff; | |
} | |
/**** | |
Interactive Layer | |
*/ | |
.nvd3 .nv-interactiveGuideLine { | |
pointer-events:none; | |
} | |
.nvd3 line.nv-guideline { | |
stroke: #ccc; | |
} .radar-chart .level{stroke:grey;stroke-width:.5}.radar-chart .axis line{stroke:grey;stroke-width:1}.radar-chart .axis .legend{font-family:sans-serif;font-size:10px}.radar-chart .axis .legend.top{dy:1em}.radar-chart .axis .legend.left{text-anchor:start}.radar-chart .axis .legend.middle{text-anchor:middle}.radar-chart .axis .legend.right{text-anchor:end}.radar-chart .tooltip{font-family:sans-serif;font-size:13px;transition:opacity 200ms;opacity:0}.radar-chart .tooltip.visible{opacity:1}.radar-chart .area{stroke-width:2;fill-opacity:.5}.radar-chart.focus .area{fill-opacity:.1}.radar-chart.focus .area.focused{fill-opacity:.7}.radar-chart .circle{fill-opacity:.9}.radar-chart .area,.radar-chart .circle{transition:opacity 300ms,fill-opacity 200ms;opacity:1}.radar-chart .d3-enter,.radar-chart .d3-exit{opacity:0} /* ---- layout ---- */ | |
body { | |
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; | |
margin: 0; | |
padding: 0; | |
font-size: 1em; | |
text-align: center; | |
} | |
.container { | |
width: 1170px; | |
text-align: left; | |
margin: 0 auto; | |
} | |
.row { | |
position: relative; | |
clear: left; | |
} | |
.col-3 { | |
float:left; | |
width:28%; | |
margin-right:2%; | |
} | |
.col-3:last-child { | |
margin-right: 0; | |
} | |
.col-3:last-child:after { | |
content:" "; | |
clear:left; | |
} | |
.col-6 { | |
float:left; | |
width:48%; | |
margin-right:2%; | |
} | |
.col-3:last-child { | |
margin-right: 0; | |
} | |
.col-3:last-child:after { | |
content:" "; | |
clear:left; | |
} | |
.accessibility-box { | |
float:right; | |
width: 200px; | |
} | |
.menu, .menu li { | |
list-style: none; | |
margin: 0; | |
padding: 0; | |
} | |
.menu li { | |
display: inline-block; | |
padding: 10px 15px; | |
} | |
.menu li.active { | |
background-color: #428bca; | |
border-radius: 4px; | |
} | |
.menu li.active a { | |
color: #fff; | |
} | |
/* ---- tabs ---- */ | |
.tab-pane { | |
display:none; | |
} | |
.tab-pane.active { | |
display:block; | |
} | |
/* ----- fonts ----- */ | |
a:hover, a:focus { | |
color: #2a6496; | |
text-decoration: underline; | |
} | |
a:active, a:hover { | |
outline: 0; | |
} | |
a { | |
color: #428bca; | |
text-decoration: none; | |
cursor: pointer; | |
} | |
h1, h2, h3, h4, h5, h6 { | |
font-family: inherit; | |
font-weight: 500; | |
line-height: 1.1; | |
color: inherit; | |
} | |
h4 { | |
font-weight: bold; | |
} | |
/* ---- general styles ----- */ | |
.validate-critical, .critical { | |
background-color:#B01E00 !important; | |
color:#FFF; | |
} | |
.validate-warning, .warning { | |
background-color:#f4b300 !important; | |
color:#333; | |
} | |
.validate-good, .good { | |
background-color:#78ba00 !important; | |
color:#FFF; | |
} | |
.validate-unknown, .unknown { | |
} | |
/* ---- tables ---- */ | |
table { | |
border-spacing: 0; | |
border-collapse: collapse; | |
} | |
.table { | |
width: 100%; | |
max-width: 100%; | |
margin-bottom: 20px; | |
font-size:0.8em; | |
} | |
.table-bordered { | |
border: 1px solid #ddd; | |
} | |
.table thead { | |
font-weight:normal; | |
} | |
.table>thead>tr>th, .table>tbody>tr>th, .table>tfoot>tr>th, .table>thead>tr>td, .table>tbody>tr>td, .table>tfoot>tr>td { | |
padding: 8px; | |
line-height: 1.42857143; | |
vertical-align: top; | |
border-top: 1px solid #ddd; | |
} | |
.table-striped>tbody>tr:nth-child(odd)>td, .table-striped>tbody>tr:nth-child(odd)>th { | |
background-color: #f9f9f9; | |
} | |
.mytable td { | |
width:4%; | |
text-align:center; | |
} | |
.mytable .sep { | |
border-left:1px solid #CCC; | |
} | |
.well { | |
min-height: 20px; | |
padding: 19px; | |
margin-bottom: 20px; | |
background-color: #f5f5f5; | |
border: 1px solid #e3e3e3; | |
border-radius: 4px; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05); | |
box-shadow: inset 0 1px 1px rgba(0,0,0,.05); | |
} | |
/* ---- form ---- */ | |
.form-control { | |
display: block; | |
width: 100%; | |
height: 34px; | |
padding: 6px 12px; | |
font-size: 14px; | |
line-height: 1.42857143; | |
color: #555; | |
background-color: #fff; | |
background-image: none; | |
border: 1px solid #ccc; | |
border-radius: 4px; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075); | |
box-shadow: inset 0 1px 1px rgba(0,0,0,.075); | |
-webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s; | |
-o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; | |
transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; | |
} | |
/* ---- Charts ---- */ | |
#chart-tableview .critical, | |
#chart-tableview .warning, | |
#chart-tableview .good, | |
#chart-tableview .unknown { | |
display:block; | |
text-align: center; | |
} | |
#svg-custom, | |
#svg-maintainability, | |
#svg-abstractness { | |
width:300px; | |
height:300px; | |
} | |
.svg-main { | |
margin: 0 auto; | |
width:960px;; | |
height:960px;; | |
} | |
/* ---- maintainability ---- */ | |
#svg-maintainability svg circle:hover { | |
fill:steelblue !important; | |
} | |
/* ---- relations ---- */ | |
.node { | |
font: 300 11px "Helvetica Neue", Helvetica, Arial, sans-serif; | |
fill: #bbb; | |
} | |
.node:hover { | |
fill: #000; | |
} | |
.link { | |
stroke: steelblue; | |
stroke-opacity: .4; | |
fill: none; | |
pointer-events: none; | |
} | |
.node:hover, | |
.node--source, | |
.node--target { | |
font-weight: 700; | |
} | |
.node--source { | |
fill: #AE113D; | |
} | |
.node--target { | |
fill: #4617B4; | |
} | |
.link--source, | |
.link--target { | |
stroke-opacity: 1; | |
stroke-width: 2px; | |
} | |
.link--source { | |
stroke: #AE113D; | |
} | |
.link--target { | |
stroke: #4617B4; | |
} | |
.relation-source { | |
background-color: #AE113D; | |
} | |
.relation-target { | |
background-color: #4617B4; | |
} | |
/* ---- tooltip ---- */ | |
.tooltip { | |
position: absolute; | |
background: #333; | |
border-radius: 5px; | |
padding: 5px 15px; | |
box-shadow: 1px 1px 3px; | |
text-align: left; | |
color:#FFF; | |
z-index: 4; | |
} | |
/* ---- zoom ---- */ | |
.zoomed { | |
position: fixed; | |
z-index: 2; | |
top: 20px; | |
left: 0; | |
width: 100% !important; | |
height: 95% !important; | |
background: #FFF; | |
} | |
.btn-close { | |
position: fixed; | |
z-index: 3; | |
top: 0; | |
background: #333; | |
width: 100%; | |
text-align: center; | |
margin: 0 auto; | |
padding: 3px 0; | |
height: 20px; | |
lien-height: 20px; | |
} | |
.btn-close a { | |
color: #FFF; | |
} </style> | |
</head> | |
<body> | |
<div class="container"> | |
<h1 id="title">PhpMetrics report - Symfony 2.6</h1> | |
<div class="row"> | |
<div class="well accessibility-box"> | |
<label> | |
<input type="checkbox" onclick="toggleAccessibility()"> I'm colorblind | |
</label> | |
</div> | |
<div class="menu-box"> | |
<ul id="menu" class="menu" > | |
<li id="link-overview" class="active"><a >Overview</a></li> | |
<li id="link-score"><a >Evaluation</a></li> | |
<li id="link-relations"><a >Relations map</a></li> | |
<li id="link-repartition"><a >Repartition</a></li> | |
<li id="link-explore"><a >Explore</a></li> | |
<li id="link-help"><a >Help</a></li> | |
</ul> | |
</div> | |
</div> | |
<div class="tab-content row"> | |
<!-- General details --> | |
<div class="row tab active" id="overview"> | |
<div class="col-3"> | |
<h3>Evaluation</h3> | |
<small><a id="btn-save-maintainability" download="phpmetric-maintainability.svg">Download (as SVG)</a> | <a onclick="return zoom('svg-maintainability', updateMaintenablityChart);">zoom</a></small> | |
<div id="svg-maintainability"><svg /></div> | |
<div class="well "> | |
<h4>Information</h4> | |
<p> | |
Each file is symbolized by a circle. | |
Size of the circle represents the Cyclomatic complexity. | |
Color of the circle represents the Maintainability Index. | |
</p> | |
<p>Large red circles will be probably hard to maintain.</p> | |
</div> | |
</div> | |
<div class=" col-3"> | |
<h3 id="title-custom">Custom chart</h3> | |
<small><a id="btn-save-custom" download="phpmetric-custom.svg">Download (as SVG)</a> | <a onclick="return zoom('svg-custom', updateCustomChart);">zoom</a></small> | |
<div id="svg-custom"><svg /></div> | |
<div class="well"> | |
<h4>Configuration</h4> | |
<p> | |
Select metrics you want to display in chart. | |
</p> | |
<table class="table table-condensed table-bordered"> | |
<tr> | |
<td>X Axis</td> | |
<td>Y Axis</td> | |
<td>Diameter</td> | |
</tr> | |
<tr> | |
<td> | |
<select id="xAxis" class="form-control" onchange="xAxis = this.value; updateCustomChart();"> | |
<option value="afferentCoupling">Afferent Coupling </option> | |
<option value="bugs">Bugs </option> | |
<option value="commentWeight">Comment Weight </option> | |
<option value="cyclomaticComplexity">Cyclomatic Complexity </option> | |
<option value="dc">Dc </option> | |
<option value="difficulty">Difficulty </option> | |
<option value="efferentCoupling">Efferent Coupling </option> | |
<option value="effort">Effort </option> | |
<option value="filename">Filename </option> | |
<option value="instability">Instability </option> | |
<option value="intelligentContent">Intelligent Content </option> | |
<option value="lcom">Lcom </option> | |
<option value="length">Length </option> | |
<option value="loc">Loc </option> | |
<option value="logicalLoc">Logical Loc </option> | |
<option value="maintenabilityIndex">Maintenability Index </option> | |
<option value="maintenabilityIndexWithoutComment">Maintenability Index Without Comment </option> | |
<option value="myerDistance">Myer Distance </option> | |
<option value="myerInterval">Myer Interval </option> | |
<option value="name">Name </option> | |
<option value="noc">Noc </option> | |
<option value="noca">Noca </option> | |
<option value="nocc">Nocc </option> | |
<option value="noi">Noi </option> | |
<option value="nom">Nom </option> | |
<option value="operators">Operators </option> | |
<option value="rdc">Rdc </option> | |
<option value="rsc">Rsc </option> | |
<option value="rsysc">Rsysc </option> | |
<option value="sc">Sc </option> | |
<option value="sysc">Sysc </option> | |
<option value="time">Time </option> | |
<option value="vocabulary">Vocabulary </option> | |
<option value="volume">Volume </option> | |
</select> | |
</td> | |
<td> | |
<select id="yAxis" class="form-control" onchange="yAxis = this.value; updateCustomChart();"> | |
<option value="afferentCoupling">Afferent Coupling </option> | |
<option value="bugs">Bugs </option> | |
<option value="commentWeight">Comment Weight </option> | |
<option value="cyclomaticComplexity">Cyclomatic Complexity </option> | |
<option value="dc">Dc </option> | |
<option value="difficulty">Difficulty </option> | |
<option value="efferentCoupling">Efferent Coupling </option> | |
<option value="effort">Effort </option> | |
<option value="filename">Filename </option> | |
<option value="instability">Instability </option> | |
<option value="intelligentContent">Intelligent Content </option> | |
<option value="lcom">Lcom </option> | |
<option value="length">Length </option> | |
<option value="loc">Loc </option> | |
<option value="logicalLoc">Logical Loc </option> | |
<option value="maintenabilityIndex">Maintenability Index </option> | |
<option value="maintenabilityIndexWithoutComment">Maintenability Index Without Comment </option> | |
<option value="myerDistance">Myer Distance </option> | |
<option value="myerInterval">Myer Interval </option> | |
<option value="name">Name </option> | |
<option value="noc">Noc </option> | |
<option value="noca">Noca </option> | |
<option value="nocc">Nocc </option> | |
<option value="noi">Noi </option> | |
<option value="nom">Nom </option> | |
<option value="operators">Operators </option> | |
<option value="rdc">Rdc </option> | |
<option value="rsc">Rsc </option> | |
<option value="rsysc">Rsysc </option> | |
<option value="sc">Sc </option> | |
<option value="sysc">Sysc </option> | |
<option value="time">Time </option> | |
<option value="vocabulary">Vocabulary </option> | |
<option value="volume">Volume </option> | |
</select> | |
</td> | |
<td> | |
<select id="rAxis" class="form-control" onchange="rAxis = this.value; updateCustomChart();"> | |
<option value="afferentCoupling">Afferent Coupling </option> | |
<option value="bugs">Bugs </option> | |
<option value="commentWeight">Comment Weight </option> | |
<option value="cyclomaticComplexity">Cyclomatic Complexity </option> | |
<option value="dc">Dc </option> | |
<option value="difficulty">Difficulty </option> | |
<option value="efferentCoupling">Efferent Coupling </option> | |
<option value="effort">Effort </option> | |
<option value="filename">Filename </option> | |
<option value="instability">Instability </option> | |
<option value="intelligentContent">Intelligent Content </option> | |
<option value="lcom">Lcom </option> | |
<option value="length">Length </option> | |
<option value="loc">Loc </option> | |
<option value="logicalLoc">Logical Loc </option> | |
<option value="maintenabilityIndex">Maintenability Index </option> | |
<option value="maintenabilityIndexWithoutComment">Maintenability Index Without Comment </option> | |
<option value="myerDistance">Myer Distance </option> | |
<option value="myerInterval">Myer Interval </option> | |
<option value="name">Name </option> | |
<option value="noc">Noc </option> | |
<option value="noca">Noca </option> | |
<option value="nocc">Nocc </option> | |
<option value="noi">Noi </option> | |
<option value="nom">Nom </option> | |
<option value="operators">Operators </option> | |
<option value="rdc">Rdc </option> | |
<option value="rsc">Rsc </option> | |
<option value="rsysc">Rsysc </option> | |
<option value="sc">Sc </option> | |
<option value="sysc">Sysc </option> | |
<option value="time">Time </option> | |
<option value="vocabulary">Vocabulary </option> | |
<option value="volume">Volume </option> | |
</select> | |
</td> | |
</tr> | |
</table> | |
</div> | |
</div> | |
<div class="col-3"> | |
<h3>Abstractness / Instability</h3> | |
<small><a id="btn-save-abstractness" download="phpmetric-abstractness.svg">Download (as SVG)</a> | <a onclick="return zoom('svg-abstractness', updateAbstractnessChart);">zoom</a></small> | |
<div id="svg-abstractness"><svg /></div> | |
</div> | |
</div> | |
<!-- end: General details --> | |
<!-- Score --> | |
<div class="tab" id="score"> | |
<div class="col-sm-12"> | |
<h3>Score</h3> | |
<div class="col-6"> | |
<div id="chart-score"></div> | |
</div> | |
<div class="col-6"> | |
<p> | |
This score is not absolute. This chart is a comparison of your project relative to a representative average of recent PHP projects. | |
</p> | |
<p> | |
Each score is calculated from <acronym title="Cyclomatic complexity, Halstead metrics, Maintainability Index, Comment weight, Difficulty, Logical lines of code...">various criterias</acronym> from 1754 files in your projects. | |
Your score is a note between 0 (poor) and 100 (excellent). | |
</p> | |
<table class="table"> | |
<thead> | |
<tr> | |
<th>Factor</th> | |
<th>Score</th> | |
</tr> | |
</thead> | |
<tbody> | |
<tr> | |
<td>Maintainability</td> | |
<td>78.94 / 100</td> | |
</tr> | |
<tr> | |
<td>Accessibility for new developers</td> | |
<td>43.36 / 100</td> | |
</tr> | |
<tr> | |
<td>Simplicity of algorithms</td> | |
<td>9.71 / 100</td> | |
</tr> | |
<tr> | |
<td>Volume</td> | |
<td>48.09 / 100</td> | |
</tr> | |
<tr> | |
<td>Reducing bug's probability</td> | |
<td>52.46 / 100</td> | |
</tr> | |
</tbody> | |
</table> | |
<p> | |
<strong>This score does not replace the judgement of a human.</strong> | |
</p> | |
</div> | |
</div> | |
</div> | |
<!-- end: Score --> | |
<!-- Relations --> | |
<div class="tab" id="relations"> | |
<h3>Relations</h3> | |
<div class="col-sm-12"> | |
<div class="well"> | |
<p> | |
Class uses another when it calls, constructs, types hint, extends or implements it. | |
</p> | |
<ul> | |
<li><span class="badge relation-source">Used by</span> : this class is used by hovered element.</li> | |
<li><span class="badge relation-target">Uses</span> : this class uses hovered element.</li> | |
</ul> | |
</div> | |
<small><a id="btn-save-relations" download="phpmetric-relations.svg">Download (as SVG)</a></small> | |
<div class="svg-main" id="svg-relations"><svg /></div> | |
</div> | |
</div> | |
<!-- end: Relations --> | |
<!-- Tabular datas --> | |
<div class="tab" id="explore"> | |
<div class="col-sm-12"> | |
<h3>Explore</h3> | |
<div id="chart-tableview"></div> | |
</div> | |
</div> | |
<!-- end: Tabular datas --> | |
<!-- Volume --> | |
<div class="tab" id="repartition"> | |
<h3>Repartition</h3> | |
<div class="col-3"> | |
<table class="table table-striped"> | |
<tbody> | |
<tr> | |
<td>Files</td> | |
<td>1754</td> | |
</tr> | |
<tr> | |
<td>Lines of code</td> | |
<td>194995</td> | |
</tr> | |
<tr> | |
<td>Classes</td> | |
<td>1698</td> | |
</tr> | |
<tr> | |
<td>Interfaces</td> | |
<td> | |
261 | |
<span class="help">( 15 %)</span> | |
</td> | |
</tr> | |
<tr> | |
<td>Concrete classes</td> | |
<td> | |
1337 | |
<span class="help">( 79 %)</span> | |
</td> | |
</tr> | |
<tr> | |
<td>Methods</td> | |
<td> | |
8178 | |
<span class="help">( 4.8 methods by class )</span> | |
</td> | |
</tr> | |
</tbody> | |
</table> | |
</div> | |
<div class="col-3"> | |
<table class="table table-striped"> | |
<tbody> | |
<tr> | |
<td>Relative system complexity</td> | |
<td>7.5</td> | |
</tr> | |
<tr> | |
<td>Relative data complexity</td> | |
<td>0.79</td> | |
</tr> | |
<tr> | |
<td>Relative structure complexity</td> | |
<td>6.71</td> | |
</tr> | |
</tbody> | |
</table> | |
</div> | |
<div class="col-3"> | |
<table class="table table-striped"> | |
<tbody> | |
<tr> | |
<td>Lack of cohesion of methods</td> | |
<td>1.56</td> | |
</tr> | |
<tr> | |
<td>Efferent Coupling</td> | |
<td>2.61</td> | |
</tr> | |
<tr> | |
<td>Afferent Coupling</td> | |
<td>0.17</td> | |
</tr> | |
<tr> | |
<td>Abstractness</td> | |
<td>0.21</td> | |
</tr> | |
</tbody> | |
</table> | |
</div> | |
</div> | |
<!-- end: Volume --> | |
<!-- Help --> | |
<div class="tab" id="help"> | |
<div class="col-sm-12"> | |
<h3>Help</h3> | |
<ul> | |
<li>Online help is available on the <a href="http://www.phpmetrics.org/documentation/index.html">PhpMetrics website</a>.</li> | |
<li>Sources of PhpMetrics are available on <a href="https://github.com/Halleck45/PhpMetrics">Github</a>.</li> | |
<li>PhpMetrics is created by <a href="http://lepine.pro">Jean-François Lépine</a>.</li> | |
</ul> | |
</div> | |
</div> | |
<!-- end: Help --> | |
</div> | |
<div class="row"> | |
Powered by <a href="http://www.phpmetrics.org">PhpMetrics</a> - Copyright Jean-François Lépine | |
<br/> Generated on 1st of April 2015 at 07:02:48 AM | |
</div> | |
</div> | |
<script type="text/javascript"> | |
function validate() { | |
return 'unknown'; | |
} | |
function validate(key, value) { | |
var rule = ruleSet[key]; | |
if(typeof(rule) === 'undefined' || rule === undefined) { | |
return 'unknown'; | |
} | |
// according order | |
if(rule[0] < rule[2]) { | |
// critical < warn < good | |
switch(true) { | |
case value < rule[1]: | |
return 'critical'; | |
case value >= rule[1] && value < rule[2]: | |
return 'warning'; | |
default: | |
return 'good'; | |
} | |
} else { | |
// critical > warn > good | |
switch(true) { | |
case value > rule[1]: | |
return 'critical'; | |
case value < rule[2]: | |
return 'good'; | |
default: | |
return 'warning'; | |
} | |
} | |
} | |
function validateIn(results, key, type) { | |
type = type || 'average'; | |
var value = results[type] ? results[type][key] : results[key]; | |
return validate(key, value); | |
} | |
function textify(string) { | |
string = string.charAt(0).toUpperCase() + string.slice(1); | |
return string.replace(/([a-z0-9])([A-Z])/, "$1 $2"); | |
} | |
function toggleAccessibility() { | |
accessibilityEnabled = !!!accessibilityEnabled; | |
document.getElementById('svg-maintainability').firstElementChild.innerHTML = ''; | |
updateMaintenablityChart(); | |
} | |
function displayTab(e, id) { | |
var i, tabs = document.getElementsByClassName('tab'); | |
for(i = 0; i < tabs.length; i++) { | |
tabs[i].style.display = 'none'; | |
} | |
document.getElementById(id).style.display = 'block'; | |
var child, menu = document.getElementById('menu'); | |
var nodes = menu.childNodes; | |
for(var i = 0; i < nodes.length; i++) { | |
nodes[i].className = ''; | |
} | |
e.className = 'active'; | |
} | |
function zoom(id, callback) { | |
var e = document.getElementById(id); | |
// preserve olds values | |
e.setAttribute('data-original-width', e.offsetWidth); | |
e.setAttribute('data-original-height', e.offsetHeight); | |
// zoom | |
e.className = 'zoomed'; | |
// add close button | |
var close = document.createElement('div'); | |
close.setAttribute('id', 'btn-close'); | |
close.innerHTML = '<a>Close</a>'; | |
document.body.appendChild(close); | |
close.className = 'btn-close' | |
close.onclick = function(id, callback) { | |
return function() { | |
zoomOut(id, callback); | |
} | |
}(id, callback); | |
// apply callback | |
callback(); | |
} | |
function zoomOut(id, callback) { | |
var e = document.getElementById(id); | |
// zoom | |
e.className = ''; | |
// remove close button | |
var close = document.getElementById('btn-close'); | |
close.parentNode.removeChild(close); | |
// apply callback | |
var w = e.getAttribute('data-original-width'); | |
callback(w); | |
} | |
</script> | |
<script type="text/javascript"> | |
d3=function(){function n(n){return null!=n&&!isNaN(n)}function t(n){return n.length}function e(n){for(var t=1;n*t%1;)t*=10;return t}function r(n,t){try{for(var e in t)Object.defineProperty(n.prototype,e,{value:t[e],enumerable:!1})}catch(r){n.prototype=t}}function u(){}function i(){}function o(n,t,e){return function(){var r=e.apply(t,arguments);return r===t?n:r}}function a(n,t){if(t in n)return t;t=t.charAt(0).toUpperCase()+t.substring(1);for(var e=0,r=fa.length;r>e;++e){var u=fa[e]+t;if(u in n)return u}}function c(){}function s(){}function l(n){function t(){for(var t,r=e,u=-1,i=r.length;++u<i;)(t=r[u].on)&&t.apply(this,arguments);return n}var e=[],r=new u;return t.on=function(t,u){var i,o=r.get(t);return arguments.length<2?o&&o.on:(o&&(o.on=null,e=e.slice(0,i=e.indexOf(o)).concat(e.slice(i+1)),r.remove(t)),u&&e.push(r.set(t,{on:u})),n)},t}function f(){Bo.event.preventDefault()}function h(){for(var n,t=Bo.event;n=t.sourceEvent;)t=n;return t}function g(n){for(var t=new s,e=0,r=arguments.length;++e<r;)t[arguments[e]]=l(t);return t.of=function(e,r){return function(u){try{var i=u.sourceEvent=Bo.event;u.target=n,Bo.event=u,t[u.type].apply(e,r)}finally{Bo.event=i}}},t}function p(n){return ga(n,ya),n}function v(n){return"function"==typeof n?n:function(){return pa(n,this)}}function d(n){return"function"==typeof n?n:function(){return va(n,this)}}function m(n,t){function e(){this.removeAttribute(n)}function r(){this.removeAttributeNS(n.space,n.local)}function u(){this.setAttribute(n,t)}function i(){this.setAttributeNS(n.space,n.local,t)}function o(){var e=t.apply(this,arguments);null==e?this.removeAttribute(n):this.setAttribute(n,e)}function a(){var e=t.apply(this,arguments);null==e?this.removeAttributeNS(n.space,n.local):this.setAttributeNS(n.space,n.local,e)}return n=Bo.ns.qualify(n),null==t?n.local?r:e:"function"==typeof t?n.local?a:o:n.local?i:u}function y(n){return n.trim().replace(/\s+/g," ")}function x(n){return new RegExp("(?:^|\\s+)"+Bo.requote(n)+"(?:\\s+|$)","g")}function M(n){return n.trim().split(/^|\s+/)}function _(n,t){function e(){for(var e=-1;++e<u;)n[e](this,t)}function r(){for(var e=-1,r=t.apply(this,arguments);++e<u;)n[e](this,r)}n=M(n).map(b);var u=n.length;return"function"==typeof t?r:e}function b(n){var t=x(n);return function(e,r){if(u=e.classList)return r?u.add(n):u.remove(n);var u=e.getAttribute("class")||"";r?(t.lastIndex=0,t.test(u)||e.setAttribute("class",y(u+" "+n))):e.setAttribute("class",y(u.replace(t," ")))}}function w(n,t,e){function r(){this.style.removeProperty(n)}function u(){this.style.setProperty(n,t,e)}function i(){var r=t.apply(this,arguments);null==r?this.style.removeProperty(n):this.style.setProperty(n,r,e)}return null==t?r:"function"==typeof t?i:u}function S(n,t){function e(){delete this[n]}function r(){this[n]=t}function u(){var e=t.apply(this,arguments);null==e?delete this[n]:this[n]=e}return null==t?e:"function"==typeof t?u:r}function k(n){return"function"==typeof n?n:(n=Bo.ns.qualify(n)).local?function(){return this.ownerDocument.createElementNS(n.space,n.local)}:function(){return this.ownerDocument.createElementNS(this.namespaceURI,n)}}function E(n){return{__data__:n}}function A(n){return function(){return ma(this,n)}}function C(n){return arguments.length||(n=Bo.ascending),function(t,e){return t&&e?n(t.__data__,e.__data__):!t-!e}}function N(n,t){for(var e=0,r=n.length;r>e;e++)for(var u,i=n[e],o=0,a=i.length;a>o;o++)(u=i[o])&&t(u,o,e);return n}function L(n){return ga(n,Ma),n}function T(n){var t,e;return function(r,u,i){var o,a=n[i].update,c=a.length;for(i!=e&&(e=i,t=0),u>=t&&(t=u+1);!(o=a[t])&&++t<c;);return o}}function q(){var n=this.__transition__;n&&++n.active}function z(n,t,e){function r(){var t=this[o];t&&(this.removeEventListener(n,t,t.$),delete this[o])}function u(){var u=s(t,Jo(arguments));r.call(this),this.addEventListener(n,this[o]=u,u.$=e),u._=t}function i(){var t,e=new RegExp("^__on([^.]+)"+Bo.requote(n)+"$");for(var r in this)if(t=r.match(e)){var u=this[r];this.removeEventListener(t[1],u,u.$),delete this[r]}}var o="__on"+n,a=n.indexOf("."),s=R;a>0&&(n=n.substring(0,a));var l=ba.get(n);return l&&(n=l,s=D),a?t?u:r:t?c:i}function R(n,t){return function(e){var r=Bo.event;Bo.event=e,t[0]=this.__data__;try{n.apply(this,t)}finally{Bo.event=r}}}function D(n,t){var e=R(n,t);return function(n){var t=this,r=n.relatedTarget;r&&(r===t||8&r.compareDocumentPosition(t))||e.call(t,n)}}function P(){var n=".dragsuppress-"+ ++Sa,t="click"+n,e=Bo.select(Qo).on("touchmove"+n,f).on("dragstart"+n,f).on("selectstart"+n,f);if(wa){var r=Ko.style,u=r[wa];r[wa]="none"}return function(i){function o(){e.on(t,null)}e.on(n,null),wa&&(r[wa]=u),i&&(e.on(t,function(){f(),o()},!0),setTimeout(o,0))}}function U(n,t){t.changedTouches&&(t=t.changedTouches[0]);var e=n.ownerSVGElement||n;if(e.createSVGPoint){var r=e.createSVGPoint();if(0>ka&&(Qo.scrollX||Qo.scrollY)){e=Bo.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var u=e[0][0].getScreenCTM();ka=!(u.f||u.e),e.remove()}return ka?(r.x=t.pageX,r.y=t.pageY):(r.x=t.clientX,r.y=t.clientY),r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}var i=n.getBoundingClientRect();return[t.clientX-i.left-n.clientLeft,t.clientY-i.top-n.clientTop]}function j(n){return n>0?1:0>n?-1:0}function H(n){return n>1?0:-1>n?Ea:Math.acos(n)}function F(n){return n>1?Ca:-1>n?-Ca:Math.asin(n)}function O(n){return((n=Math.exp(n))-1/n)/2}function Y(n){return((n=Math.exp(n))+1/n)/2}function I(n){return((n=Math.exp(2*n))-1)/(n+1)}function Z(n){return(n=Math.sin(n/2))*n}function V(){}function X(n,t,e){return new $(n,t,e)}function $(n,t,e){this.h=n,this.s=t,this.l=e}function B(n,t,e){function r(n){return n>360?n-=360:0>n&&(n+=360),60>n?i+(o-i)*n/60:180>n?o:240>n?i+(o-i)*(240-n)/60:i}function u(n){return Math.round(255*r(n))}var i,o;return n=isNaN(n)?0:(n%=360)<0?n+360:n,t=isNaN(t)?0:0>t?0:t>1?1:t,e=0>e?0:e>1?1:e,o=.5>=e?e*(1+t):e+t-e*t,i=2*e-o,at(u(n+120),u(n),u(n-120))}function W(n,t,e){return new J(n,t,e)}function J(n,t,e){this.h=n,this.c=t,this.l=e}function G(n,t,e){return isNaN(n)&&(n=0),isNaN(t)&&(t=0),K(e,Math.cos(n*=Ta)*t,Math.sin(n)*t)}function K(n,t,e){return new Q(n,t,e)}function Q(n,t,e){this.l=n,this.a=t,this.b=e}function nt(n,t,e){var r=(n+16)/116,u=r+t/500,i=r-e/200;return u=et(u)*Ya,r=et(r)*Ia,i=et(i)*Za,at(ut(3.2404542*u-1.5371385*r-.4985314*i),ut(-.969266*u+1.8760108*r+.041556*i),ut(.0556434*u-.2040259*r+1.0572252*i))}function tt(n,t,e){return n>0?W(Math.atan2(e,t)*qa,Math.sqrt(t*t+e*e),n):W(0/0,0/0,n)}function et(n){return n>.206893034?n*n*n:(n-4/29)/7.787037}function rt(n){return n>.008856?Math.pow(n,1/3):7.787037*n+4/29}function ut(n){return Math.round(255*(.00304>=n?12.92*n:1.055*Math.pow(n,1/2.4)-.055))}function it(n){return at(n>>16,255&n>>8,255&n)}function ot(n){return it(n)+""}function at(n,t,e){return new ct(n,t,e)}function ct(n,t,e){this.r=n,this.g=t,this.b=e}function st(n){return 16>n?"0"+Math.max(0,n).toString(16):Math.min(255,n).toString(16)}function lt(n,t,e){var r,u,i,o=0,a=0,c=0;if(r=/([a-z]+)\((.*)\)/i.exec(n))switch(u=r[2].split(","),r[1]){case"hsl":return e(parseFloat(u[0]),parseFloat(u[1])/100,parseFloat(u[2])/100);case"rgb":return t(pt(u[0]),pt(u[1]),pt(u[2]))}return(i=$a.get(n))?t(i.r,i.g,i.b):(null!=n&&"#"===n.charAt(0)&&(4===n.length?(o=n.charAt(1),o+=o,a=n.charAt(2),a+=a,c=n.charAt(3),c+=c):7===n.length&&(o=n.substring(1,3),a=n.substring(3,5),c=n.substring(5,7)),o=parseInt(o,16),a=parseInt(a,16),c=parseInt(c,16)),t(o,a,c))}function ft(n,t,e){var r,u,i=Math.min(n/=255,t/=255,e/=255),o=Math.max(n,t,e),a=o-i,c=(o+i)/2;return a?(u=.5>c?a/(o+i):a/(2-o-i),r=n==o?(t-e)/a+(e>t?6:0):t==o?(e-n)/a+2:(n-t)/a+4,r*=60):(r=0/0,u=c>0&&1>c?0:r),X(r,u,c)}function ht(n,t,e){n=gt(n),t=gt(t),e=gt(e);var r=rt((.4124564*n+.3575761*t+.1804375*e)/Ya),u=rt((.2126729*n+.7151522*t+.072175*e)/Ia),i=rt((.0193339*n+.119192*t+.9503041*e)/Za);return K(116*u-16,500*(r-u),200*(u-i))}function gt(n){return(n/=255)<=.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)}function pt(n){var t=parseFloat(n);return"%"===n.charAt(n.length-1)?Math.round(2.55*t):t}function vt(n){return"function"==typeof n?n:function(){return n}}function dt(n){return n}function mt(n){return function(t,e,r){return 2===arguments.length&&"function"==typeof e&&(r=e,e=null),yt(t,e,n,r)}}function yt(n,t,e,r){function u(){var n,t=c.status;if(!t&&c.responseText||t>=200&&300>t||304===t){try{n=e.call(i,c)}catch(r){return o.error.call(i,r),void 0}o.load.call(i,n)}else o.error.call(i,c)}var i={},o=Bo.dispatch("beforesend","progress","load","error"),a={},c=new XMLHttpRequest,s=null;return!Qo.XDomainRequest||"withCredentials"in c||!/^(http(s)?:)?\/\//.test(n)||(c=new XDomainRequest),"onload"in c?c.onload=c.onerror=u:c.onreadystatechange=function(){c.readyState>3&&u()},c.onprogress=function(n){var t=Bo.event;Bo.event=n;try{o.progress.call(i,c)}finally{Bo.event=t}},i.header=function(n,t){return n=(n+"").toLowerCase(),arguments.length<2?a[n]:(null==t?delete a[n]:a[n]=t+"",i)},i.mimeType=function(n){return arguments.length?(t=null==n?null:n+"",i):t},i.responseType=function(n){return arguments.length?(s=n,i):s},i.response=function(n){return e=n,i},["get","post"].forEach(function(n){i[n]=function(){return i.send.apply(i,[n].concat(Jo(arguments)))}}),i.send=function(e,r,u){if(2===arguments.length&&"function"==typeof r&&(u=r,r=null),c.open(e,n,!0),null==t||"accept"in a||(a.accept=t+",*/*"),c.setRequestHeader)for(var l in a)c.setRequestHeader(l,a[l]);return null!=t&&c.overrideMimeType&&c.overrideMimeType(t),null!=s&&(c.responseType=s),null!=u&&i.on("error",u).on("load",function(n){u(null,n)}),o.beforesend.call(i,c),c.send(null==r?null:r),i},i.abort=function(){return c.abort(),i},Bo.rebind(i,o,"on"),null==r?i:i.get(xt(r))}function xt(n){return 1===n.length?function(t,e){n(null==t?e:null)}:n}function Mt(){var n=_t(),t=bt()-n;t>24?(isFinite(t)&&(clearTimeout(Ga),Ga=setTimeout(Mt,t)),Ja=0):(Ja=1,Qa(Mt))}function _t(){var n=Date.now();for(Ka=Ba;Ka;)n>=Ka.t&&(Ka.f=Ka.c(n-Ka.t)),Ka=Ka.n;return n}function bt(){for(var n,t=Ba,e=1/0;t;)t.f?t=n?n.n=t.n:Ba=t.n:(t.t<e&&(e=t.t),t=(n=t).n);return Wa=n,e}function wt(n,t){var e=Math.pow(10,3*ca(8-t));return{scale:t>8?function(n){return n/e}:function(n){return n*e},symbol:n}}function St(n,t){return t-(n?Math.ceil(Math.log(n)/Math.LN10):1)}function kt(n){return n+""}function Et(){}function At(n,t,e){var r=e.s=n+t,u=r-n,i=r-u;e.t=n-i+(t-u)}function Ct(n,t){n&&fc.hasOwnProperty(n.type)&&fc[n.type](n,t)}function Nt(n,t,e){var r,u=-1,i=n.length-e;for(t.lineStart();++u<i;)r=n[u],t.point(r[0],r[1],r[2]);t.lineEnd()}function Lt(n,t){var e=-1,r=n.length;for(t.polygonStart();++e<r;)Nt(n[e],t,1);t.polygonEnd()}function Tt(){function n(n,t){n*=Ta,t=t*Ta/2+Ea/4;var e=n-r,o=Math.cos(t),a=Math.sin(t),c=i*a,s=u*o+c*Math.cos(e),l=c*Math.sin(e);gc.add(Math.atan2(l,s)),r=n,u=o,i=a}var t,e,r,u,i;pc.point=function(o,a){pc.point=n,r=(t=o)*Ta,u=Math.cos(a=(e=a)*Ta/2+Ea/4),i=Math.sin(a)},pc.lineEnd=function(){n(t,e)}}function qt(n){var t=n[0],e=n[1],r=Math.cos(e);return[r*Math.cos(t),r*Math.sin(t),Math.sin(e)]}function zt(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]}function Rt(n,t){return[n[1]*t[2]-n[2]*t[1],n[2]*t[0]-n[0]*t[2],n[0]*t[1]-n[1]*t[0]]}function Dt(n,t){n[0]+=t[0],n[1]+=t[1],n[2]+=t[2]}function Pt(n,t){return[n[0]*t,n[1]*t,n[2]*t]}function Ut(n){var t=Math.sqrt(n[0]*n[0]+n[1]*n[1]+n[2]*n[2]);n[0]/=t,n[1]/=t,n[2]/=t}function jt(n){return[Math.atan2(n[1],n[0]),F(n[2])]}function Ht(n,t){return ca(n[0]-t[0])<Na&&ca(n[1]-t[1])<Na}function Ft(n,t){n*=Ta;var e=Math.cos(t*=Ta);Ot(e*Math.cos(n),e*Math.sin(n),Math.sin(t))}function Ot(n,t,e){++vc,mc+=(n-mc)/vc,yc+=(t-yc)/vc,xc+=(e-xc)/vc}function Yt(){function n(n,u){n*=Ta;var i=Math.cos(u*=Ta),o=i*Math.cos(n),a=i*Math.sin(n),c=Math.sin(u),s=Math.atan2(Math.sqrt((s=e*c-r*a)*s+(s=r*o-t*c)*s+(s=t*a-e*o)*s),t*o+e*a+r*c);dc+=s,Mc+=s*(t+(t=o)),_c+=s*(e+(e=a)),bc+=s*(r+(r=c)),Ot(t,e,r)}var t,e,r;Ec.point=function(u,i){u*=Ta;var o=Math.cos(i*=Ta);t=o*Math.cos(u),e=o*Math.sin(u),r=Math.sin(i),Ec.point=n,Ot(t,e,r)}}function It(){Ec.point=Ft}function Zt(){function n(n,t){n*=Ta;var e=Math.cos(t*=Ta),o=e*Math.cos(n),a=e*Math.sin(n),c=Math.sin(t),s=u*c-i*a,l=i*o-r*c,f=r*a-u*o,h=Math.sqrt(s*s+l*l+f*f),g=r*o+u*a+i*c,p=h&&-H(g)/h,v=Math.atan2(h,g);wc+=p*s,Sc+=p*l,kc+=p*f,dc+=v,Mc+=v*(r+(r=o)),_c+=v*(u+(u=a)),bc+=v*(i+(i=c)),Ot(r,u,i)}var t,e,r,u,i;Ec.point=function(o,a){t=o,e=a,Ec.point=n,o*=Ta;var c=Math.cos(a*=Ta);r=c*Math.cos(o),u=c*Math.sin(o),i=Math.sin(a),Ot(r,u,i)},Ec.lineEnd=function(){n(t,e),Ec.lineEnd=It,Ec.point=Ft}}function Vt(){return!0}function Xt(n,t,e,r,u){var i=[],o=[];if(n.forEach(function(n){if(!((t=n.length-1)<=0)){var t,e=n[0],r=n[t];if(Ht(e,r)){u.lineStart();for(var a=0;t>a;++a)u.point((e=n[a])[0],e[1]);return u.lineEnd(),void 0}var c=new Bt(e,n,null,!0),s=new Bt(e,null,c,!1);c.o=s,i.push(c),o.push(s),c=new Bt(r,n,null,!1),s=new Bt(r,null,c,!0),c.o=s,i.push(c),o.push(s)}}),o.sort(t),$t(i),$t(o),i.length){for(var a=0,c=e,s=o.length;s>a;++a)o[a].e=c=!c;for(var l,f,h=i[0];;){for(var g=h,p=!0;g.v;)if((g=g.n)===h)return;l=g.z,u.lineStart();do{if(g.v=g.o.v=!0,g.e){if(p)for(var a=0,s=l.length;s>a;++a)u.point((f=l[a])[0],f[1]);else r(g.x,g.n.x,1,u);g=g.n}else{if(p){l=g.p.z;for(var a=l.length-1;a>=0;--a)u.point((f=l[a])[0],f[1])}else r(g.x,g.p.x,-1,u);g=g.p}g=g.o,l=g.z,p=!p}while(!g.v);u.lineEnd()}}}function $t(n){if(t=n.length){for(var t,e,r=0,u=n[0];++r<t;)u.n=e=n[r],e.p=u,u=e;u.n=e=n[0],e.p=u}}function Bt(n,t,e,r){this.x=n,this.z=t,this.o=e,this.e=r,this.v=!1,this.n=this.p=null}function Wt(n,t,e,r){return function(u,i){function o(t,e){var r=u(t,e);n(t=r[0],e=r[1])&&i.point(t,e)}function a(n,t){var e=u(n,t);d.point(e[0],e[1])}function c(){y.point=a,d.lineStart()}function s(){y.point=o,d.lineEnd()}function l(n,t){v.push([n,t]);var e=u(n,t);M.point(e[0],e[1])}function f(){M.lineStart(),v=[]}function h(){l(v[0][0],v[0][1]),M.lineEnd();var n,t=M.clean(),e=x.buffer(),r=e.length;if(v.pop(),p.push(v),v=null,r){if(1&t){n=e[0];var u,r=n.length-1,o=-1;for(i.lineStart();++o<r;)i.point((u=n[o])[0],u[1]);return i.lineEnd(),void 0}r>1&&2&t&&e.push(e.pop().concat(e.shift())),g.push(e.filter(Jt))}}var g,p,v,d=t(i),m=u.invert(r[0],r[1]),y={point:o,lineStart:c,lineEnd:s,polygonStart:function(){y.point=l,y.lineStart=f,y.lineEnd=h,g=[],p=[],i.polygonStart()},polygonEnd:function(){y.point=o,y.lineStart=c,y.lineEnd=s,g=Bo.merge(g);var n=Qt(m,p);g.length?Xt(g,Kt,n,e,i):n&&(i.lineStart(),e(null,null,1,i),i.lineEnd()),i.polygonEnd(),g=p=null},sphere:function(){i.polygonStart(),i.lineStart(),e(null,null,1,i),i.lineEnd(),i.polygonEnd()}},x=Gt(),M=t(x);return y}}function Jt(n){return n.length>1}function Gt(){var n,t=[];return{lineStart:function(){t.push(n=[])},point:function(t,e){n.push([t,e])},lineEnd:c,buffer:function(){var e=t;return t=[],n=null,e},rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))}}}function Kt(n,t){return((n=n.x)[0]<0?n[1]-Ca-Na:Ca-n[1])-((t=t.x)[0]<0?t[1]-Ca-Na:Ca-t[1])}function Qt(n,t){var e=n[0],r=n[1],u=[Math.sin(e),-Math.cos(e),0],i=0,o=0;gc.reset();for(var a=0,c=t.length;c>a;++a){var s=t[a],l=s.length;if(l)for(var f=s[0],h=f[0],g=f[1]/2+Ea/4,p=Math.sin(g),v=Math.cos(g),d=1;;){d===l&&(d=0),n=s[d];var m=n[0],y=n[1]/2+Ea/4,x=Math.sin(y),M=Math.cos(y),_=m-h,b=ca(_)>Ea,w=p*x;if(gc.add(Math.atan2(w*Math.sin(_),v*M+w*Math.cos(_))),i+=b?_+(_>=0?Aa:-Aa):_,b^h>=e^m>=e){var S=Rt(qt(f),qt(n));Ut(S);var k=Rt(u,S);Ut(k);var E=(b^_>=0?-1:1)*F(k[2]);(r>E||r===E&&(S[0]||S[1]))&&(o+=b^_>=0?1:-1)}if(!d++)break;h=m,p=x,v=M,f=n}}return(-Na>i||Na>i&&0>gc)^1&o}function ne(n){var t,e=0/0,r=0/0,u=0/0;return{lineStart:function(){n.lineStart(),t=1},point:function(i,o){var a=i>0?Ea:-Ea,c=ca(i-e);ca(c-Ea)<Na?(n.point(e,r=(r+o)/2>0?Ca:-Ca),n.point(u,r),n.lineEnd(),n.lineStart(),n.point(a,r),n.point(i,r),t=0):u!==a&&c>=Ea&&(ca(e-u)<Na&&(e-=u*Na),ca(i-a)<Na&&(i-=a*Na),r=te(e,r,i,o),n.point(u,r),n.lineEnd(),n.lineStart(),n.point(a,r),t=0),n.point(e=i,r=o),u=a},lineEnd:function(){n.lineEnd(),e=r=0/0},clean:function(){return 2-t}}}function te(n,t,e,r){var u,i,o=Math.sin(n-e);return ca(o)>Na?Math.atan((Math.sin(t)*(i=Math.cos(r))*Math.sin(e)-Math.sin(r)*(u=Math.cos(t))*Math.sin(n))/(u*i*o)):(t+r)/2}function ee(n,t,e,r){var u;if(null==n)u=e*Ca,r.point(-Ea,u),r.point(0,u),r.point(Ea,u),r.point(Ea,0),r.point(Ea,-u),r.point(0,-u),r.point(-Ea,-u),r.point(-Ea,0),r.point(-Ea,u);else if(ca(n[0]-t[0])>Na){var i=n[0]<t[0]?Ea:-Ea;u=e*i/2,r.point(-i,u),r.point(0,u),r.point(i,u)}else r.point(t[0],t[1])}function re(n){function t(n,t){return Math.cos(n)*Math.cos(t)>i}function e(n){var e,i,c,s,l;return{lineStart:function(){s=c=!1,l=1},point:function(f,h){var g,p=[f,h],v=t(f,h),d=o?v?0:u(f,h):v?u(f+(0>f?Ea:-Ea),h):0;if(!e&&(s=c=v)&&n.lineStart(),v!==c&&(g=r(e,p),(Ht(e,g)||Ht(p,g))&&(p[0]+=Na,p[1]+=Na,v=t(p[0],p[1]))),v!==c)l=0,v?(n.lineStart(),g=r(p,e),n.point(g[0],g[1])):(g=r(e,p),n.point(g[0],g[1]),n.lineEnd()),e=g;else if(a&&e&&o^v){var m;d&i||!(m=r(p,e,!0))||(l=0,o?(n.lineStart(),n.point(m[0][0],m[0][1]),n.point(m[1][0],m[1][1]),n.lineEnd()):(n.point(m[1][0],m[1][1]),n.lineEnd(),n.lineStart(),n.point(m[0][0],m[0][1])))}!v||e&&Ht(e,p)||n.point(p[0],p[1]),e=p,c=v,i=d},lineEnd:function(){c&&n.lineEnd(),e=null},clean:function(){return l|(s&&c)<<1}}}function r(n,t,e){var r=qt(n),u=qt(t),o=[1,0,0],a=Rt(r,u),c=zt(a,a),s=a[0],l=c-s*s;if(!l)return!e&&n;var f=i*c/l,h=-i*s/l,g=Rt(o,a),p=Pt(o,f),v=Pt(a,h);Dt(p,v);var d=g,m=zt(p,d),y=zt(d,d),x=m*m-y*(zt(p,p)-1);if(!(0>x)){var M=Math.sqrt(x),_=Pt(d,(-m-M)/y);if(Dt(_,p),_=jt(_),!e)return _;var b,w=n[0],S=t[0],k=n[1],E=t[1];w>S&&(b=w,w=S,S=b);var A=S-w,C=ca(A-Ea)<Na,N=C||Na>A;if(!C&&k>E&&(b=k,k=E,E=b),N?C?k+E>0^_[1]<(ca(_[0]-w)<Na?k:E):k<=_[1]&&_[1]<=E:A>Ea^(w<=_[0]&&_[0]<=S)){var L=Pt(d,(-m+M)/y);return Dt(L,p),[_,jt(L)]}}}function u(t,e){var r=o?n:Ea-n,u=0;return-r>t?u|=1:t>r&&(u|=2),-r>e?u|=4:e>r&&(u|=8),u}var i=Math.cos(n),o=i>0,a=ca(i)>Na,c=Te(n,6*Ta);return Wt(t,e,c,o?[0,-n]:[-Ea,n-Ea])}function ue(n,t,e,r){return function(u){var i,o=u.a,a=u.b,c=o.x,s=o.y,l=a.x,f=a.y,h=0,g=1,p=l-c,v=f-s;if(i=n-c,p||!(i>0)){if(i/=p,0>p){if(h>i)return;g>i&&(g=i)}else if(p>0){if(i>g)return;i>h&&(h=i)}if(i=e-c,p||!(0>i)){if(i/=p,0>p){if(i>g)return;i>h&&(h=i)}else if(p>0){if(h>i)return;g>i&&(g=i)}if(i=t-s,v||!(i>0)){if(i/=v,0>v){if(h>i)return;g>i&&(g=i)}else if(v>0){if(i>g)return;i>h&&(h=i)}if(i=r-s,v||!(0>i)){if(i/=v,0>v){if(i>g)return;i>h&&(h=i)}else if(v>0){if(h>i)return;g>i&&(g=i)}return h>0&&(u.a={x:c+h*p,y:s+h*v}),1>g&&(u.b={x:c+g*p,y:s+g*v}),u}}}}}}function ie(n,t,e,r){function u(r,u){return ca(r[0]-n)<Na?u>0?0:3:ca(r[0]-e)<Na?u>0?2:1:ca(r[1]-t)<Na?u>0?1:0:u>0?3:2}function i(n,t){return o(n.x,t.x)}function o(n,t){var e=u(n,1),r=u(t,1);return e!==r?e-r:0===e?t[1]-n[1]:1===e?n[0]-t[0]:2===e?n[1]-t[1]:t[0]-n[0]}return function(a){function c(n){for(var t=0,e=m.length,r=n[1],u=0;e>u;++u)for(var i,o=1,a=m[u],c=a.length,l=a[0];c>o;++o)i=a[o],l[1]<=r?i[1]>r&&s(l,i,n)>0&&++t:i[1]<=r&&s(l,i,n)<0&&--t,l=i;return 0!==t}function s(n,t,e){return(t[0]-n[0])*(e[1]-n[1])-(e[0]-n[0])*(t[1]-n[1])}function l(i,a,c,s){var l=0,f=0;if(null==i||(l=u(i,c))!==(f=u(a,c))||o(i,a)<0^c>0){do s.point(0===l||3===l?n:e,l>1?r:t);while((l=(l+c+4)%4)!==f)}else s.point(a[0],a[1])}function f(u,i){return u>=n&&e>=u&&i>=t&&r>=i}function h(n,t){f(n,t)&&a.point(n,t)}function g(){L.point=v,m&&m.push(y=[]),k=!0,S=!1,b=w=0/0}function p(){d&&(v(x,M),_&&S&&C.rejoin(),d.push(C.buffer())),L.point=h,S&&a.lineEnd()}function v(n,t){n=Math.max(-Cc,Math.min(Cc,n)),t=Math.max(-Cc,Math.min(Cc,t));var e=f(n,t);if(m&&y.push([n,t]),k)x=n,M=t,_=e,k=!1,e&&(a.lineStart(),a.point(n,t));else if(e&&S)a.point(n,t);else{var r={a:{x:b,y:w},b:{x:n,y:t}};N(r)?(S||(a.lineStart(),a.point(r.a.x,r.a.y)),a.point(r.b.x,r.b.y),e||a.lineEnd(),E=!1):e&&(a.lineStart(),a.point(n,t),E=!1)}b=n,w=t,S=e}var d,m,y,x,M,_,b,w,S,k,E,A=a,C=Gt(),N=ue(n,t,e,r),L={point:h,lineStart:g,lineEnd:p,polygonStart:function(){a=C,d=[],m=[],E=!0},polygonEnd:function(){a=A,d=Bo.merge(d);var t=c([n,r]),e=E&&t,u=d.length;(e||u)&&(a.polygonStart(),e&&(a.lineStart(),l(null,null,1,a),a.lineEnd()),u&&Xt(d,i,t,l,a),a.polygonEnd()),d=m=y=null}};return L}}function oe(n,t){function e(e,r){return e=n(e,r),t(e[0],e[1])}return n.invert&&t.invert&&(e.invert=function(e,r){return e=t.invert(e,r),e&&n.invert(e[0],e[1])}),e}function ae(n){var t=0,e=Ea/3,r=we(n),u=r(t,e);return u.parallels=function(n){return arguments.length?r(t=n[0]*Ea/180,e=n[1]*Ea/180):[180*(t/Ea),180*(e/Ea)]},u}function ce(n,t){function e(n,t){var e=Math.sqrt(i-2*u*Math.sin(t))/u;return[e*Math.sin(n*=u),o-e*Math.cos(n)]}var r=Math.sin(n),u=(r+Math.sin(t))/2,i=1+r*(2*u-r),o=Math.sqrt(i)/u;return e.invert=function(n,t){var e=o-t;return[Math.atan2(n,e)/u,F((i-(n*n+e*e)*u*u)/(2*u))]},e}function se(){function n(n,t){Lc+=u*n-r*t,r=n,u=t}var t,e,r,u;Dc.point=function(i,o){Dc.point=n,t=r=i,e=u=o},Dc.lineEnd=function(){n(t,e)}}function le(n,t){Tc>n&&(Tc=n),n>zc&&(zc=n),qc>t&&(qc=t),t>Rc&&(Rc=t)}function fe(){function n(n,t){o.push("M",n,",",t,i)}function t(n,t){o.push("M",n,",",t),a.point=e}function e(n,t){o.push("L",n,",",t)}function r(){a.point=n}function u(){o.push("Z")}var i=he(4.5),o=[],a={point:n,lineStart:function(){a.point=t},lineEnd:r,polygonStart:function(){a.lineEnd=u},polygonEnd:function(){a.lineEnd=r,a.point=n},pointRadius:function(n){return i=he(n),a},result:function(){if(o.length){var n=o.join("");return o=[],n}}};return a}function he(n){return"m0,"+n+"a"+n+","+n+" 0 1,1 0,"+-2*n+"a"+n+","+n+" 0 1,1 0,"+2*n+"z"}function ge(n,t){mc+=n,yc+=t,++xc}function pe(){function n(n,r){var u=n-t,i=r-e,o=Math.sqrt(u*u+i*i);Mc+=o*(t+n)/2,_c+=o*(e+r)/2,bc+=o,ge(t=n,e=r)}var t,e;Uc.point=function(r,u){Uc.point=n,ge(t=r,e=u)}}function ve(){Uc.point=ge}function de(){function n(n,t){var e=n-r,i=t-u,o=Math.sqrt(e*e+i*i);Mc+=o*(r+n)/2,_c+=o*(u+t)/2,bc+=o,o=u*n-r*t,wc+=o*(r+n),Sc+=o*(u+t),kc+=3*o,ge(r=n,u=t)}var t,e,r,u;Uc.point=function(i,o){Uc.point=n,ge(t=r=i,e=u=o)},Uc.lineEnd=function(){n(t,e)}}function me(n){function t(t,e){n.moveTo(t,e),n.arc(t,e,o,0,Aa)}function e(t,e){n.moveTo(t,e),a.point=r}function r(t,e){n.lineTo(t,e)}function u(){a.point=t}function i(){n.closePath()}var o=4.5,a={point:t,lineStart:function(){a.point=e},lineEnd:u,polygonStart:function(){a.lineEnd=i},polygonEnd:function(){a.lineEnd=u,a.point=t},pointRadius:function(n){return o=n,a},result:c};return a}function ye(n){function t(n){return(a?r:e)(n)}function e(t){return _e(t,function(e,r){e=n(e,r),t.point(e[0],e[1])})}function r(t){function e(e,r){e=n(e,r),t.point(e[0],e[1])}function r(){x=0/0,S.point=i,t.lineStart()}function i(e,r){var i=qt([e,r]),o=n(e,r);u(x,M,y,_,b,w,x=o[0],M=o[1],y=e,_=i[0],b=i[1],w=i[2],a,t),t.point(x,M)}function o(){S.point=e,t.lineEnd()}function c(){r(),S.point=s,S.lineEnd=l}function s(n,t){i(f=n,h=t),g=x,p=M,v=_,d=b,m=w,S.point=i}function l(){u(x,M,y,_,b,w,g,p,f,v,d,m,a,t),S.lineEnd=o,o()}var f,h,g,p,v,d,m,y,x,M,_,b,w,S={point:e,lineStart:r,lineEnd:o,polygonStart:function(){t.polygonStart(),S.lineStart=c},polygonEnd:function(){t.polygonEnd(),S.lineStart=r}};return S}function u(t,e,r,a,c,s,l,f,h,g,p,v,d,m){var y=l-t,x=f-e,M=y*y+x*x;if(M>4*i&&d--){var _=a+g,b=c+p,w=s+v,S=Math.sqrt(_*_+b*b+w*w),k=Math.asin(w/=S),E=ca(ca(w)-1)<Na||ca(r-h)<Na?(r+h)/2:Math.atan2(b,_),A=n(E,k),C=A[0],N=A[1],L=C-t,T=N-e,q=x*L-y*T;(q*q/M>i||ca((y*L+x*T)/M-.5)>.3||o>a*g+c*p+s*v)&&(u(t,e,r,a,c,s,C,N,E,_/=S,b/=S,w,d,m),m.point(C,N),u(C,N,E,_,b,w,l,f,h,g,p,v,d,m))}}var i=.5,o=Math.cos(30*Ta),a=16;return t.precision=function(n){return arguments.length?(a=(i=n*n)>0&&16,t):Math.sqrt(i)},t}function xe(n){var t=ye(function(t,e){return n([t*qa,e*qa])});return function(n){return Se(t(n))}}function Me(n){this.stream=n}function _e(n,t){return{point:t,sphere:function(){n.sphere()},lineStart:function(){n.lineStart()},lineEnd:function(){n.lineEnd()},polygonStart:function(){n.polygonStart()},polygonEnd:function(){n.polygonEnd()}}}function be(n){return we(function(){return n})()}function we(n){function t(n){return n=a(n[0]*Ta,n[1]*Ta),[n[0]*h+c,s-n[1]*h]}function e(n){return n=a.invert((n[0]-c)/h,(s-n[1])/h),n&&[n[0]*qa,n[1]*qa]}function r(){a=oe(o=Ae(m,y,x),i);var n=i(v,d);return c=g-n[0]*h,s=p+n[1]*h,u()}function u(){return l&&(l.valid=!1,l=null),t}var i,o,a,c,s,l,f=ye(function(n,t){return n=i(n,t),[n[0]*h+c,s-n[1]*h]}),h=150,g=480,p=250,v=0,d=0,m=0,y=0,x=0,M=Ac,_=dt,b=null,w=null;return t.stream=function(n){return l&&(l.valid=!1),l=Se(M(o,f(_(n)))),l.valid=!0,l},t.clipAngle=function(n){return arguments.length?(M=null==n?(b=n,Ac):re((b=+n)*Ta),u()):b},t.clipExtent=function(n){return arguments.length?(w=n,_=n?ie(n[0][0],n[0][1],n[1][0],n[1][1]):dt,u()):w},t.scale=function(n){return arguments.length?(h=+n,r()):h},t.translate=function(n){return arguments.length?(g=+n[0],p=+n[1],r()):[g,p]},t.center=function(n){return arguments.length?(v=n[0]%360*Ta,d=n[1]%360*Ta,r()):[v*qa,d*qa]},t.rotate=function(n){return arguments.length?(m=n[0]%360*Ta,y=n[1]%360*Ta,x=n.length>2?n[2]%360*Ta:0,r()):[m*qa,y*qa,x*qa]},Bo.rebind(t,f,"precision"),function(){return i=n.apply(this,arguments),t.invert=i.invert&&e,r()}}function Se(n){return _e(n,function(t,e){n.point(t*Ta,e*Ta)})}function ke(n,t){return[n,t]}function Ee(n,t){return[n>Ea?n-Aa:-Ea>n?n+Aa:n,t]}function Ae(n,t,e){return n?t||e?oe(Ne(n),Le(t,e)):Ne(n):t||e?Le(t,e):Ee}function Ce(n){return function(t,e){return t+=n,[t>Ea?t-Aa:-Ea>t?t+Aa:t,e]}}function Ne(n){var t=Ce(n);return t.invert=Ce(-n),t}function Le(n,t){function e(n,t){var e=Math.cos(t),a=Math.cos(n)*e,c=Math.sin(n)*e,s=Math.sin(t),l=s*r+a*u;return[Math.atan2(c*i-l*o,a*r-s*u),F(l*i+c*o)]}var r=Math.cos(n),u=Math.sin(n),i=Math.cos(t),o=Math.sin(t);return e.invert=function(n,t){var e=Math.cos(t),a=Math.cos(n)*e,c=Math.sin(n)*e,s=Math.sin(t),l=s*i-c*o;return[Math.atan2(c*i+s*o,a*r+l*u),F(l*r-a*u)]},e}function Te(n,t){var e=Math.cos(n),r=Math.sin(n);return function(u,i,o,a){var c=o*t;null!=u?(u=qe(e,u),i=qe(e,i),(o>0?i>u:u>i)&&(u+=o*Aa)):(u=n+o*Aa,i=n-.5*c);for(var s,l=u;o>0?l>i:i>l;l-=c)a.point((s=jt([e,-r*Math.cos(l),-r*Math.sin(l)]))[0],s[1])}}function qe(n,t){var e=qt(t);e[0]-=n,Ut(e);var r=H(-e[1]);return((-e[2]<0?-r:r)+2*Math.PI-Na)%(2*Math.PI)}function ze(n,t,e){var r=Bo.range(n,t-Na,e).concat(t);return function(n){return r.map(function(t){return[n,t]})}}function Re(n,t,e){var r=Bo.range(n,t-Na,e).concat(t);return function(n){return r.map(function(t){return[t,n]})}}function De(n){return n.source}function Pe(n){return n.target}function Ue(n,t,e,r){var u=Math.cos(t),i=Math.sin(t),o=Math.cos(r),a=Math.sin(r),c=u*Math.cos(n),s=u*Math.sin(n),l=o*Math.cos(e),f=o*Math.sin(e),h=2*Math.asin(Math.sqrt(Z(r-t)+u*o*Z(e-n))),g=1/Math.sin(h),p=h?function(n){var t=Math.sin(n*=h)*g,e=Math.sin(h-n)*g,r=e*c+t*l,u=e*s+t*f,o=e*i+t*a;return[Math.atan2(u,r)*qa,Math.atan2(o,Math.sqrt(r*r+u*u))*qa]}:function(){return[n*qa,t*qa]};return p.distance=h,p}function je(){function n(n,u){var i=Math.sin(u*=Ta),o=Math.cos(u),a=ca((n*=Ta)-t),c=Math.cos(a);jc+=Math.atan2(Math.sqrt((a=o*Math.sin(a))*a+(a=r*i-e*o*c)*a),e*i+r*o*c),t=n,e=i,r=o}var t,e,r;Hc.point=function(u,i){t=u*Ta,e=Math.sin(i*=Ta),r=Math.cos(i),Hc.point=n},Hc.lineEnd=function(){Hc.point=Hc.lineEnd=c}}function He(n,t){function e(t,e){var r=Math.cos(t),u=Math.cos(e),i=n(r*u);return[i*u*Math.sin(t),i*Math.sin(e)]}return e.invert=function(n,e){var r=Math.sqrt(n*n+e*e),u=t(r),i=Math.sin(u),o=Math.cos(u);return[Math.atan2(n*i,r*o),Math.asin(r&&e*i/r)]},e}function Fe(n,t){function e(n,t){var e=ca(ca(t)-Ca)<Na?0:o/Math.pow(u(t),i);return[e*Math.sin(i*n),o-e*Math.cos(i*n)]}var r=Math.cos(n),u=function(n){return Math.tan(Ea/4+n/2)},i=n===t?Math.sin(n):Math.log(r/Math.cos(t))/Math.log(u(t)/u(n)),o=r*Math.pow(u(n),i)/i;return i?(e.invert=function(n,t){var e=o-t,r=j(i)*Math.sqrt(n*n+e*e);return[Math.atan2(n,e)/i,2*Math.atan(Math.pow(o/r,1/i))-Ca]},e):Ye}function Oe(n,t){function e(n,t){var e=i-t;return[e*Math.sin(u*n),i-e*Math.cos(u*n)]}var r=Math.cos(n),u=n===t?Math.sin(n):(r-Math.cos(t))/(t-n),i=r/u+n;return ca(u)<Na?ke:(e.invert=function(n,t){var e=i-t;return[Math.atan2(n,e)/u,i-j(u)*Math.sqrt(n*n+e*e)]},e)}function Ye(n,t){return[n,Math.log(Math.tan(Ea/4+t/2))]}function Ie(n){var t,e=be(n),r=e.scale,u=e.translate,i=e.clipExtent;return e.scale=function(){var n=r.apply(e,arguments);return n===e?t?e.clipExtent(null):e:n},e.translate=function(){var n=u.apply(e,arguments);return n===e?t?e.clipExtent(null):e:n},e.clipExtent=function(n){var o=i.apply(e,arguments);if(o===e){if(t=null==n){var a=Ea*r(),c=u();i([[c[0]-a,c[1]-a],[c[0]+a,c[1]+a]])}}else t&&(o=null);return o},e.clipExtent(null)}function Ze(n,t){return[Math.log(Math.tan(Ea/4+t/2)),-n]}function Ve(n){return n[0]}function Xe(n){return n[1]}function $e(n,t,e,r){var u,i,o,a,c,s,l;return u=r[n],i=u[0],o=u[1],u=r[t],a=u[0],c=u[1],u=r[e],s=u[0],l=u[1],(l-o)*(a-i)-(c-o)*(s-i)>0}function Be(n,t,e){return(e[0]-t[0])*(n[1]-t[1])<(e[1]-t[1])*(n[0]-t[0])}function We(n,t,e,r){var u=n[0],i=e[0],o=t[0]-u,a=r[0]-i,c=n[1],s=e[1],l=t[1]-c,f=r[1]-s,h=(a*(c-s)-f*(u-i))/(f*o-a*l);return[u+h*o,c+h*l]}function Je(n){var t=n[0],e=n[n.length-1];return!(t[0]-e[0]||t[1]-e[1])}function Ge(){yr(this),this.edge=this.site=this.circle=null}function Ke(n){var t=Gc.pop()||new Ge;return t.site=n,t}function Qe(n){sr(n),Bc.remove(n),Gc.push(n),yr(n)}function nr(n){var t=n.circle,e=t.x,r=t.cy,u={x:e,y:r},i=n.P,o=n.N,a=[n];Qe(n);for(var c=i;c.circle&&ca(e-c.circle.x)<Na&&ca(r-c.circle.cy)<Na;)i=c.P,a.unshift(c),Qe(c),c=i;a.unshift(c),sr(c);for(var s=o;s.circle&&ca(e-s.circle.x)<Na&&ca(r-s.circle.cy)<Na;)o=s.N,a.push(s),Qe(s),s=o;a.push(s),sr(s);var l,f=a.length;for(l=1;f>l;++l)s=a[l],c=a[l-1],vr(s.edge,c.site,s.site,u);c=a[0],s=a[f-1],s.edge=gr(c.site,s.site,null,u),cr(c),cr(s)}function tr(n){for(var t,e,r,u,i=n.x,o=n.y,a=Bc._;a;)if(r=er(a,o)-i,r>Na)a=a.L;else{if(u=i-rr(a,o),!(u>Na)){r>-Na?(t=a.P,e=a):u>-Na?(t=a,e=a.N):t=e=a;break}if(!a.R){t=a;break}a=a.R}var c=Ke(n);if(Bc.insert(t,c),t||e){if(t===e)return sr(t),e=Ke(t.site),Bc.insert(c,e),c.edge=e.edge=gr(t.site,c.site),cr(t),cr(e),void 0;if(!e)return c.edge=gr(t.site,c.site),void 0;sr(t),sr(e);var s=t.site,l=s.x,f=s.y,h=n.x-l,g=n.y-f,p=e.site,v=p.x-l,d=p.y-f,m=2*(h*d-g*v),y=h*h+g*g,x=v*v+d*d,M={x:(d*y-g*x)/m+l,y:(h*x-v*y)/m+f};vr(e.edge,s,p,M),c.edge=gr(s,n,null,M),e.edge=gr(n,p,null,M),cr(t),cr(e)}}function er(n,t){var e=n.site,r=e.x,u=e.y,i=u-t;if(!i)return r;var o=n.P;if(!o)return-1/0;e=o.site;var a=e.x,c=e.y,s=c-t;if(!s)return a;var l=a-r,f=1/i-1/s,h=l/s;return f?(-h+Math.sqrt(h*h-2*f*(l*l/(-2*s)-c+s/2+u-i/2)))/f+r:(r+a)/2}function rr(n,t){var e=n.N;if(e)return er(e,t);var r=n.site;return r.y===t?r.x:1/0}function ur(n){this.site=n,this.edges=[]}function ir(n){for(var t,e,r,u,i,o,a,c,s,l,f=n[0][0],h=n[1][0],g=n[0][1],p=n[1][1],v=$c,d=v.length;d--;)if(i=v[d],i&&i.prepare())for(a=i.edges,c=a.length,o=0;c>o;)l=a[o].end(),r=l.x,u=l.y,s=a[++o%c].start(),t=s.x,e=s.y,(ca(r-t)>Na||ca(u-e)>Na)&&(a.splice(o,0,new dr(pr(i.site,l,ca(r-f)<Na&&p-u>Na?{x:f,y:ca(t-f)<Na?e:p}:ca(u-p)<Na&&h-r>Na?{x:ca(e-p)<Na?t:h,y:p}:ca(r-h)<Na&&u-g>Na?{x:h,y:ca(t-h)<Na?e:g}:ca(u-g)<Na&&r-f>Na?{x:ca(e-g)<Na?t:f,y:g}:null),i.site,null)),++c)}function or(n,t){return t.angle-n.angle}function ar(){yr(this),this.x=this.y=this.arc=this.site=this.cy=null}function cr(n){var t=n.P,e=n.N;if(t&&e){var r=t.site,u=n.site,i=e.site;if(r!==i){var o=u.x,a=u.y,c=r.x-o,s=r.y-a,l=i.x-o,f=i.y-a,h=2*(c*f-s*l);if(!(h>=-La)){var g=c*c+s*s,p=l*l+f*f,v=(f*g-s*p)/h,d=(c*p-l*g)/h,f=d+a,m=Kc.pop()||new ar;m.arc=n,m.site=u,m.x=v+o,m.y=f+Math.sqrt(v*v+d*d),m.cy=f,n.circle=m;for(var y=null,x=Jc._;x;)if(m.y<x.y||m.y===x.y&&m.x<=x.x){if(!x.L){y=x.P;break}x=x.L}else{if(!x.R){y=x;break}x=x.R}Jc.insert(y,m),y||(Wc=m)}}}}function sr(n){var t=n.circle;t&&(t.P||(Wc=t.N),Jc.remove(t),Kc.push(t),yr(t),n.circle=null)}function lr(n){for(var t,e=Xc,r=ue(n[0][0],n[0][1],n[1][0],n[1][1]),u=e.length;u--;)t=e[u],(!fr(t,n)||!r(t)||ca(t.a.x-t.b.x)<Na&&ca(t.a.y-t.b.y)<Na)&&(t.a=t.b=null,e.splice(u,1))}function fr(n,t){var e=n.b;if(e)return!0;var r,u,i=n.a,o=t[0][0],a=t[1][0],c=t[0][1],s=t[1][1],l=n.l,f=n.r,h=l.x,g=l.y,p=f.x,v=f.y,d=(h+p)/2,m=(g+v)/2; | |
if(v===g){if(o>d||d>=a)return;if(h>p){if(i){if(i.y>=s)return}else i={x:d,y:c};e={x:d,y:s}}else{if(i){if(i.y<c)return}else i={x:d,y:s};e={x:d,y:c}}}else if(r=(h-p)/(v-g),u=m-r*d,-1>r||r>1)if(h>p){if(i){if(i.y>=s)return}else i={x:(c-u)/r,y:c};e={x:(s-u)/r,y:s}}else{if(i){if(i.y<c)return}else i={x:(s-u)/r,y:s};e={x:(c-u)/r,y:c}}else if(v>g){if(i){if(i.x>=a)return}else i={x:o,y:r*o+u};e={x:a,y:r*a+u}}else{if(i){if(i.x<o)return}else i={x:a,y:r*a+u};e={x:o,y:r*o+u}}return n.a=i,n.b=e,!0}function hr(n,t){this.l=n,this.r=t,this.a=this.b=null}function gr(n,t,e,r){var u=new hr(n,t);return Xc.push(u),e&&vr(u,n,t,e),r&&vr(u,t,n,r),$c[n.i].edges.push(new dr(u,n,t)),$c[t.i].edges.push(new dr(u,t,n)),u}function pr(n,t,e){var r=new hr(n,null);return r.a=t,r.b=e,Xc.push(r),r}function vr(n,t,e,r){n.a||n.b?n.l===e?n.b=r:n.a=r:(n.a=r,n.l=t,n.r=e)}function dr(n,t,e){var r=n.a,u=n.b;this.edge=n,this.site=t,this.angle=e?Math.atan2(e.y-t.y,e.x-t.x):n.l===t?Math.atan2(u.x-r.x,r.y-u.y):Math.atan2(r.x-u.x,u.y-r.y)}function mr(){this._=null}function yr(n){n.U=n.C=n.L=n.R=n.P=n.N=null}function xr(n,t){var e=t,r=t.R,u=e.U;u?u.L===e?u.L=r:u.R=r:n._=r,r.U=u,e.U=r,e.R=r.L,e.R&&(e.R.U=e),r.L=e}function Mr(n,t){var e=t,r=t.L,u=e.U;u?u.L===e?u.L=r:u.R=r:n._=r,r.U=u,e.U=r,e.L=r.R,e.L&&(e.L.U=e),r.R=e}function _r(n){for(;n.L;)n=n.L;return n}function br(n,t){var e,r,u,i=n.sort(wr).pop();for(Xc=[],$c=new Array(n.length),Bc=new mr,Jc=new mr;;)if(u=Wc,i&&(!u||i.y<u.y||i.y===u.y&&i.x<u.x))(i.x!==e||i.y!==r)&&($c[i.i]=new ur(i),tr(i),e=i.x,r=i.y),i=n.pop();else{if(!u)break;nr(u.arc)}t&&(lr(t),ir(t));var o={cells:$c,edges:Xc};return Bc=Jc=Xc=$c=null,o}function wr(n,t){return t.y-n.y||t.x-n.x}function Sr(n,t,e){return(n.x-e.x)*(t.y-n.y)-(n.x-t.x)*(e.y-n.y)}function kr(n){return n.x}function Er(n){return n.y}function Ar(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function Cr(n,t,e,r,u,i){if(!n(t,e,r,u,i)){var o=.5*(e+u),a=.5*(r+i),c=t.nodes;c[0]&&Cr(n,c[0],e,r,o,a),c[1]&&Cr(n,c[1],o,r,u,a),c[2]&&Cr(n,c[2],e,a,o,i),c[3]&&Cr(n,c[3],o,a,u,i)}}function Nr(n,t){n=Bo.rgb(n),t=Bo.rgb(t);var e=n.r,r=n.g,u=n.b,i=t.r-e,o=t.g-r,a=t.b-u;return function(n){return"#"+st(Math.round(e+i*n))+st(Math.round(r+o*n))+st(Math.round(u+a*n))}}function Lr(n,t){var e,r={},u={};for(e in n)e in t?r[e]=zr(n[e],t[e]):u[e]=n[e];for(e in t)e in n||(u[e]=t[e]);return function(n){for(e in r)u[e]=r[e](n);return u}}function Tr(n,t){return t-=n=+n,function(e){return n+t*e}}function qr(n,t){var e,r,u,i,o,a=0,c=0,s=[],l=[];for(n+="",t+="",ns.lastIndex=0,r=0;e=ns.exec(t);++r)e.index&&s.push(t.substring(a,c=e.index)),l.push({i:s.length,x:e[0]}),s.push(null),a=ns.lastIndex;for(a<t.length&&s.push(t.substring(a)),r=0,i=l.length;(e=ns.exec(n))&&i>r;++r)if(o=l[r],o.x==e[0]){if(o.i)if(null==s[o.i+1])for(s[o.i-1]+=o.x,s.splice(o.i,1),u=r+1;i>u;++u)l[u].i--;else for(s[o.i-1]+=o.x+s[o.i+1],s.splice(o.i,2),u=r+1;i>u;++u)l[u].i-=2;else if(null==s[o.i+1])s[o.i]=o.x;else for(s[o.i]=o.x+s[o.i+1],s.splice(o.i+1,1),u=r+1;i>u;++u)l[u].i--;l.splice(r,1),i--,r--}else o.x=Tr(parseFloat(e[0]),parseFloat(o.x));for(;i>r;)o=l.pop(),null==s[o.i+1]?s[o.i]=o.x:(s[o.i]=o.x+s[o.i+1],s.splice(o.i+1,1)),i--;return 1===s.length?null==s[0]?(o=l[0].x,function(n){return o(n)+""}):function(){return t}:function(n){for(r=0;i>r;++r)s[(o=l[r]).i]=o.x(n);return s.join("")}}function zr(n,t){for(var e,r=Bo.interpolators.length;--r>=0&&!(e=Bo.interpolators[r](n,t)););return e}function Rr(n,t){var e,r=[],u=[],i=n.length,o=t.length,a=Math.min(n.length,t.length);for(e=0;a>e;++e)r.push(zr(n[e],t[e]));for(;i>e;++e)u[e]=n[e];for(;o>e;++e)u[e]=t[e];return function(n){for(e=0;a>e;++e)u[e]=r[e](n);return u}}function Dr(n){return function(t){return 0>=t?0:t>=1?1:n(t)}}function Pr(n){return function(t){return 1-n(1-t)}}function Ur(n){return function(t){return.5*(.5>t?n(2*t):2-n(2-2*t))}}function jr(n){return n*n}function Hr(n){return n*n*n}function Fr(n){if(0>=n)return 0;if(n>=1)return 1;var t=n*n,e=t*n;return 4*(.5>n?e:3*(n-t)+e-.75)}function Or(n){return function(t){return Math.pow(t,n)}}function Yr(n){return 1-Math.cos(n*Ca)}function Ir(n){return Math.pow(2,10*(n-1))}function Zr(n){return 1-Math.sqrt(1-n*n)}function Vr(n,t){var e;return arguments.length<2&&(t=.45),arguments.length?e=t/Aa*Math.asin(1/n):(n=1,e=t/4),function(r){return 1+n*Math.pow(2,-10*r)*Math.sin((r-e)*Aa/t)}}function Xr(n){return n||(n=1.70158),function(t){return t*t*((n+1)*t-n)}}function $r(n){return 1/2.75>n?7.5625*n*n:2/2.75>n?7.5625*(n-=1.5/2.75)*n+.75:2.5/2.75>n?7.5625*(n-=2.25/2.75)*n+.9375:7.5625*(n-=2.625/2.75)*n+.984375}function Br(n,t){n=Bo.hcl(n),t=Bo.hcl(t);var e=n.h,r=n.c,u=n.l,i=t.h-e,o=t.c-r,a=t.l-u;return isNaN(o)&&(o=0,r=isNaN(r)?t.c:r),isNaN(i)?(i=0,e=isNaN(e)?t.h:e):i>180?i-=360:-180>i&&(i+=360),function(n){return G(e+i*n,r+o*n,u+a*n)+""}}function Wr(n,t){n=Bo.hsl(n),t=Bo.hsl(t);var e=n.h,r=n.s,u=n.l,i=t.h-e,o=t.s-r,a=t.l-u;return isNaN(o)&&(o=0,r=isNaN(r)?t.s:r),isNaN(i)?(i=0,e=isNaN(e)?t.h:e):i>180?i-=360:-180>i&&(i+=360),function(n){return B(e+i*n,r+o*n,u+a*n)+""}}function Jr(n,t){n=Bo.lab(n),t=Bo.lab(t);var e=n.l,r=n.a,u=n.b,i=t.l-e,o=t.a-r,a=t.b-u;return function(n){return nt(e+i*n,r+o*n,u+a*n)+""}}function Gr(n,t){return t-=n,function(e){return Math.round(n+t*e)}}function Kr(n){var t=[n.a,n.b],e=[n.c,n.d],r=nu(t),u=Qr(t,e),i=nu(tu(e,t,-u))||0;t[0]*e[1]<e[0]*t[1]&&(t[0]*=-1,t[1]*=-1,r*=-1,u*=-1),this.rotate=(r?Math.atan2(t[1],t[0]):Math.atan2(-e[0],e[1]))*qa,this.translate=[n.e,n.f],this.scale=[r,i],this.skew=i?Math.atan2(u,i)*qa:0}function Qr(n,t){return n[0]*t[0]+n[1]*t[1]}function nu(n){var t=Math.sqrt(Qr(n,n));return t&&(n[0]/=t,n[1]/=t),t}function tu(n,t,e){return n[0]+=e*t[0],n[1]+=e*t[1],n}function eu(n,t){var e,r=[],u=[],i=Bo.transform(n),o=Bo.transform(t),a=i.translate,c=o.translate,s=i.rotate,l=o.rotate,f=i.skew,h=o.skew,g=i.scale,p=o.scale;return a[0]!=c[0]||a[1]!=c[1]?(r.push("translate(",null,",",null,")"),u.push({i:1,x:Tr(a[0],c[0])},{i:3,x:Tr(a[1],c[1])})):c[0]||c[1]?r.push("translate("+c+")"):r.push(""),s!=l?(s-l>180?l+=360:l-s>180&&(s+=360),u.push({i:r.push(r.pop()+"rotate(",null,")")-2,x:Tr(s,l)})):l&&r.push(r.pop()+"rotate("+l+")"),f!=h?u.push({i:r.push(r.pop()+"skewX(",null,")")-2,x:Tr(f,h)}):h&&r.push(r.pop()+"skewX("+h+")"),g[0]!=p[0]||g[1]!=p[1]?(e=r.push(r.pop()+"scale(",null,",",null,")"),u.push({i:e-4,x:Tr(g[0],p[0])},{i:e-2,x:Tr(g[1],p[1])})):(1!=p[0]||1!=p[1])&&r.push(r.pop()+"scale("+p+")"),e=u.length,function(n){for(var t,i=-1;++i<e;)r[(t=u[i]).i]=t.x(n);return r.join("")}}function ru(n,t){return t=t-(n=+n)?1/(t-n):0,function(e){return(e-n)*t}}function uu(n,t){return t=t-(n=+n)?1/(t-n):0,function(e){return Math.max(0,Math.min(1,(e-n)*t))}}function iu(n){for(var t=n.source,e=n.target,r=au(t,e),u=[t];t!==r;)t=t.parent,u.push(t);for(var i=u.length;e!==r;)u.splice(i,0,e),e=e.parent;return u}function ou(n){for(var t=[],e=n.parent;null!=e;)t.push(n),n=e,e=e.parent;return t.push(n),t}function au(n,t){if(n===t)return n;for(var e=ou(n),r=ou(t),u=e.pop(),i=r.pop(),o=null;u===i;)o=u,u=e.pop(),i=r.pop();return o}function cu(n){n.fixed|=2}function su(n){n.fixed&=-7}function lu(n){n.fixed|=4,n.px=n.x,n.py=n.y}function fu(n){n.fixed&=-5}function hu(n,t,e){var r=0,u=0;if(n.charge=0,!n.leaf)for(var i,o=n.nodes,a=o.length,c=-1;++c<a;)i=o[c],null!=i&&(hu(i,t,e),n.charge+=i.charge,r+=i.charge*i.cx,u+=i.charge*i.cy);if(n.point){n.leaf||(n.point.x+=Math.random()-.5,n.point.y+=Math.random()-.5);var s=t*e[n.point.index];n.charge+=n.pointCharge=s,r+=s*n.point.x,u+=s*n.point.y}n.cx=r/n.charge,n.cy=u/n.charge}function gu(n,t){return Bo.rebind(n,t,"sort","children","value"),n.nodes=n,n.links=mu,n}function pu(n){return n.children}function vu(n){return n.value}function du(n,t){return t.value-n.value}function mu(n){return Bo.merge(n.map(function(n){return(n.children||[]).map(function(t){return{source:n,target:t}})}))}function yu(n){return n.x}function xu(n){return n.y}function Mu(n,t,e){n.y0=t,n.y=e}function _u(n){return Bo.range(n.length)}function bu(n){for(var t=-1,e=n[0].length,r=[];++t<e;)r[t]=0;return r}function wu(n){for(var t,e=1,r=0,u=n[0][1],i=n.length;i>e;++e)(t=n[e][1])>u&&(r=e,u=t);return r}function Su(n){return n.reduce(ku,0)}function ku(n,t){return n+t[1]}function Eu(n,t){return Au(n,Math.ceil(Math.log(t.length)/Math.LN2+1))}function Au(n,t){for(var e=-1,r=+n[0],u=(n[1]-r)/t,i=[];++e<=t;)i[e]=u*e+r;return i}function Cu(n){return[Bo.min(n),Bo.max(n)]}function Nu(n,t){return n.parent==t.parent?1:2}function Lu(n){var t=n.children;return t&&t.length?t[0]:n._tree.thread}function Tu(n){var t,e=n.children;return e&&(t=e.length)?e[t-1]:n._tree.thread}function qu(n,t){var e=n.children;if(e&&(u=e.length))for(var r,u,i=-1;++i<u;)t(r=qu(e[i],t),n)>0&&(n=r);return n}function zu(n,t){return n.x-t.x}function Ru(n,t){return t.x-n.x}function Du(n,t){return n.depth-t.depth}function Pu(n,t){function e(n,r){var u=n.children;if(u&&(o=u.length))for(var i,o,a=null,c=-1;++c<o;)i=u[c],e(i,a),a=i;t(n,r)}e(n,null)}function Uu(n){for(var t,e=0,r=0,u=n.children,i=u.length;--i>=0;)t=u[i]._tree,t.prelim+=e,t.mod+=e,e+=t.shift+(r+=t.change)}function ju(n,t,e){n=n._tree,t=t._tree;var r=e/(t.number-n.number);n.change+=r,t.change-=r,t.shift+=e,t.prelim+=e,t.mod+=e}function Hu(n,t,e){return n._tree.ancestor.parent==t.parent?n._tree.ancestor:e}function Fu(n,t){return n.value-t.value}function Ou(n,t){var e=n._pack_next;n._pack_next=t,t._pack_prev=n,t._pack_next=e,e._pack_prev=t}function Yu(n,t){n._pack_next=t,t._pack_prev=n}function Iu(n,t){var e=t.x-n.x,r=t.y-n.y,u=n.r+t.r;return.999*u*u>e*e+r*r}function Zu(n){function t(n){l=Math.min(n.x-n.r,l),f=Math.max(n.x+n.r,f),h=Math.min(n.y-n.r,h),g=Math.max(n.y+n.r,g)}if((e=n.children)&&(s=e.length)){var e,r,u,i,o,a,c,s,l=1/0,f=-1/0,h=1/0,g=-1/0;if(e.forEach(Vu),r=e[0],r.x=-r.r,r.y=0,t(r),s>1&&(u=e[1],u.x=u.r,u.y=0,t(u),s>2))for(i=e[2],Bu(r,u,i),t(i),Ou(r,i),r._pack_prev=i,Ou(i,u),u=r._pack_next,o=3;s>o;o++){Bu(r,u,i=e[o]);var p=0,v=1,d=1;for(a=u._pack_next;a!==u;a=a._pack_next,v++)if(Iu(a,i)){p=1;break}if(1==p)for(c=r._pack_prev;c!==a._pack_prev&&!Iu(c,i);c=c._pack_prev,d++);p?(d>v||v==d&&u.r<r.r?Yu(r,u=a):Yu(r=c,u),o--):(Ou(r,i),u=i,t(i))}var m=(l+f)/2,y=(h+g)/2,x=0;for(o=0;s>o;o++)i=e[o],i.x-=m,i.y-=y,x=Math.max(x,i.r+Math.sqrt(i.x*i.x+i.y*i.y));n.r=x,e.forEach(Xu)}}function Vu(n){n._pack_next=n._pack_prev=n}function Xu(n){delete n._pack_next,delete n._pack_prev}function $u(n,t,e,r){var u=n.children;if(n.x=t+=r*n.x,n.y=e+=r*n.y,n.r*=r,u)for(var i=-1,o=u.length;++i<o;)$u(u[i],t,e,r)}function Bu(n,t,e){var r=n.r+e.r,u=t.x-n.x,i=t.y-n.y;if(r&&(u||i)){var o=t.r+e.r,a=u*u+i*i;o*=o,r*=r;var c=.5+(r-o)/(2*a),s=Math.sqrt(Math.max(0,2*o*(r+a)-(r-=a)*r-o*o))/(2*a);e.x=n.x+c*u+s*i,e.y=n.y+c*i-s*u}else e.x=n.x+r,e.y=n.y}function Wu(n){return 1+Bo.max(n,function(n){return n.y})}function Ju(n){return n.reduce(function(n,t){return n+t.x},0)/n.length}function Gu(n){var t=n.children;return t&&t.length?Gu(t[0]):n}function Ku(n){var t,e=n.children;return e&&(t=e.length)?Ku(e[t-1]):n}function Qu(n){return{x:n.x,y:n.y,dx:n.dx,dy:n.dy}}function ni(n,t){var e=n.x+t[3],r=n.y+t[0],u=n.dx-t[1]-t[3],i=n.dy-t[0]-t[2];return 0>u&&(e+=u/2,u=0),0>i&&(r+=i/2,i=0),{x:e,y:r,dx:u,dy:i}}function ti(n){var t=n[0],e=n[n.length-1];return e>t?[t,e]:[e,t]}function ei(n){return n.rangeExtent?n.rangeExtent():ti(n.range())}function ri(n,t,e,r){var u=e(n[0],n[1]),i=r(t[0],t[1]);return function(n){return i(u(n))}}function ui(n,t){var e,r=0,u=n.length-1,i=n[r],o=n[u];return i>o&&(e=r,r=u,u=e,e=i,i=o,o=e),n[r]=t.floor(i),n[u]=t.ceil(o),n}function ii(n){return n?{floor:function(t){return Math.floor(t/n)*n},ceil:function(t){return Math.ceil(t/n)*n}}:ls}function oi(n,t,e,r){var u=[],i=[],o=0,a=Math.min(n.length,t.length)-1;for(n[a]<n[0]&&(n=n.slice().reverse(),t=t.slice().reverse());++o<=a;)u.push(e(n[o-1],n[o])),i.push(r(t[o-1],t[o]));return function(t){var e=Bo.bisect(n,t,1,a)-1;return i[e](u[e](t))}}function ai(n,t,e,r){function u(){var u=Math.min(n.length,t.length)>2?oi:ri,c=r?uu:ru;return o=u(n,t,c,e),a=u(t,n,c,zr),i}function i(n){return o(n)}var o,a;return i.invert=function(n){return a(n)},i.domain=function(t){return arguments.length?(n=t.map(Number),u()):n},i.range=function(n){return arguments.length?(t=n,u()):t},i.rangeRound=function(n){return i.range(n).interpolate(Gr)},i.clamp=function(n){return arguments.length?(r=n,u()):r},i.interpolate=function(n){return arguments.length?(e=n,u()):e},i.ticks=function(t){return fi(n,t)},i.tickFormat=function(t,e){return hi(n,t,e)},i.nice=function(t){return si(n,t),u()},i.copy=function(){return ai(n,t,e,r)},u()}function ci(n,t){return Bo.rebind(n,t,"range","rangeRound","interpolate","clamp")}function si(n,t){return ui(n,ii(li(n,t)[2]))}function li(n,t){null==t&&(t=10);var e=ti(n),r=e[1]-e[0],u=Math.pow(10,Math.floor(Math.log(r/t)/Math.LN10)),i=t/r*u;return.15>=i?u*=10:.35>=i?u*=5:.75>=i&&(u*=2),e[0]=Math.ceil(e[0]/u)*u,e[1]=Math.floor(e[1]/u)*u+.5*u,e[2]=u,e}function fi(n,t){return Bo.range.apply(Bo,li(n,t))}function hi(n,t,e){var r=li(n,t);return Bo.format(e?e.replace(ic,function(n,t,e,u,i,o,a,c,s,l){return[t,e,u,i,o,a,c,s||"."+pi(l,r),l].join("")}):",."+gi(r[2])+"f")}function gi(n){return-Math.floor(Math.log(n)/Math.LN10+.01)}function pi(n,t){var e=gi(t[2]);return n in fs?Math.abs(e-gi(Math.max(Math.abs(t[0]),Math.abs(t[1]))))+ +("e"!==n):e-2*("%"===n)}function vi(n,t,e,r){function u(n){return(e?Math.log(0>n?0:n):-Math.log(n>0?0:-n))/Math.log(t)}function i(n){return e?Math.pow(t,n):-Math.pow(t,-n)}function o(t){return n(u(t))}return o.invert=function(t){return i(n.invert(t))},o.domain=function(t){return arguments.length?(e=t[0]>=0,n.domain((r=t.map(Number)).map(u)),o):r},o.base=function(e){return arguments.length?(t=+e,n.domain(r.map(u)),o):t},o.nice=function(){var t=ui(r.map(u),e?Math:gs);return n.domain(t),r=t.map(i),o},o.ticks=function(){var n=ti(r),o=[],a=n[0],c=n[1],s=Math.floor(u(a)),l=Math.ceil(u(c)),f=t%1?2:t;if(isFinite(l-s)){if(e){for(;l>s;s++)for(var h=1;f>h;h++)o.push(i(s)*h);o.push(i(s))}else for(o.push(i(s));s++<l;)for(var h=f-1;h>0;h--)o.push(i(s)*h);for(s=0;o[s]<a;s++);for(l=o.length;o[l-1]>c;l--);o=o.slice(s,l)}return o},o.tickFormat=function(n,t){if(!arguments.length)return hs;arguments.length<2?t=hs:"function"!=typeof t&&(t=Bo.format(t));var r,a=Math.max(.1,n/o.ticks().length),c=e?(r=1e-12,Math.ceil):(r=-1e-12,Math.floor);return function(n){return n/i(c(u(n)+r))<=a?t(n):""}},o.copy=function(){return vi(n.copy(),t,e,r)},ci(o,n)}function di(n,t,e){function r(t){return n(u(t))}var u=mi(t),i=mi(1/t);return r.invert=function(t){return i(n.invert(t))},r.domain=function(t){return arguments.length?(n.domain((e=t.map(Number)).map(u)),r):e},r.ticks=function(n){return fi(e,n)},r.tickFormat=function(n,t){return hi(e,n,t)},r.nice=function(n){return r.domain(si(e,n))},r.exponent=function(o){return arguments.length?(u=mi(t=o),i=mi(1/t),n.domain(e.map(u)),r):t},r.copy=function(){return di(n.copy(),t,e)},ci(r,n)}function mi(n){return function(t){return 0>t?-Math.pow(-t,n):Math.pow(t,n)}}function yi(n,t){function e(e){return o[((i.get(e)||"range"===t.t&&i.set(e,n.push(e)))-1)%o.length]}function r(t,e){return Bo.range(n.length).map(function(n){return t+e*n})}var i,o,a;return e.domain=function(r){if(!arguments.length)return n;n=[],i=new u;for(var o,a=-1,c=r.length;++a<c;)i.has(o=r[a])||i.set(o,n.push(o));return e[t.t].apply(e,t.a)},e.range=function(n){return arguments.length?(o=n,a=0,t={t:"range",a:arguments},e):o},e.rangePoints=function(u,i){arguments.length<2&&(i=0);var c=u[0],s=u[1],l=(s-c)/(Math.max(1,n.length-1)+i);return o=r(n.length<2?(c+s)/2:c+l*i/2,l),a=0,t={t:"rangePoints",a:arguments},e},e.rangeBands=function(u,i,c){arguments.length<2&&(i=0),arguments.length<3&&(c=i);var s=u[1]<u[0],l=u[s-0],f=u[1-s],h=(f-l)/(n.length-i+2*c);return o=r(l+h*c,h),s&&o.reverse(),a=h*(1-i),t={t:"rangeBands",a:arguments},e},e.rangeRoundBands=function(u,i,c){arguments.length<2&&(i=0),arguments.length<3&&(c=i);var s=u[1]<u[0],l=u[s-0],f=u[1-s],h=Math.floor((f-l)/(n.length-i+2*c)),g=f-l-(n.length-i)*h;return o=r(l+Math.round(g/2),h),s&&o.reverse(),a=Math.round(h*(1-i)),t={t:"rangeRoundBands",a:arguments},e},e.rangeBand=function(){return a},e.rangeExtent=function(){return ti(t.a[0])},e.copy=function(){return yi(n,t)},e.domain(n)}function xi(n,t){function e(){var e=0,i=t.length;for(u=[];++e<i;)u[e-1]=Bo.quantile(n,e/i);return r}function r(n){return isNaN(n=+n)?void 0:t[Bo.bisect(u,n)]}var u;return r.domain=function(t){return arguments.length?(n=t.filter(function(n){return!isNaN(n)}).sort(Bo.ascending),e()):n},r.range=function(n){return arguments.length?(t=n,e()):t},r.quantiles=function(){return u},r.invertExtent=function(e){return e=t.indexOf(e),0>e?[0/0,0/0]:[e>0?u[e-1]:n[0],e<u.length?u[e]:n[n.length-1]]},r.copy=function(){return xi(n,t)},e()}function Mi(n,t,e){function r(t){return e[Math.max(0,Math.min(o,Math.floor(i*(t-n))))]}function u(){return i=e.length/(t-n),o=e.length-1,r}var i,o;return r.domain=function(e){return arguments.length?(n=+e[0],t=+e[e.length-1],u()):[n,t]},r.range=function(n){return arguments.length?(e=n,u()):e},r.invertExtent=function(t){return t=e.indexOf(t),t=0>t?0/0:t/i+n,[t,t+1/i]},r.copy=function(){return Mi(n,t,e)},u()}function _i(n,t){function e(e){return e>=e?t[Bo.bisect(n,e)]:void 0}return e.domain=function(t){return arguments.length?(n=t,e):n},e.range=function(n){return arguments.length?(t=n,e):t},e.invertExtent=function(e){return e=t.indexOf(e),[n[e-1],n[e]]},e.copy=function(){return _i(n,t)},e}function bi(n){function t(n){return+n}return t.invert=t,t.domain=t.range=function(e){return arguments.length?(n=e.map(t),t):n},t.ticks=function(t){return fi(n,t)},t.tickFormat=function(t,e){return hi(n,t,e)},t.copy=function(){return bi(n)},t}function wi(n){return n.innerRadius}function Si(n){return n.outerRadius}function ki(n){return n.startAngle}function Ei(n){return n.endAngle}function Ai(n){function t(t){function o(){s.push("M",i(n(l),a))}for(var c,s=[],l=[],f=-1,h=t.length,g=vt(e),p=vt(r);++f<h;)u.call(this,c=t[f],f)?l.push([+g.call(this,c,f),+p.call(this,c,f)]):l.length&&(o(),l=[]);return l.length&&o(),s.length?s.join(""):null}var e=Ve,r=Xe,u=Vt,i=Ci,o=i.key,a=.7;return t.x=function(n){return arguments.length?(e=n,t):e},t.y=function(n){return arguments.length?(r=n,t):r},t.defined=function(n){return arguments.length?(u=n,t):u},t.interpolate=function(n){return arguments.length?(o="function"==typeof n?i=n:(i=Ms.get(n)||Ci).key,t):o},t.tension=function(n){return arguments.length?(a=n,t):a},t}function Ci(n){return n.join("L")}function Ni(n){return Ci(n)+"Z"}function Li(n){for(var t=0,e=n.length,r=n[0],u=[r[0],",",r[1]];++t<e;)u.push("H",(r[0]+(r=n[t])[0])/2,"V",r[1]);return e>1&&u.push("H",r[0]),u.join("")}function Ti(n){for(var t=0,e=n.length,r=n[0],u=[r[0],",",r[1]];++t<e;)u.push("V",(r=n[t])[1],"H",r[0]);return u.join("")}function qi(n){for(var t=0,e=n.length,r=n[0],u=[r[0],",",r[1]];++t<e;)u.push("H",(r=n[t])[0],"V",r[1]);return u.join("")}function zi(n,t){return n.length<4?Ci(n):n[1]+Pi(n.slice(1,n.length-1),Ui(n,t))}function Ri(n,t){return n.length<3?Ci(n):n[0]+Pi((n.push(n[0]),n),Ui([n[n.length-2]].concat(n,[n[1]]),t))}function Di(n,t){return n.length<3?Ci(n):n[0]+Pi(n,Ui(n,t))}function Pi(n,t){if(t.length<1||n.length!=t.length&&n.length!=t.length+2)return Ci(n);var e=n.length!=t.length,r="",u=n[0],i=n[1],o=t[0],a=o,c=1;if(e&&(r+="Q"+(i[0]-2*o[0]/3)+","+(i[1]-2*o[1]/3)+","+i[0]+","+i[1],u=n[1],c=2),t.length>1){a=t[1],i=n[c],c++,r+="C"+(u[0]+o[0])+","+(u[1]+o[1])+","+(i[0]-a[0])+","+(i[1]-a[1])+","+i[0]+","+i[1];for(var s=2;s<t.length;s++,c++)i=n[c],a=t[s],r+="S"+(i[0]-a[0])+","+(i[1]-a[1])+","+i[0]+","+i[1]}if(e){var l=n[c];r+="Q"+(i[0]+2*a[0]/3)+","+(i[1]+2*a[1]/3)+","+l[0]+","+l[1]}return r}function Ui(n,t){for(var e,r=[],u=(1-t)/2,i=n[0],o=n[1],a=1,c=n.length;++a<c;)e=i,i=o,o=n[a],r.push([u*(o[0]-e[0]),u*(o[1]-e[1])]);return r}function ji(n){if(n.length<3)return Ci(n);var t=1,e=n.length,r=n[0],u=r[0],i=r[1],o=[u,u,u,(r=n[1])[0]],a=[i,i,i,r[1]],c=[u,",",i,"L",Yi(ws,o),",",Yi(ws,a)];for(n.push(n[e-1]);++t<=e;)r=n[t],o.shift(),o.push(r[0]),a.shift(),a.push(r[1]),Ii(c,o,a);return n.pop(),c.push("L",r),c.join("")}function Hi(n){if(n.length<4)return Ci(n);for(var t,e=[],r=-1,u=n.length,i=[0],o=[0];++r<3;)t=n[r],i.push(t[0]),o.push(t[1]);for(e.push(Yi(ws,i)+","+Yi(ws,o)),--r;++r<u;)t=n[r],i.shift(),i.push(t[0]),o.shift(),o.push(t[1]),Ii(e,i,o);return e.join("")}function Fi(n){for(var t,e,r=-1,u=n.length,i=u+4,o=[],a=[];++r<4;)e=n[r%u],o.push(e[0]),a.push(e[1]);for(t=[Yi(ws,o),",",Yi(ws,a)],--r;++r<i;)e=n[r%u],o.shift(),o.push(e[0]),a.shift(),a.push(e[1]),Ii(t,o,a);return t.join("")}function Oi(n,t){var e=n.length-1;if(e)for(var r,u,i=n[0][0],o=n[0][1],a=n[e][0]-i,c=n[e][1]-o,s=-1;++s<=e;)r=n[s],u=s/e,r[0]=t*r[0]+(1-t)*(i+u*a),r[1]=t*r[1]+(1-t)*(o+u*c);return ji(n)}function Yi(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]+n[3]*t[3]}function Ii(n,t,e){n.push("C",Yi(_s,t),",",Yi(_s,e),",",Yi(bs,t),",",Yi(bs,e),",",Yi(ws,t),",",Yi(ws,e))}function Zi(n,t){return(t[1]-n[1])/(t[0]-n[0])}function Vi(n){for(var t=0,e=n.length-1,r=[],u=n[0],i=n[1],o=r[0]=Zi(u,i);++t<e;)r[t]=(o+(o=Zi(u=i,i=n[t+1])))/2;return r[t]=o,r}function Xi(n){for(var t,e,r,u,i=[],o=Vi(n),a=-1,c=n.length-1;++a<c;)t=Zi(n[a],n[a+1]),ca(t)<Na?o[a]=o[a+1]=0:(e=o[a]/t,r=o[a+1]/t,u=e*e+r*r,u>9&&(u=3*t/Math.sqrt(u),o[a]=u*e,o[a+1]=u*r));for(a=-1;++a<=c;)u=(n[Math.min(c,a+1)][0]-n[Math.max(0,a-1)][0])/(6*(1+o[a]*o[a])),i.push([u||0,o[a]*u||0]);return i}function $i(n){return n.length<3?Ci(n):n[0]+Pi(n,Xi(n))}function Bi(n){for(var t,e,r,u=-1,i=n.length;++u<i;)t=n[u],e=t[0],r=t[1]+ys,t[0]=e*Math.cos(r),t[1]=e*Math.sin(r);return n}function Wi(n){function t(t){function c(){v.push("M",a(n(m),f),l,s(n(d.reverse()),f),"Z")}for(var h,g,p,v=[],d=[],m=[],y=-1,x=t.length,M=vt(e),_=vt(u),b=e===r?function(){return g}:vt(r),w=u===i?function(){return p}:vt(i);++y<x;)o.call(this,h=t[y],y)?(d.push([g=+M.call(this,h,y),p=+_.call(this,h,y)]),m.push([+b.call(this,h,y),+w.call(this,h,y)])):d.length&&(c(),d=[],m=[]);return d.length&&c(),v.length?v.join(""):null}var e=Ve,r=Ve,u=0,i=Xe,o=Vt,a=Ci,c=a.key,s=a,l="L",f=.7;return t.x=function(n){return arguments.length?(e=r=n,t):r},t.x0=function(n){return arguments.length?(e=n,t):e},t.x1=function(n){return arguments.length?(r=n,t):r},t.y=function(n){return arguments.length?(u=i=n,t):i},t.y0=function(n){return arguments.length?(u=n,t):u},t.y1=function(n){return arguments.length?(i=n,t):i},t.defined=function(n){return arguments.length?(o=n,t):o},t.interpolate=function(n){return arguments.length?(c="function"==typeof n?a=n:(a=Ms.get(n)||Ci).key,s=a.reverse||a,l=a.closed?"M":"L",t):c},t.tension=function(n){return arguments.length?(f=n,t):f},t}function Ji(n){return n.radius}function Gi(n){return[n.x,n.y]}function Ki(n){return function(){var t=n.apply(this,arguments),e=t[0],r=t[1]+ys;return[e*Math.cos(r),e*Math.sin(r)]}}function Qi(){return 64}function no(){return"circle"}function to(n){var t=Math.sqrt(n/Ea);return"M0,"+t+"A"+t+","+t+" 0 1,1 0,"+-t+"A"+t+","+t+" 0 1,1 0,"+t+"Z"}function eo(n,t){return ga(n,Ns),n.id=t,n}function ro(n,t,e,r){var u=n.id;return N(n,"function"==typeof e?function(n,i,o){n.__transition__[u].tween.set(t,r(e.call(n,n.__data__,i,o)))}:(e=r(e),function(n){n.__transition__[u].tween.set(t,e)}))}function uo(n){return null==n&&(n=""),function(){this.textContent=n}}function io(n,t,e,r){var i=n.__transition__||(n.__transition__={active:0,count:0}),o=i[e];if(!o){var a=r.time;o=i[e]={tween:new u,time:a,ease:r.ease,delay:r.delay,duration:r.duration},++i.count,Bo.timer(function(r){function u(r){return i.active>e?s():(i.active=e,o.event&&o.event.start.call(n,l,t),o.tween.forEach(function(e,r){(r=r.call(n,l,t))&&v.push(r)}),Bo.timer(function(){return p.c=c(r||1)?Vt:c,1},0,a),void 0)}function c(r){if(i.active!==e)return s();for(var u=r/g,a=f(u),c=v.length;c>0;)v[--c].call(n,a);return u>=1?(o.event&&o.event.end.call(n,l,t),s()):void 0}function s(){return--i.count?delete i[e]:delete n.__transition__,1}var l=n.__data__,f=o.ease,h=o.delay,g=o.duration,p=Ka,v=[];return p.t=h+a,r>=h?u(r-h):(p.c=u,void 0)},0,a)}}function oo(n,t){n.attr("transform",function(n){return"translate("+t(n)+",0)"})}function ao(n,t){n.attr("transform",function(n){return"translate(0,"+t(n)+")"})}function co(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}function so(n,t,e){function r(t){var e=n(t),r=i(e,1);return r-t>t-e?e:r}function u(e){return t(e=n(new Ps(e-1)),1),e}function i(n,e){return t(n=new Ps(+n),e),n}function o(n,r,i){var o=u(n),a=[];if(i>1)for(;r>o;)e(o)%i||a.push(new Date(+o)),t(o,1);else for(;r>o;)a.push(new Date(+o)),t(o,1);return a}function a(n,t,e){try{Ps=co;var r=new co;return r._=n,o(r,t,e)}finally{Ps=Date}}n.floor=n,n.round=r,n.ceil=u,n.offset=i,n.range=o;var c=n.utc=lo(n);return c.floor=c,c.round=lo(r),c.ceil=lo(u),c.offset=lo(i),c.range=a,n}function lo(n){return function(t,e){try{Ps=co;var r=new co;return r._=t,n(r,e)._}finally{Ps=Date}}}function fo(n){function t(t){for(var r,u,i,o=[],a=-1,c=0;++a<e;)37===n.charCodeAt(a)&&(o.push(n.substring(c,a)),null!=(u=tl[r=n.charAt(++a)])&&(r=n.charAt(++a)),(i=el[r])&&(r=i(t,null==u?"e"===r?" ":"0":u)),o.push(r),c=a+1);return o.push(n.substring(c,a)),o.join("")}var e=n.length;return t.parse=function(t){var e={y:1900,m:0,d:1,H:0,M:0,S:0,L:0,Z:null},r=ho(e,n,t,0);if(r!=t.length)return null;"p"in e&&(e.H=e.H%12+12*e.p);var u=null!=e.Z&&Ps!==co,i=new(u?co:Ps);return"j"in e?i.setFullYear(e.y,0,e.j):"w"in e&&("W"in e||"U"in e)?(i.setFullYear(e.y,0,1),i.setFullYear(e.y,0,"W"in e?(e.w+6)%7+7*e.W-(i.getDay()+5)%7:e.w+7*e.U-(i.getDay()+6)%7)):i.setFullYear(e.y,e.m,e.d),i.setHours(e.H+Math.floor(e.Z/100),e.M+e.Z%100,e.S,e.L),u?i._:i},t.toString=function(){return n},t}function ho(n,t,e,r){for(var u,i,o,a=0,c=t.length,s=e.length;c>a;){if(r>=s)return-1;if(u=t.charCodeAt(a++),37===u){if(o=t.charAt(a++),i=rl[o in tl?t.charAt(a++):o],!i||(r=i(n,e,r))<0)return-1}else if(u!=e.charCodeAt(r++))return-1}return r}function go(n){return new RegExp("^(?:"+n.map(Bo.requote).join("|")+")","i")}function po(n){for(var t=new u,e=-1,r=n.length;++e<r;)t.set(n[e].toLowerCase(),e);return t}function vo(n,t,e){var r=0>n?"-":"",u=(r?-n:n)+"",i=u.length;return r+(e>i?new Array(e-i+1).join(t)+u:u)}function mo(n,t,e){Bs.lastIndex=0;var r=Bs.exec(t.substring(e));return r?(n.w=Ws.get(r[0].toLowerCase()),e+r[0].length):-1}function yo(n,t,e){Xs.lastIndex=0;var r=Xs.exec(t.substring(e));return r?(n.w=$s.get(r[0].toLowerCase()),e+r[0].length):-1}function xo(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+1));return r?(n.w=+r[0],e+r[0].length):-1}function Mo(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e));return r?(n.U=+r[0],e+r[0].length):-1}function _o(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e));return r?(n.W=+r[0],e+r[0].length):-1}function bo(n,t,e){Ks.lastIndex=0;var r=Ks.exec(t.substring(e));return r?(n.m=Qs.get(r[0].toLowerCase()),e+r[0].length):-1}function wo(n,t,e){Js.lastIndex=0;var r=Js.exec(t.substring(e));return r?(n.m=Gs.get(r[0].toLowerCase()),e+r[0].length):-1}function So(n,t,e){return ho(n,el.c.toString(),t,e)}function ko(n,t,e){return ho(n,el.x.toString(),t,e)}function Eo(n,t,e){return ho(n,el.X.toString(),t,e)}function Ao(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+4));return r?(n.y=+r[0],e+r[0].length):-1}function Co(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+2));return r?(n.y=Lo(+r[0]),e+r[0].length):-1}function No(n,t,e){return/^[+-]\d{4}$/.test(t=t.substring(e,e+5))?(n.Z=+t,e+5):-1}function Lo(n){return n+(n>68?1900:2e3)}function To(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+2));return r?(n.m=r[0]-1,e+r[0].length):-1}function qo(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+2));return r?(n.d=+r[0],e+r[0].length):-1}function zo(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+3));return r?(n.j=+r[0],e+r[0].length):-1}function Ro(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+2));return r?(n.H=+r[0],e+r[0].length):-1}function Do(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+2));return r?(n.M=+r[0],e+r[0].length):-1}function Po(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+2));return r?(n.S=+r[0],e+r[0].length):-1}function Uo(n,t,e){ul.lastIndex=0;var r=ul.exec(t.substring(e,e+3));return r?(n.L=+r[0],e+r[0].length):-1}function jo(n,t,e){var r=il.get(t.substring(e,e+=2).toLowerCase());return null==r?-1:(n.p=r,e)}function Ho(n){var t=n.getTimezoneOffset(),e=t>0?"-":"+",r=~~(ca(t)/60),u=ca(t)%60;return e+vo(r,"0",2)+vo(u,"0",2)}function Fo(n,t,e){nl.lastIndex=0;var r=nl.exec(t.substring(e,e+1));return r?e+r[0].length:-1}function Oo(n){function t(n){try{Ps=co;var t=new Ps;return t._=n,e(t)}finally{Ps=Date}}var e=fo(n);return t.parse=function(n){try{Ps=co;var t=e.parse(n);return t&&t._}finally{Ps=Date}},t.toString=e.toString,t}function Yo(n){return n.toISOString()}function Io(n,t,e){function r(t){return n(t)}function u(n,e){var r=n[1]-n[0],u=r/e,i=Bo.bisect(al,u);return i==al.length?[t.year,li(n.map(function(n){return n/31536e6}),e)[2]]:i?t[u/al[i-1]<al[i]/u?i-1:i]:[fl,li(n,e)[2]]}return r.invert=function(t){return Zo(n.invert(t))},r.domain=function(t){return arguments.length?(n.domain(t),r):n.domain().map(Zo)},r.nice=function(n,t){function e(e){return!isNaN(e)&&!n.range(e,Zo(+e+1),t).length}var i=r.domain(),o=ti(i),a=null==n?u(o,10):"number"==typeof n&&u(o,n);return a&&(n=a[0],t=a[1]),r.domain(ui(i,t>1?{floor:function(t){for(;e(t=n.floor(t));)t=Zo(t-1);return t},ceil:function(t){for(;e(t=n.ceil(t));)t=Zo(+t+1);return t}}:n))},r.ticks=function(n,t){var e=ti(r.domain()),i=null==n?u(e,10):"number"==typeof n?u(e,n):!n.range&&[{range:n},t];return i&&(n=i[0],t=i[1]),n.range(e[0],Zo(+e[1]+1),1>t?1:t)},r.tickFormat=function(){return e},r.copy=function(){return Io(n.copy(),t,e)},ci(r,n)}function Zo(n){return new Date(n)}function Vo(n){return function(t){for(var e=n.length-1,r=n[e];!r[1](t);)r=n[--e];return r[0](t)}}function Xo(n){return JSON.parse(n.responseText)}function $o(n){var t=Go.createRange();return t.selectNode(Go.body),t.createContextualFragment(n.responseText)}var Bo={version:"3.3.12"};Date.now||(Date.now=function(){return+new Date});var Wo=[].slice,Jo=function(n){return Wo.call(n)},Go=document,Ko=Go.documentElement,Qo=window;try{Jo(Ko.childNodes)[0].nodeType}catch(na){Jo=function(n){for(var t=n.length,e=new Array(t);t--;)e[t]=n[t];return e}}try{Go.createElement("div").style.setProperty("opacity",0,"")}catch(ta){var ea=Qo.Element.prototype,ra=ea.setAttribute,ua=ea.setAttributeNS,ia=Qo.CSSStyleDeclaration.prototype,oa=ia.setProperty;ea.setAttribute=function(n,t){ra.call(this,n,t+"")},ea.setAttributeNS=function(n,t,e){ua.call(this,n,t,e+"")},ia.setProperty=function(n,t,e){oa.call(this,n,t+"",e)}}Bo.ascending=function(n,t){return t>n?-1:n>t?1:n>=t?0:0/0},Bo.descending=function(n,t){return n>t?-1:t>n?1:t>=n?0:0/0},Bo.min=function(n,t){var e,r,u=-1,i=n.length;if(1===arguments.length){for(;++u<i&&!(null!=(e=n[u])&&e>=e);)e=void 0;for(;++u<i;)null!=(r=n[u])&&e>r&&(e=r)}else{for(;++u<i&&!(null!=(e=t.call(n,n[u],u))&&e>=e);)e=void 0;for(;++u<i;)null!=(r=t.call(n,n[u],u))&&e>r&&(e=r)}return e},Bo.max=function(n,t){var e,r,u=-1,i=n.length;if(1===arguments.length){for(;++u<i&&!(null!=(e=n[u])&&e>=e);)e=void 0;for(;++u<i;)null!=(r=n[u])&&r>e&&(e=r)}else{for(;++u<i&&!(null!=(e=t.call(n,n[u],u))&&e>=e);)e=void 0;for(;++u<i;)null!=(r=t.call(n,n[u],u))&&r>e&&(e=r)}return e},Bo.extent=function(n,t){var e,r,u,i=-1,o=n.length;if(1===arguments.length){for(;++i<o&&!(null!=(e=u=n[i])&&e>=e);)e=u=void 0;for(;++i<o;)null!=(r=n[i])&&(e>r&&(e=r),r>u&&(u=r))}else{for(;++i<o&&!(null!=(e=u=t.call(n,n[i],i))&&e>=e);)e=void 0;for(;++i<o;)null!=(r=t.call(n,n[i],i))&&(e>r&&(e=r),r>u&&(u=r))}return[e,u]},Bo.sum=function(n,t){var e,r=0,u=n.length,i=-1;if(1===arguments.length)for(;++i<u;)isNaN(e=+n[i])||(r+=e);else for(;++i<u;)isNaN(e=+t.call(n,n[i],i))||(r+=e);return r},Bo.mean=function(t,e){var r,u=t.length,i=0,o=-1,a=0;if(1===arguments.length)for(;++o<u;)n(r=t[o])&&(i+=(r-i)/++a);else for(;++o<u;)n(r=e.call(t,t[o],o))&&(i+=(r-i)/++a);return a?i:void 0},Bo.quantile=function(n,t){var e=(n.length-1)*t+1,r=Math.floor(e),u=+n[r-1],i=e-r; | |
return i?u+i*(n[r]-u):u},Bo.median=function(t,e){return arguments.length>1&&(t=t.map(e)),t=t.filter(n),t.length?Bo.quantile(t.sort(Bo.ascending),.5):void 0},Bo.bisector=function(n){return{left:function(t,e,r,u){for(arguments.length<3&&(r=0),arguments.length<4&&(u=t.length);u>r;){var i=r+u>>>1;n.call(t,t[i],i)<e?r=i+1:u=i}return r},right:function(t,e,r,u){for(arguments.length<3&&(r=0),arguments.length<4&&(u=t.length);u>r;){var i=r+u>>>1;e<n.call(t,t[i],i)?u=i:r=i+1}return r}}};var aa=Bo.bisector(function(n){return n});Bo.bisectLeft=aa.left,Bo.bisect=Bo.bisectRight=aa.right,Bo.shuffle=function(n){for(var t,e,r=n.length;r;)e=0|Math.random()*r--,t=n[r],n[r]=n[e],n[e]=t;return n},Bo.permute=function(n,t){for(var e=t.length,r=new Array(e);e--;)r[e]=n[t[e]];return r},Bo.pairs=function(n){for(var t,e=0,r=n.length-1,u=n[0],i=new Array(0>r?0:r);r>e;)i[e]=[t=u,u=n[++e]];return i},Bo.zip=function(){if(!(u=arguments.length))return[];for(var n=-1,e=Bo.min(arguments,t),r=new Array(e);++n<e;)for(var u,i=-1,o=r[n]=new Array(u);++i<u;)o[i]=arguments[i][n];return r},Bo.transpose=function(n){return Bo.zip.apply(Bo,n)},Bo.keys=function(n){var t=[];for(var e in n)t.push(e);return t},Bo.values=function(n){var t=[];for(var e in n)t.push(n[e]);return t},Bo.entries=function(n){var t=[];for(var e in n)t.push({key:e,value:n[e]});return t},Bo.merge=function(n){for(var t,e,r,u=n.length,i=-1,o=0;++i<u;)o+=n[i].length;for(e=new Array(o);--u>=0;)for(r=n[u],t=r.length;--t>=0;)e[--o]=r[t];return e};var ca=Math.abs;Bo.range=function(n,t,r){if(arguments.length<3&&(r=1,arguments.length<2&&(t=n,n=0)),1/0===(t-n)/r)throw new Error("infinite range");var u,i=[],o=e(ca(r)),a=-1;if(n*=o,t*=o,r*=o,0>r)for(;(u=n+r*++a)>t;)i.push(u/o);else for(;(u=n+r*++a)<t;)i.push(u/o);return i},Bo.map=function(n){var t=new u;if(n instanceof u)n.forEach(function(n,e){t.set(n,e)});else for(var e in n)t.set(e,n[e]);return t},r(u,{has:function(n){return sa+n in this},get:function(n){return this[sa+n]},set:function(n,t){return this[sa+n]=t},remove:function(n){return n=sa+n,n in this&&delete this[n]},keys:function(){var n=[];return this.forEach(function(t){n.push(t)}),n},values:function(){var n=[];return this.forEach(function(t,e){n.push(e)}),n},entries:function(){var n=[];return this.forEach(function(t,e){n.push({key:t,value:e})}),n},forEach:function(n){for(var t in this)t.charCodeAt(0)===la&&n.call(this,t.substring(1),this[t])}});var sa="\x00",la=sa.charCodeAt(0);Bo.nest=function(){function n(t,a,c){if(c>=o.length)return r?r.call(i,a):e?a.sort(e):a;for(var s,l,f,h,g=-1,p=a.length,v=o[c++],d=new u;++g<p;)(h=d.get(s=v(l=a[g])))?h.push(l):d.set(s,[l]);return t?(l=t(),f=function(e,r){l.set(e,n(t,r,c))}):(l={},f=function(e,r){l[e]=n(t,r,c)}),d.forEach(f),l}function t(n,e){if(e>=o.length)return n;var r=[],u=a[e++];return n.forEach(function(n,u){r.push({key:n,values:t(u,e)})}),u?r.sort(function(n,t){return u(n.key,t.key)}):r}var e,r,i={},o=[],a=[];return i.map=function(t,e){return n(e,t,0)},i.entries=function(e){return t(n(Bo.map,e,0),0)},i.key=function(n){return o.push(n),i},i.sortKeys=function(n){return a[o.length-1]=n,i},i.sortValues=function(n){return e=n,i},i.rollup=function(n){return r=n,i},i},Bo.set=function(n){var t=new i;if(n)for(var e=0,r=n.length;r>e;++e)t.add(n[e]);return t},r(i,{has:function(n){return sa+n in this},add:function(n){return this[sa+n]=!0,n},remove:function(n){return n=sa+n,n in this&&delete this[n]},values:function(){var n=[];return this.forEach(function(t){n.push(t)}),n},forEach:function(n){for(var t in this)t.charCodeAt(0)===la&&n.call(this,t.substring(1))}}),Bo.behavior={},Bo.rebind=function(n,t){for(var e,r=1,u=arguments.length;++r<u;)n[e=arguments[r]]=o(n,t,t[e]);return n};var fa=["webkit","ms","moz","Moz","o","O"];Bo.dispatch=function(){for(var n=new s,t=-1,e=arguments.length;++t<e;)n[arguments[t]]=l(n);return n},s.prototype.on=function(n,t){var e=n.indexOf("."),r="";if(e>=0&&(r=n.substring(e+1),n=n.substring(0,e)),n)return arguments.length<2?this[n].on(r):this[n].on(r,t);if(2===arguments.length){if(null==t)for(n in this)this.hasOwnProperty(n)&&this[n].on(r,null);return this}},Bo.event=null,Bo.requote=function(n){return n.replace(ha,"\\$&")};var ha=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,ga={}.__proto__?function(n,t){n.__proto__=t}:function(n,t){for(var e in t)n[e]=t[e]},pa=function(n,t){return t.querySelector(n)},va=function(n,t){return t.querySelectorAll(n)},da=Ko[a(Ko,"matchesSelector")],ma=function(n,t){return da.call(n,t)};"function"==typeof Sizzle&&(pa=function(n,t){return Sizzle(n,t)[0]||null},va=function(n,t){return Sizzle.uniqueSort(Sizzle(n,t))},ma=Sizzle.matchesSelector),Bo.selection=function(){return _a};var ya=Bo.selection.prototype=[];ya.select=function(n){var t,e,r,u,i=[];n=v(n);for(var o=-1,a=this.length;++o<a;){i.push(t=[]),t.parentNode=(r=this[o]).parentNode;for(var c=-1,s=r.length;++c<s;)(u=r[c])?(t.push(e=n.call(u,u.__data__,c,o)),e&&"__data__"in u&&(e.__data__=u.__data__)):t.push(null)}return p(i)},ya.selectAll=function(n){var t,e,r=[];n=d(n);for(var u=-1,i=this.length;++u<i;)for(var o=this[u],a=-1,c=o.length;++a<c;)(e=o[a])&&(r.push(t=Jo(n.call(e,e.__data__,a,u))),t.parentNode=e);return p(r)};var xa={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};Bo.ns={prefix:xa,qualify:function(n){var t=n.indexOf(":"),e=n;return t>=0&&(e=n.substring(0,t),n=n.substring(t+1)),xa.hasOwnProperty(e)?{space:xa[e],local:n}:n}},ya.attr=function(n,t){if(arguments.length<2){if("string"==typeof n){var e=this.node();return n=Bo.ns.qualify(n),n.local?e.getAttributeNS(n.space,n.local):e.getAttribute(n)}for(t in n)this.each(m(t,n[t]));return this}return this.each(m(n,t))},ya.classed=function(n,t){if(arguments.length<2){if("string"==typeof n){var e=this.node(),r=(n=M(n)).length,u=-1;if(t=e.classList){for(;++u<r;)if(!t.contains(n[u]))return!1}else for(t=e.getAttribute("class");++u<r;)if(!x(n[u]).test(t))return!1;return!0}for(t in n)this.each(_(t,n[t]));return this}return this.each(_(n,t))},ya.style=function(n,t,e){var r=arguments.length;if(3>r){if("string"!=typeof n){2>r&&(t="");for(e in n)this.each(w(e,n[e],t));return this}if(2>r)return Qo.getComputedStyle(this.node(),null).getPropertyValue(n);e=""}return this.each(w(n,t,e))},ya.property=function(n,t){if(arguments.length<2){if("string"==typeof n)return this.node()[n];for(t in n)this.each(S(t,n[t]));return this}return this.each(S(n,t))},ya.text=function(n){return arguments.length?this.each("function"==typeof n?function(){var t=n.apply(this,arguments);this.textContent=null==t?"":t}:null==n?function(){this.textContent=""}:function(){this.textContent=n}):this.node().textContent},ya.html=function(n){return arguments.length?this.each("function"==typeof n?function(){var t=n.apply(this,arguments);this.innerHTML=null==t?"":t}:null==n?function(){this.innerHTML=""}:function(){this.innerHTML=n}):this.node().innerHTML},ya.append=function(n){return n=k(n),this.select(function(){return this.appendChild(n.apply(this,arguments))})},ya.insert=function(n,t){return n=k(n),t=v(t),this.select(function(){return this.insertBefore(n.apply(this,arguments),t.apply(this,arguments)||null)})},ya.remove=function(){return this.each(function(){var n=this.parentNode;n&&n.removeChild(this)})},ya.data=function(n,t){function e(n,e){var r,i,o,a=n.length,f=e.length,h=Math.min(a,f),g=new Array(f),p=new Array(f),v=new Array(a);if(t){var d,m=new u,y=new u,x=[];for(r=-1;++r<a;)d=t.call(i=n[r],i.__data__,r),m.has(d)?v[r]=i:m.set(d,i),x.push(d);for(r=-1;++r<f;)d=t.call(e,o=e[r],r),(i=m.get(d))?(g[r]=i,i.__data__=o):y.has(d)||(p[r]=E(o)),y.set(d,o),m.remove(d);for(r=-1;++r<a;)m.has(x[r])&&(v[r]=n[r])}else{for(r=-1;++r<h;)i=n[r],o=e[r],i?(i.__data__=o,g[r]=i):p[r]=E(o);for(;f>r;++r)p[r]=E(e[r]);for(;a>r;++r)v[r]=n[r]}p.update=g,p.parentNode=g.parentNode=v.parentNode=n.parentNode,c.push(p),s.push(g),l.push(v)}var r,i,o=-1,a=this.length;if(!arguments.length){for(n=new Array(a=(r=this[0]).length);++o<a;)(i=r[o])&&(n[o]=i.__data__);return n}var c=L([]),s=p([]),l=p([]);if("function"==typeof n)for(;++o<a;)e(r=this[o],n.call(r,r.parentNode.__data__,o));else for(;++o<a;)e(r=this[o],n);return s.enter=function(){return c},s.exit=function(){return l},s},ya.datum=function(n){return arguments.length?this.property("__data__",n):this.property("__data__")},ya.filter=function(n){var t,e,r,u=[];"function"!=typeof n&&(n=A(n));for(var i=0,o=this.length;o>i;i++){u.push(t=[]),t.parentNode=(e=this[i]).parentNode;for(var a=0,c=e.length;c>a;a++)(r=e[a])&&n.call(r,r.__data__,a,i)&&t.push(r)}return p(u)},ya.order=function(){for(var n=-1,t=this.length;++n<t;)for(var e,r=this[n],u=r.length-1,i=r[u];--u>=0;)(e=r[u])&&(i&&i!==e.nextSibling&&i.parentNode.insertBefore(e,i),i=e);return this},ya.sort=function(n){n=C.apply(this,arguments);for(var t=-1,e=this.length;++t<e;)this[t].sort(n);return this.order()},ya.each=function(n){return N(this,function(t,e,r){n.call(t,t.__data__,e,r)})},ya.call=function(n){var t=Jo(arguments);return n.apply(t[0]=this,t),this},ya.empty=function(){return!this.node()},ya.node=function(){for(var n=0,t=this.length;t>n;n++)for(var e=this[n],r=0,u=e.length;u>r;r++){var i=e[r];if(i)return i}return null},ya.size=function(){var n=0;return this.each(function(){++n}),n};var Ma=[];Bo.selection.enter=L,Bo.selection.enter.prototype=Ma,Ma.append=ya.append,Ma.empty=ya.empty,Ma.node=ya.node,Ma.call=ya.call,Ma.size=ya.size,Ma.select=function(n){for(var t,e,r,u,i,o=[],a=-1,c=this.length;++a<c;){r=(u=this[a]).update,o.push(t=[]),t.parentNode=u.parentNode;for(var s=-1,l=u.length;++s<l;)(i=u[s])?(t.push(r[s]=e=n.call(u.parentNode,i.__data__,s,a)),e.__data__=i.__data__):t.push(null)}return p(o)},Ma.insert=function(n,t){return arguments.length<2&&(t=T(this)),ya.insert.call(this,n,t)},ya.transition=function(){for(var n,t,e=ks||++Ls,r=[],u=Es||{time:Date.now(),ease:Fr,delay:0,duration:250},i=-1,o=this.length;++i<o;){r.push(n=[]);for(var a=this[i],c=-1,s=a.length;++c<s;)(t=a[c])&&io(t,c,e,u),n.push(t)}return eo(r,e)},ya.interrupt=function(){return this.each(q)},Bo.select=function(n){var t=["string"==typeof n?pa(n,Go):n];return t.parentNode=Ko,p([t])},Bo.selectAll=function(n){var t=Jo("string"==typeof n?va(n,Go):n);return t.parentNode=Ko,p([t])};var _a=Bo.select(Ko);ya.on=function(n,t,e){var r=arguments.length;if(3>r){if("string"!=typeof n){2>r&&(t=!1);for(e in n)this.each(z(e,n[e],t));return this}if(2>r)return(r=this.node()["__on"+n])&&r._;e=!1}return this.each(z(n,t,e))};var ba=Bo.map({mouseenter:"mouseover",mouseleave:"mouseout"});ba.forEach(function(n){"on"+n in Go&&ba.remove(n)});var wa="onselectstart"in Go?null:a(Ko.style,"userSelect"),Sa=0;Bo.mouse=function(n){return U(n,h())};var ka=/WebKit/.test(Qo.navigator.userAgent)?-1:0;Bo.touches=function(n,t){return arguments.length<2&&(t=h().touches),t?Jo(t).map(function(t){var e=U(n,t);return e.identifier=t.identifier,e}):[]},Bo.behavior.drag=function(){function n(){this.on("mousedown.drag",o).on("touchstart.drag",a)}function t(){return Bo.event.changedTouches[0].identifier}function e(n,t){return Bo.touches(n).filter(function(n){return n.identifier===t})[0]}function r(n,t,e,r){return function(){function o(){var n=t(l,g),e=n[0]-v[0],r=n[1]-v[1];d|=e|r,v=n,f({type:"drag",x:n[0]+c[0],y:n[1]+c[1],dx:e,dy:r})}function a(){m.on(e+"."+p,null).on(r+"."+p,null),y(d&&Bo.event.target===h),f({type:"dragend"})}var c,s=this,l=s.parentNode,f=u.of(s,arguments),h=Bo.event.target,g=n(),p=null==g?"drag":"drag-"+g,v=t(l,g),d=0,m=Bo.select(Qo).on(e+"."+p,o).on(r+"."+p,a),y=P();i?(c=i.apply(s,arguments),c=[c.x-v[0],c.y-v[1]]):c=[0,0],f({type:"dragstart"})}}var u=g(n,"drag","dragstart","dragend"),i=null,o=r(c,Bo.mouse,"mousemove","mouseup"),a=r(t,e,"touchmove","touchend");return n.origin=function(t){return arguments.length?(i=t,n):i},Bo.rebind(n,u,"on")};var Ea=Math.PI,Aa=2*Ea,Ca=Ea/2,Na=1e-6,La=Na*Na,Ta=Ea/180,qa=180/Ea,za=Math.SQRT2,Ra=2,Da=4;Bo.interpolateZoom=function(n,t){function e(n){var t=n*y;if(m){var e=Y(v),o=i/(Ra*h)*(e*I(za*t+v)-O(v));return[r+o*s,u+o*l,i*e/Y(za*t+v)]}return[r+n*s,u+n*l,i*Math.exp(za*t)]}var r=n[0],u=n[1],i=n[2],o=t[0],a=t[1],c=t[2],s=o-r,l=a-u,f=s*s+l*l,h=Math.sqrt(f),g=(c*c-i*i+Da*f)/(2*i*Ra*h),p=(c*c-i*i-Da*f)/(2*c*Ra*h),v=Math.log(Math.sqrt(g*g+1)-g),d=Math.log(Math.sqrt(p*p+1)-p),m=d-v,y=(m||Math.log(c/i))/za;return e.duration=1e3*y,e},Bo.behavior.zoom=function(){function n(n){n.on(A,s).on(ja+".zoom",h).on(C,p).on("dblclick.zoom",v).on(L,l)}function t(n){return[(n[0]-S.x)/S.k,(n[1]-S.y)/S.k]}function e(n){return[n[0]*S.k+S.x,n[1]*S.k+S.y]}function r(n){S.k=Math.max(E[0],Math.min(E[1],n))}function u(n,t){t=e(t),S.x+=n[0]-t[0],S.y+=n[1]-t[1]}function i(){_&&_.domain(M.range().map(function(n){return(n-S.x)/S.k}).map(M.invert)),w&&w.domain(b.range().map(function(n){return(n-S.y)/S.k}).map(b.invert))}function o(n){n({type:"zoomstart"})}function a(n){i(),n({type:"zoom",scale:S.k,translate:[S.x,S.y]})}function c(n){n({type:"zoomend"})}function s(){function n(){l=1,u(Bo.mouse(r),h),a(i)}function e(){f.on(C,Qo===r?p:null).on(N,null),g(l&&Bo.event.target===s),c(i)}var r=this,i=T.of(r,arguments),s=Bo.event.target,l=0,f=Bo.select(Qo).on(C,n).on(N,e),h=t(Bo.mouse(r)),g=P();q.call(r),o(i)}function l(){function n(){var n=Bo.touches(p);return g=S.k,n.forEach(function(n){n.identifier in d&&(d[n.identifier]=t(n))}),n}function e(){for(var t=Bo.event.changedTouches,e=0,i=t.length;i>e;++e)d[t[e].identifier]=null;var o=n(),c=Date.now();if(1===o.length){if(500>c-x){var s=o[0],l=d[s.identifier];r(2*S.k),u(s,l),f(),a(v)}x=c}else if(o.length>1){var s=o[0],h=o[1],g=s[0]-h[0],p=s[1]-h[1];m=g*g+p*p}}function i(){for(var n,t,e,i,o=Bo.touches(p),c=0,s=o.length;s>c;++c,i=null)if(e=o[c],i=d[e.identifier]){if(t)break;n=e,t=i}if(i){var l=(l=e[0]-n[0])*l+(l=e[1]-n[1])*l,f=m&&Math.sqrt(l/m);n=[(n[0]+e[0])/2,(n[1]+e[1])/2],t=[(t[0]+i[0])/2,(t[1]+i[1])/2],r(f*g)}x=null,u(n,t),a(v)}function h(){if(Bo.event.touches.length){for(var t=Bo.event.changedTouches,e=0,r=t.length;r>e;++e)delete d[t[e].identifier];for(var u in d)return void n()}b.on(M,null).on(_,null),w.on(A,s).on(L,l),k(),c(v)}var g,p=this,v=T.of(p,arguments),d={},m=0,y=Bo.event.changedTouches[0].identifier,M="touchmove.zoom-"+y,_="touchend.zoom-"+y,b=Bo.select(Qo).on(M,i).on(_,h),w=Bo.select(p).on(A,null).on(L,e),k=P();q.call(p),e(),o(v)}function h(){var n=T.of(this,arguments);y?clearTimeout(y):(q.call(this),o(n)),y=setTimeout(function(){y=null,c(n)},50),f();var e=m||Bo.mouse(this);d||(d=t(e)),r(Math.pow(2,.002*Pa())*S.k),u(e,d),a(n)}function p(){d=null}function v(){var n=T.of(this,arguments),e=Bo.mouse(this),i=t(e),s=Math.log(S.k)/Math.LN2;o(n),r(Math.pow(2,Bo.event.shiftKey?Math.ceil(s)-1:Math.floor(s)+1)),u(e,i),a(n),c(n)}var d,m,y,x,M,_,b,w,S={x:0,y:0,k:1},k=[960,500],E=Ua,A="mousedown.zoom",C="mousemove.zoom",N="mouseup.zoom",L="touchstart.zoom",T=g(n,"zoomstart","zoom","zoomend");return n.event=function(n){n.each(function(){var n=T.of(this,arguments),t=S;ks?Bo.select(this).transition().each("start.zoom",function(){S=this.__chart__||{x:0,y:0,k:1},o(n)}).tween("zoom:zoom",function(){var e=k[0],r=k[1],u=e/2,i=r/2,o=Bo.interpolateZoom([(u-S.x)/S.k,(i-S.y)/S.k,e/S.k],[(u-t.x)/t.k,(i-t.y)/t.k,e/t.k]);return function(t){var r=o(t),c=e/r[2];this.__chart__=S={x:u-r[0]*c,y:i-r[1]*c,k:c},a(n)}}).each("end.zoom",function(){c(n)}):(this.__chart__=S,o(n),a(n),c(n))})},n.translate=function(t){return arguments.length?(S={x:+t[0],y:+t[1],k:S.k},i(),n):[S.x,S.y]},n.scale=function(t){return arguments.length?(S={x:S.x,y:S.y,k:+t},i(),n):S.k},n.scaleExtent=function(t){return arguments.length?(E=null==t?Ua:[+t[0],+t[1]],n):E},n.center=function(t){return arguments.length?(m=t&&[+t[0],+t[1]],n):m},n.size=function(t){return arguments.length?(k=t&&[+t[0],+t[1]],n):k},n.x=function(t){return arguments.length?(_=t,M=t.copy(),S={x:0,y:0,k:1},n):_},n.y=function(t){return arguments.length?(w=t,b=t.copy(),S={x:0,y:0,k:1},n):w},Bo.rebind(n,T,"on")};var Pa,Ua=[0,1/0],ja="onwheel"in Go?(Pa=function(){return-Bo.event.deltaY*(Bo.event.deltaMode?120:1)},"wheel"):"onmousewheel"in Go?(Pa=function(){return Bo.event.wheelDelta},"mousewheel"):(Pa=function(){return-Bo.event.detail},"MozMousePixelScroll");V.prototype.toString=function(){return this.rgb()+""},Bo.hsl=function(n,t,e){return 1===arguments.length?n instanceof $?X(n.h,n.s,n.l):lt(""+n,ft,X):X(+n,+t,+e)};var Ha=$.prototype=new V;Ha.brighter=function(n){return n=Math.pow(.7,arguments.length?n:1),X(this.h,this.s,this.l/n)},Ha.darker=function(n){return n=Math.pow(.7,arguments.length?n:1),X(this.h,this.s,n*this.l)},Ha.rgb=function(){return B(this.h,this.s,this.l)},Bo.hcl=function(n,t,e){return 1===arguments.length?n instanceof J?W(n.h,n.c,n.l):n instanceof Q?tt(n.l,n.a,n.b):tt((n=ht((n=Bo.rgb(n)).r,n.g,n.b)).l,n.a,n.b):W(+n,+t,+e)};var Fa=J.prototype=new V;Fa.brighter=function(n){return W(this.h,this.c,Math.min(100,this.l+Oa*(arguments.length?n:1)))},Fa.darker=function(n){return W(this.h,this.c,Math.max(0,this.l-Oa*(arguments.length?n:1)))},Fa.rgb=function(){return G(this.h,this.c,this.l).rgb()},Bo.lab=function(n,t,e){return 1===arguments.length?n instanceof Q?K(n.l,n.a,n.b):n instanceof J?G(n.l,n.c,n.h):ht((n=Bo.rgb(n)).r,n.g,n.b):K(+n,+t,+e)};var Oa=18,Ya=.95047,Ia=1,Za=1.08883,Va=Q.prototype=new V;Va.brighter=function(n){return K(Math.min(100,this.l+Oa*(arguments.length?n:1)),this.a,this.b)},Va.darker=function(n){return K(Math.max(0,this.l-Oa*(arguments.length?n:1)),this.a,this.b)},Va.rgb=function(){return nt(this.l,this.a,this.b)},Bo.rgb=function(n,t,e){return 1===arguments.length?n instanceof ct?at(n.r,n.g,n.b):lt(""+n,at,B):at(~~n,~~t,~~e)};var Xa=ct.prototype=new V;Xa.brighter=function(n){n=Math.pow(.7,arguments.length?n:1);var t=this.r,e=this.g,r=this.b,u=30;return t||e||r?(t&&u>t&&(t=u),e&&u>e&&(e=u),r&&u>r&&(r=u),at(Math.min(255,~~(t/n)),Math.min(255,~~(e/n)),Math.min(255,~~(r/n)))):at(u,u,u)},Xa.darker=function(n){return n=Math.pow(.7,arguments.length?n:1),at(~~(n*this.r),~~(n*this.g),~~(n*this.b))},Xa.hsl=function(){return ft(this.r,this.g,this.b)},Xa.toString=function(){return"#"+st(this.r)+st(this.g)+st(this.b)};var $a=Bo.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});$a.forEach(function(n,t){$a.set(n,it(t))}),Bo.functor=vt,Bo.xhr=mt(dt),Bo.dsv=function(n,t){function e(n,e,i){arguments.length<3&&(i=e,e=null);var o=yt(n,t,null==e?r:u(e),i);return o.row=function(n){return arguments.length?o.response(null==(e=n)?r:u(n)):e},o}function r(n){return e.parse(n.responseText)}function u(n){return function(t){return e.parse(t.responseText,n)}}function o(t){return t.map(a).join(n)}function a(n){return c.test(n)?'"'+n.replace(/\"/g,'""')+'"':n}var c=new RegExp('["'+n+"\n]"),s=n.charCodeAt(0);return e.parse=function(n,t){var r;return e.parseRows(n,function(n,e){if(r)return r(n,e-1);var u=new Function("d","return {"+n.map(function(n,t){return JSON.stringify(n)+": d["+t+"]"}).join(",")+"}");r=t?function(n,e){return t(u(n),e)}:u})},e.parseRows=function(n,t){function e(){if(l>=c)return o;if(u)return u=!1,i;var t=l;if(34===n.charCodeAt(t)){for(var e=t;e++<c;)if(34===n.charCodeAt(e)){if(34!==n.charCodeAt(e+1))break;++e}l=e+2;var r=n.charCodeAt(e+1);return 13===r?(u=!0,10===n.charCodeAt(e+2)&&++l):10===r&&(u=!0),n.substring(t+1,e).replace(/""/g,'"')}for(;c>l;){var r=n.charCodeAt(l++),a=1;if(10===r)u=!0;else if(13===r)u=!0,10===n.charCodeAt(l)&&(++l,++a);else if(r!==s)continue;return n.substring(t,l-a)}return n.substring(t)}for(var r,u,i={},o={},a=[],c=n.length,l=0,f=0;(r=e())!==o;){for(var h=[];r!==i&&r!==o;)h.push(r),r=e();(!t||(h=t(h,f++)))&&a.push(h)}return a},e.format=function(t){if(Array.isArray(t[0]))return e.formatRows(t);var r=new i,u=[];return t.forEach(function(n){for(var t in n)r.has(t)||u.push(r.add(t))}),[u.map(a).join(n)].concat(t.map(function(t){return u.map(function(n){return a(t[n])}).join(n)})).join("\n")},e.formatRows=function(n){return n.map(o).join("\n")},e},Bo.csv=Bo.dsv(",","text/csv"),Bo.tsv=Bo.dsv(" ","text/tab-separated-values");var Ba,Wa,Ja,Ga,Ka,Qa=Qo[a(Qo,"requestAnimationFrame")]||function(n){setTimeout(n,17)};Bo.timer=function(n,t,e){var r=arguments.length;2>r&&(t=0),3>r&&(e=Date.now());var u=e+t,i={c:n,t:u,f:!1,n:null};Wa?Wa.n=i:Ba=i,Wa=i,Ja||(Ga=clearTimeout(Ga),Ja=1,Qa(Mt))},Bo.timer.flush=function(){_t(),bt()};var nc=".",tc=",",ec=[3,3],rc="$",uc=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"].map(wt);Bo.formatPrefix=function(n,t){var e=0;return n&&(0>n&&(n*=-1),t&&(n=Bo.round(n,St(n,t))),e=1+Math.floor(1e-12+Math.log(n)/Math.LN10),e=Math.max(-24,Math.min(24,3*Math.floor((0>=e?e+1:e-1)/3)))),uc[8+e/3]},Bo.round=function(n,t){return t?Math.round(n*(t=Math.pow(10,t)))/t:Math.round(n)},Bo.format=function(n){var t=ic.exec(n),e=t[1]||" ",r=t[2]||">",u=t[3]||"",i=t[4]||"",o=t[5],a=+t[6],c=t[7],s=t[8],l=t[9],f=1,h="",g=!1;switch(s&&(s=+s.substring(1)),(o||"0"===e&&"="===r)&&(o=e="0",r="=",c&&(a-=Math.floor((a-1)/4))),l){case"n":c=!0,l="g";break;case"%":f=100,h="%",l="f";break;case"p":f=100,h="%",l="r";break;case"b":case"o":case"x":case"X":"#"===i&&(i="0"+l.toLowerCase());case"c":case"d":g=!0,s=0;break;case"s":f=-1,l="r"}"#"===i?i="":"$"===i&&(i=rc),"r"!=l||s||(l="g"),null!=s&&("g"==l?s=Math.max(1,Math.min(21,s)):("e"==l||"f"==l)&&(s=Math.max(0,Math.min(20,s)))),l=oc.get(l)||kt;var p=o&&c;return function(n){if(g&&n%1)return"";var t=0>n||0===n&&0>1/n?(n=-n,"-"):u;if(0>f){var v=Bo.formatPrefix(n,s);n=v.scale(n),h=v.symbol}else n*=f;n=l(n,s);var d=n.lastIndexOf("."),m=0>d?n:n.substring(0,d),y=0>d?"":nc+n.substring(d+1);!o&&c&&(m=ac(m));var x=i.length+m.length+y.length+(p?0:t.length),M=a>x?new Array(x=a-x+1).join(e):"";return p&&(m=ac(M+m)),t+=i,n=m+y,("<"===r?t+n+M:">"===r?M+t+n:"^"===r?M.substring(0,x>>=1)+t+n+M.substring(x):t+(p?n:M+n))+h}};var ic=/(?:([^{])?([<>=^]))?([+\- ])?([$#])?(0)?(\d+)?(,)?(\.-?\d+)?([a-z%])?/i,oc=Bo.map({b:function(n){return n.toString(2)},c:function(n){return String.fromCharCode(n)},o:function(n){return n.toString(8)},x:function(n){return n.toString(16)},X:function(n){return n.toString(16).toUpperCase()},g:function(n,t){return n.toPrecision(t)},e:function(n,t){return n.toExponential(t)},f:function(n,t){return n.toFixed(t)},r:function(n,t){return(n=Bo.round(n,St(n,t))).toFixed(Math.max(0,Math.min(20,St(n*(1+1e-15),t))))}}),ac=dt;if(ec){var cc=ec.length;ac=function(n){for(var t=n.length,e=[],r=0,u=ec[0];t>0&&u>0;)e.push(n.substring(t-=u,t+u)),u=ec[r=(r+1)%cc];return e.reverse().join(tc)}}Bo.geo={},Et.prototype={s:0,t:0,add:function(n){At(n,this.t,sc),At(sc.s,this.s,this),this.s?this.t+=sc.t:this.s=sc.t},reset:function(){this.s=this.t=0},valueOf:function(){return this.s}};var sc=new Et;Bo.geo.stream=function(n,t){n&&lc.hasOwnProperty(n.type)?lc[n.type](n,t):Ct(n,t)};var lc={Feature:function(n,t){Ct(n.geometry,t)},FeatureCollection:function(n,t){for(var e=n.features,r=-1,u=e.length;++r<u;)Ct(e[r].geometry,t)}},fc={Sphere:function(n,t){t.sphere()},Point:function(n,t){n=n.coordinates,t.point(n[0],n[1],n[2])},MultiPoint:function(n,t){for(var e=n.coordinates,r=-1,u=e.length;++r<u;)n=e[r],t.point(n[0],n[1],n[2])},LineString:function(n,t){Nt(n.coordinates,t,0)},MultiLineString:function(n,t){for(var e=n.coordinates,r=-1,u=e.length;++r<u;)Nt(e[r],t,0)},Polygon:function(n,t){Lt(n.coordinates,t)},MultiPolygon:function(n,t){for(var e=n.coordinates,r=-1,u=e.length;++r<u;)Lt(e[r],t)},GeometryCollection:function(n,t){for(var e=n.geometries,r=-1,u=e.length;++r<u;)Ct(e[r],t)}};Bo.geo.area=function(n){return hc=0,Bo.geo.stream(n,pc),hc};var hc,gc=new Et,pc={sphere:function(){hc+=4*Ea},point:c,lineStart:c,lineEnd:c,polygonStart:function(){gc.reset(),pc.lineStart=Tt},polygonEnd:function(){var n=2*gc;hc+=0>n?4*Ea+n:n,pc.lineStart=pc.lineEnd=pc.point=c}};Bo.geo.bounds=function(){function n(n,t){x.push(M=[l=n,h=n]),f>t&&(f=t),t>g&&(g=t)}function t(t,e){var r=qt([t*Ta,e*Ta]);if(m){var u=Rt(m,r),i=[u[1],-u[0],0],o=Rt(i,u);Ut(o),o=jt(o);var c=t-p,s=c>0?1:-1,v=o[0]*qa*s,d=ca(c)>180;if(d^(v>s*p&&s*t>v)){var y=o[1]*qa;y>g&&(g=y)}else if(v=(v+360)%360-180,d^(v>s*p&&s*t>v)){var y=-o[1]*qa;f>y&&(f=y)}else f>e&&(f=e),e>g&&(g=e);d?p>t?a(l,t)>a(l,h)&&(h=t):a(t,h)>a(l,h)&&(l=t):h>=l?(l>t&&(l=t),t>h&&(h=t)):t>p?a(l,t)>a(l,h)&&(h=t):a(t,h)>a(l,h)&&(l=t)}else n(t,e);m=r,p=t}function e(){_.point=t}function r(){M[0]=l,M[1]=h,_.point=n,m=null}function u(n,e){if(m){var r=n-p;y+=ca(r)>180?r+(r>0?360:-360):r}else v=n,d=e;pc.point(n,e),t(n,e)}function i(){pc.lineStart()}function o(){u(v,d),pc.lineEnd(),ca(y)>Na&&(l=-(h=180)),M[0]=l,M[1]=h,m=null}function a(n,t){return(t-=n)<0?t+360:t}function c(n,t){return n[0]-t[0]}function s(n,t){return t[0]<=t[1]?t[0]<=n&&n<=t[1]:n<t[0]||t[1]<n}var l,f,h,g,p,v,d,m,y,x,M,_={point:n,lineStart:e,lineEnd:r,polygonStart:function(){_.point=u,_.lineStart=i,_.lineEnd=o,y=0,pc.polygonStart()},polygonEnd:function(){pc.polygonEnd(),_.point=n,_.lineStart=e,_.lineEnd=r,0>gc?(l=-(h=180),f=-(g=90)):y>Na?g=90:-Na>y&&(f=-90),M[0]=l,M[1]=h}};return function(n){g=h=-(l=f=1/0),x=[],Bo.geo.stream(n,_);var t=x.length;if(t){x.sort(c);for(var e,r=1,u=x[0],i=[u];t>r;++r)e=x[r],s(e[0],u)||s(e[1],u)?(a(u[0],e[1])>a(u[0],u[1])&&(u[1]=e[1]),a(e[0],u[1])>a(u[0],u[1])&&(u[0]=e[0])):i.push(u=e);for(var o,e,p=-1/0,t=i.length-1,r=0,u=i[t];t>=r;u=e,++r)e=i[r],(o=a(u[1],e[0]))>p&&(p=o,l=e[0],h=u[1])}return x=M=null,1/0===l||1/0===f?[[0/0,0/0],[0/0,0/0]]:[[l,f],[h,g]]}}(),Bo.geo.centroid=function(n){vc=dc=mc=yc=xc=Mc=_c=bc=wc=Sc=kc=0,Bo.geo.stream(n,Ec);var t=wc,e=Sc,r=kc,u=t*t+e*e+r*r;return La>u&&(t=Mc,e=_c,r=bc,Na>dc&&(t=mc,e=yc,r=xc),u=t*t+e*e+r*r,La>u)?[0/0,0/0]:[Math.atan2(e,t)*qa,F(r/Math.sqrt(u))*qa]};var vc,dc,mc,yc,xc,Mc,_c,bc,wc,Sc,kc,Ec={sphere:c,point:Ft,lineStart:Yt,lineEnd:It,polygonStart:function(){Ec.lineStart=Zt},polygonEnd:function(){Ec.lineStart=Yt}},Ac=Wt(Vt,ne,ee,[-Ea,-Ea/2]),Cc=1e9;Bo.geo.clipExtent=function(){var n,t,e,r,u,i,o={stream:function(n){return u&&(u.valid=!1),u=i(n),u.valid=!0,u},extent:function(a){return arguments.length?(i=ie(n=+a[0][0],t=+a[0][1],e=+a[1][0],r=+a[1][1]),u&&(u.valid=!1,u=null),o):[[n,t],[e,r]]}};return o.extent([[0,0],[960,500]])},(Bo.geo.conicEqualArea=function(){return ae(ce)}).raw=ce,Bo.geo.albers=function(){return Bo.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)},Bo.geo.albersUsa=function(){function n(n){var i=n[0],o=n[1];return t=null,e(i,o),t||(r(i,o),t)||u(i,o),t}var t,e,r,u,i=Bo.geo.albers(),o=Bo.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),a=Bo.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),c={point:function(n,e){t=[n,e]}};return n.invert=function(n){var t=i.scale(),e=i.translate(),r=(n[0]-e[0])/t,u=(n[1]-e[1])/t;return(u>=.12&&.234>u&&r>=-.425&&-.214>r?o:u>=.166&&.234>u&&r>=-.214&&-.115>r?a:i).invert(n)},n.stream=function(n){var t=i.stream(n),e=o.stream(n),r=a.stream(n);return{point:function(n,u){t.point(n,u),e.point(n,u),r.point(n,u)},sphere:function(){t.sphere(),e.sphere(),r.sphere()},lineStart:function(){t.lineStart(),e.lineStart(),r.lineStart()},lineEnd:function(){t.lineEnd(),e.lineEnd(),r.lineEnd()},polygonStart:function(){t.polygonStart(),e.polygonStart(),r.polygonStart()},polygonEnd:function(){t.polygonEnd(),e.polygonEnd(),r.polygonEnd()}}},n.precision=function(t){return arguments.length?(i.precision(t),o.precision(t),a.precision(t),n):i.precision()},n.scale=function(t){return arguments.length?(i.scale(t),o.scale(.35*t),a.scale(t),n.translate(i.translate())):i.scale()},n.translate=function(t){if(!arguments.length)return i.translate();var s=i.scale(),l=+t[0],f=+t[1];return e=i.translate(t).clipExtent([[l-.455*s,f-.238*s],[l+.455*s,f+.238*s]]).stream(c).point,r=o.translate([l-.307*s,f+.201*s]).clipExtent([[l-.425*s+Na,f+.12*s+Na],[l-.214*s-Na,f+.234*s-Na]]).stream(c).point,u=a.translate([l-.205*s,f+.212*s]).clipExtent([[l-.214*s+Na,f+.166*s+Na],[l-.115*s-Na,f+.234*s-Na]]).stream(c).point,n},n.scale(1070)};var Nc,Lc,Tc,qc,zc,Rc,Dc={point:c,lineStart:c,lineEnd:c,polygonStart:function(){Lc=0,Dc.lineStart=se},polygonEnd:function(){Dc.lineStart=Dc.lineEnd=Dc.point=c,Nc+=ca(Lc/2)}},Pc={point:le,lineStart:c,lineEnd:c,polygonStart:c,polygonEnd:c},Uc={point:ge,lineStart:pe,lineEnd:ve,polygonStart:function(){Uc.lineStart=de},polygonEnd:function(){Uc.point=ge,Uc.lineStart=pe,Uc.lineEnd=ve}};Bo.geo.path=function(){function n(n){return n&&("function"==typeof a&&i.pointRadius(+a.apply(this,arguments)),o&&o.valid||(o=u(i)),Bo.geo.stream(n,o)),i.result()}function t(){return o=null,n}var e,r,u,i,o,a=4.5;return n.area=function(n){return Nc=0,Bo.geo.stream(n,u(Dc)),Nc},n.centroid=function(n){return mc=yc=xc=Mc=_c=bc=wc=Sc=kc=0,Bo.geo.stream(n,u(Uc)),kc?[wc/kc,Sc/kc]:bc?[Mc/bc,_c/bc]:xc?[mc/xc,yc/xc]:[0/0,0/0]},n.bounds=function(n){return zc=Rc=-(Tc=qc=1/0),Bo.geo.stream(n,u(Pc)),[[Tc,qc],[zc,Rc]]},n.projection=function(n){return arguments.length?(u=(e=n)?n.stream||xe(n):dt,t()):e},n.context=function(n){return arguments.length?(i=null==(r=n)?new fe:new me(n),"function"!=typeof a&&i.pointRadius(a),t()):r},n.pointRadius=function(t){return arguments.length?(a="function"==typeof t?t:(i.pointRadius(+t),+t),n):a},n.projection(Bo.geo.albersUsa()).context(null)},Bo.geo.transform=function(n){return{stream:function(t){var e=new Me(t);for(var r in n)e[r]=n[r];return e}}},Me.prototype={point:function(n,t){this.stream.point(n,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart() | |
},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}},Bo.geo.projection=be,Bo.geo.projectionMutator=we,(Bo.geo.equirectangular=function(){return be(ke)}).raw=ke.invert=ke,Bo.geo.rotation=function(n){function t(t){return t=n(t[0]*Ta,t[1]*Ta),t[0]*=qa,t[1]*=qa,t}return n=Ae(n[0]%360*Ta,n[1]*Ta,n.length>2?n[2]*Ta:0),t.invert=function(t){return t=n.invert(t[0]*Ta,t[1]*Ta),t[0]*=qa,t[1]*=qa,t},t},Ee.invert=ke,Bo.geo.circle=function(){function n(){var n="function"==typeof r?r.apply(this,arguments):r,t=Ae(-n[0]*Ta,-n[1]*Ta,0).invert,u=[];return e(null,null,1,{point:function(n,e){u.push(n=t(n,e)),n[0]*=qa,n[1]*=qa}}),{type:"Polygon",coordinates:[u]}}var t,e,r=[0,0],u=6;return n.origin=function(t){return arguments.length?(r=t,n):r},n.angle=function(r){return arguments.length?(e=Te((t=+r)*Ta,u*Ta),n):t},n.precision=function(r){return arguments.length?(e=Te(t*Ta,(u=+r)*Ta),n):u},n.angle(90)},Bo.geo.distance=function(n,t){var e,r=(t[0]-n[0])*Ta,u=n[1]*Ta,i=t[1]*Ta,o=Math.sin(r),a=Math.cos(r),c=Math.sin(u),s=Math.cos(u),l=Math.sin(i),f=Math.cos(i);return Math.atan2(Math.sqrt((e=f*o)*e+(e=s*l-c*f*a)*e),c*l+s*f*a)},Bo.geo.graticule=function(){function n(){return{type:"MultiLineString",coordinates:t()}}function t(){return Bo.range(Math.ceil(i/d)*d,u,d).map(h).concat(Bo.range(Math.ceil(s/m)*m,c,m).map(g)).concat(Bo.range(Math.ceil(r/p)*p,e,p).filter(function(n){return ca(n%d)>Na}).map(l)).concat(Bo.range(Math.ceil(a/v)*v,o,v).filter(function(n){return ca(n%m)>Na}).map(f))}var e,r,u,i,o,a,c,s,l,f,h,g,p=10,v=p,d=90,m=360,y=2.5;return n.lines=function(){return t().map(function(n){return{type:"LineString",coordinates:n}})},n.outline=function(){return{type:"Polygon",coordinates:[h(i).concat(g(c).slice(1),h(u).reverse().slice(1),g(s).reverse().slice(1))]}},n.extent=function(t){return arguments.length?n.majorExtent(t).minorExtent(t):n.minorExtent()},n.majorExtent=function(t){return arguments.length?(i=+t[0][0],u=+t[1][0],s=+t[0][1],c=+t[1][1],i>u&&(t=i,i=u,u=t),s>c&&(t=s,s=c,c=t),n.precision(y)):[[i,s],[u,c]]},n.minorExtent=function(t){return arguments.length?(r=+t[0][0],e=+t[1][0],a=+t[0][1],o=+t[1][1],r>e&&(t=r,r=e,e=t),a>o&&(t=a,a=o,o=t),n.precision(y)):[[r,a],[e,o]]},n.step=function(t){return arguments.length?n.majorStep(t).minorStep(t):n.minorStep()},n.majorStep=function(t){return arguments.length?(d=+t[0],m=+t[1],n):[d,m]},n.minorStep=function(t){return arguments.length?(p=+t[0],v=+t[1],n):[p,v]},n.precision=function(t){return arguments.length?(y=+t,l=ze(a,o,90),f=Re(r,e,y),h=ze(s,c,90),g=Re(i,u,y),n):y},n.majorExtent([[-180,-90+Na],[180,90-Na]]).minorExtent([[-180,-80-Na],[180,80+Na]])},Bo.geo.greatArc=function(){function n(){return{type:"LineString",coordinates:[t||r.apply(this,arguments),e||u.apply(this,arguments)]}}var t,e,r=De,u=Pe;return n.distance=function(){return Bo.geo.distance(t||r.apply(this,arguments),e||u.apply(this,arguments))},n.source=function(e){return arguments.length?(r=e,t="function"==typeof e?null:e,n):r},n.target=function(t){return arguments.length?(u=t,e="function"==typeof t?null:t,n):u},n.precision=function(){return arguments.length?n:0},n},Bo.geo.interpolate=function(n,t){return Ue(n[0]*Ta,n[1]*Ta,t[0]*Ta,t[1]*Ta)},Bo.geo.length=function(n){return jc=0,Bo.geo.stream(n,Hc),jc};var jc,Hc={sphere:c,point:c,lineStart:je,lineEnd:c,polygonStart:c,polygonEnd:c},Fc=He(function(n){return Math.sqrt(2/(1+n))},function(n){return 2*Math.asin(n/2)});(Bo.geo.azimuthalEqualArea=function(){return be(Fc)}).raw=Fc;var Oc=He(function(n){var t=Math.acos(n);return t&&t/Math.sin(t)},dt);(Bo.geo.azimuthalEquidistant=function(){return be(Oc)}).raw=Oc,(Bo.geo.conicConformal=function(){return ae(Fe)}).raw=Fe,(Bo.geo.conicEquidistant=function(){return ae(Oe)}).raw=Oe;var Yc=He(function(n){return 1/n},Math.atan);(Bo.geo.gnomonic=function(){return be(Yc)}).raw=Yc,Ye.invert=function(n,t){return[n,2*Math.atan(Math.exp(t))-Ca]},(Bo.geo.mercator=function(){return Ie(Ye)}).raw=Ye;var Ic=He(function(){return 1},Math.asin);(Bo.geo.orthographic=function(){return be(Ic)}).raw=Ic;var Zc=He(function(n){return 1/(1+n)},function(n){return 2*Math.atan(n)});(Bo.geo.stereographic=function(){return be(Zc)}).raw=Zc,Ze.invert=function(n,t){return[-t,2*Math.atan(Math.exp(n))-Ca]},(Bo.geo.transverseMercator=function(){var n=Ie(Ze),t=n.center,e=n.rotate;return n.center=function(n){return n?t([-n[1],n[0]]):(n=t(),[-n[1],n[0]])},n.rotate=function(n){return n?e([n[0],n[1],n.length>2?n[2]+90:90]):(n=e(),[n[0],n[1],n[2]-90])},n.rotate([0,0])}).raw=Ze,Bo.geom={},Bo.geom.hull=function(n){function t(n){if(n.length<3)return[];var t,u,i,o,a,c,s,l,f,h,g,p,v=vt(e),d=vt(r),m=n.length,y=m-1,x=[],M=[],_=0;if(v===Ve&&r===Xe)t=n;else for(i=0,t=[];m>i;++i)t.push([+v.call(this,u=n[i],i),+d.call(this,u,i)]);for(i=1;m>i;++i)(t[i][1]<t[_][1]||t[i][1]==t[_][1]&&t[i][0]<t[_][0])&&(_=i);for(i=0;m>i;++i)i!==_&&(c=t[i][1]-t[_][1],a=t[i][0]-t[_][0],x.push({angle:Math.atan2(c,a),index:i}));for(x.sort(function(n,t){return n.angle-t.angle}),g=x[0].angle,h=x[0].index,f=0,i=1;y>i;++i){if(o=x[i].index,g==x[i].angle){if(a=t[h][0]-t[_][0],c=t[h][1]-t[_][1],s=t[o][0]-t[_][0],l=t[o][1]-t[_][1],a*a+c*c>=s*s+l*l){x[i].index=-1;continue}x[f].index=-1}g=x[i].angle,f=i,h=o}for(M.push(_),i=0,o=0;2>i;++o)x[o].index>-1&&(M.push(x[o].index),i++);for(p=M.length;y>o;++o)if(!(x[o].index<0)){for(;!$e(M[p-2],M[p-1],x[o].index,t);)--p;M[p++]=x[o].index}var b=[];for(i=p-1;i>=0;--i)b.push(n[M[i]]);return b}var e=Ve,r=Xe;return arguments.length?t(n):(t.x=function(n){return arguments.length?(e=n,t):e},t.y=function(n){return arguments.length?(r=n,t):r},t)},Bo.geom.polygon=function(n){return ga(n,Vc),n};var Vc=Bo.geom.polygon.prototype=[];Vc.area=function(){for(var n,t=-1,e=this.length,r=this[e-1],u=0;++t<e;)n=r,r=this[t],u+=n[1]*r[0]-n[0]*r[1];return.5*u},Vc.centroid=function(n){var t,e,r=-1,u=this.length,i=0,o=0,a=this[u-1];for(arguments.length||(n=-1/(6*this.area()));++r<u;)t=a,a=this[r],e=t[0]*a[1]-a[0]*t[1],i+=(t[0]+a[0])*e,o+=(t[1]+a[1])*e;return[i*n,o*n]},Vc.clip=function(n){for(var t,e,r,u,i,o,a=Je(n),c=-1,s=this.length-Je(this),l=this[s-1];++c<s;){for(t=n.slice(),n.length=0,u=this[c],i=t[(r=t.length-a)-1],e=-1;++e<r;)o=t[e],Be(o,l,u)?(Be(i,l,u)||n.push(We(i,o,l,u)),n.push(o)):Be(i,l,u)&&n.push(We(i,o,l,u)),i=o;a&&n.push(n[0]),l=u}return n};var Xc,$c,Bc,Wc,Jc,Gc=[],Kc=[];ur.prototype.prepare=function(){for(var n,t=this.edges,e=t.length;e--;)n=t[e].edge,n.b&&n.a||t.splice(e,1);return t.sort(or),t.length},dr.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}},mr.prototype={insert:function(n,t){var e,r,u;if(n){if(t.P=n,t.N=n.N,n.N&&(n.N.P=t),n.N=t,n.R){for(n=n.R;n.L;)n=n.L;n.L=t}else n.R=t;e=n}else this._?(n=_r(this._),t.P=null,t.N=n,n.P=n.L=t,e=n):(t.P=t.N=null,this._=t,e=null);for(t.L=t.R=null,t.U=e,t.C=!0,n=t;e&&e.C;)r=e.U,e===r.L?(u=r.R,u&&u.C?(e.C=u.C=!1,r.C=!0,n=r):(n===e.R&&(xr(this,e),n=e,e=n.U),e.C=!1,r.C=!0,Mr(this,r))):(u=r.L,u&&u.C?(e.C=u.C=!1,r.C=!0,n=r):(n===e.L&&(Mr(this,e),n=e,e=n.U),e.C=!1,r.C=!0,xr(this,r))),e=n.U;this._.C=!1},remove:function(n){n.N&&(n.N.P=n.P),n.P&&(n.P.N=n.N),n.N=n.P=null;var t,e,r,u=n.U,i=n.L,o=n.R;if(e=i?o?_r(o):i:o,u?u.L===n?u.L=e:u.R=e:this._=e,i&&o?(r=e.C,e.C=n.C,e.L=i,i.U=e,e!==o?(u=e.U,e.U=n.U,n=e.R,u.L=n,e.R=o,o.U=e):(e.U=u,u=e,n=e.R)):(r=n.C,n=e),n&&(n.U=u),!r){if(n&&n.C)return n.C=!1,void 0;do{if(n===this._)break;if(n===u.L){if(t=u.R,t.C&&(t.C=!1,u.C=!0,xr(this,u),t=u.R),t.L&&t.L.C||t.R&&t.R.C){t.R&&t.R.C||(t.L.C=!1,t.C=!0,Mr(this,t),t=u.R),t.C=u.C,u.C=t.R.C=!1,xr(this,u),n=this._;break}}else if(t=u.L,t.C&&(t.C=!1,u.C=!0,Mr(this,u),t=u.L),t.L&&t.L.C||t.R&&t.R.C){t.L&&t.L.C||(t.R.C=!1,t.C=!0,xr(this,t),t=u.L),t.C=u.C,u.C=t.L.C=!1,Mr(this,u),n=this._;break}t.C=!0,n=u,u=u.U}while(!n.C);n&&(n.C=!1)}}},Bo.geom.voronoi=function(n){function t(n){var t=new Array(n.length),r=a[0][0],u=a[0][1],i=a[1][0],o=a[1][1];return br(e(n),a).cells.forEach(function(e,a){var c=e.edges,s=e.site,l=t[a]=c.length?c.map(function(n){var t=n.start();return[t.x,t.y]}):s.x>=r&&s.x<=i&&s.y>=u&&s.y<=o?[[r,o],[i,o],[i,u],[r,u]]:[];l.point=n[a]}),t}function e(n){return n.map(function(n,t){return{x:Math.round(i(n,t)/Na)*Na,y:Math.round(o(n,t)/Na)*Na,i:t}})}var r=Ve,u=Xe,i=r,o=u,a=Qc;return n?t(n):(t.links=function(n){return br(e(n)).edges.filter(function(n){return n.l&&n.r}).map(function(t){return{source:n[t.l.i],target:n[t.r.i]}})},t.triangles=function(n){var t=[];return br(e(n)).cells.forEach(function(e,r){for(var u,i,o=e.site,a=e.edges.sort(or),c=-1,s=a.length,l=a[s-1].edge,f=l.l===o?l.r:l.l;++c<s;)u=l,i=f,l=a[c].edge,f=l.l===o?l.r:l.l,r<i.i&&r<f.i&&Sr(o,i,f)<0&&t.push([n[r],n[i.i],n[f.i]])}),t},t.x=function(n){return arguments.length?(i=vt(r=n),t):r},t.y=function(n){return arguments.length?(o=vt(u=n),t):u},t.clipExtent=function(n){return arguments.length?(a=null==n?Qc:n,t):a===Qc?null:a},t.size=function(n){return arguments.length?t.clipExtent(n&&[[0,0],n]):a===Qc?null:a&&a[1]},t)};var Qc=[[-1e6,-1e6],[1e6,1e6]];Bo.geom.delaunay=function(n){return Bo.geom.voronoi().triangles(n)},Bo.geom.quadtree=function(n,t,e,r,u){function i(n){function i(n,t,e,r,u,i,o,a){if(!isNaN(e)&&!isNaN(r))if(n.leaf){var c=n.x,l=n.y;if(null!=c)if(ca(c-e)+ca(l-r)<.01)s(n,t,e,r,u,i,o,a);else{var f=n.point;n.x=n.y=n.point=null,s(n,f,c,l,u,i,o,a),s(n,t,e,r,u,i,o,a)}else n.x=e,n.y=r,n.point=t}else s(n,t,e,r,u,i,o,a)}function s(n,t,e,r,u,o,a,c){var s=.5*(u+a),l=.5*(o+c),f=e>=s,h=r>=l,g=(h<<1)+f;n.leaf=!1,n=n.nodes[g]||(n.nodes[g]=Ar()),f?u=s:a=s,h?o=l:c=l,i(n,t,e,r,u,o,a,c)}var l,f,h,g,p,v,d,m,y,x=vt(a),M=vt(c);if(null!=t)v=t,d=e,m=r,y=u;else if(m=y=-(v=d=1/0),f=[],h=[],p=n.length,o)for(g=0;p>g;++g)l=n[g],l.x<v&&(v=l.x),l.y<d&&(d=l.y),l.x>m&&(m=l.x),l.y>y&&(y=l.y),f.push(l.x),h.push(l.y);else for(g=0;p>g;++g){var _=+x(l=n[g],g),b=+M(l,g);v>_&&(v=_),d>b&&(d=b),_>m&&(m=_),b>y&&(y=b),f.push(_),h.push(b)}var w=m-v,S=y-d;w>S?y=d+w:m=v+S;var k=Ar();if(k.add=function(n){i(k,n,+x(n,++g),+M(n,g),v,d,m,y)},k.visit=function(n){Cr(n,k,v,d,m,y)},g=-1,null==t){for(;++g<p;)i(k,n[g],f[g],h[g],v,d,m,y);--g}else n.forEach(k.add);return f=h=n=l=null,k}var o,a=Ve,c=Xe;return(o=arguments.length)?(a=kr,c=Er,3===o&&(u=e,r=t,e=t=0),i(n)):(i.x=function(n){return arguments.length?(a=n,i):a},i.y=function(n){return arguments.length?(c=n,i):c},i.extent=function(n){return arguments.length?(null==n?t=e=r=u=null:(t=+n[0][0],e=+n[0][1],r=+n[1][0],u=+n[1][1]),i):null==t?null:[[t,e],[r,u]]},i.size=function(n){return arguments.length?(null==n?t=e=r=u=null:(t=e=0,r=+n[0],u=+n[1]),i):null==t?null:[r-t,u-e]},i)},Bo.interpolateRgb=Nr,Bo.interpolateObject=Lr,Bo.interpolateNumber=Tr,Bo.interpolateString=qr;var ns=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g;Bo.interpolate=zr,Bo.interpolators=[function(n,t){var e=typeof t;return("string"===e?$a.has(t)||/^(#|rgb\(|hsl\()/.test(t)?Nr:qr:t instanceof V?Nr:"object"===e?Array.isArray(t)?Rr:Lr:Tr)(n,t)}],Bo.interpolateArray=Rr;var ts=function(){return dt},es=Bo.map({linear:ts,poly:Or,quad:function(){return jr},cubic:function(){return Hr},sin:function(){return Yr},exp:function(){return Ir},circle:function(){return Zr},elastic:Vr,back:Xr,bounce:function(){return $r}}),rs=Bo.map({"in":dt,out:Pr,"in-out":Ur,"out-in":function(n){return Ur(Pr(n))}});Bo.ease=function(n){var t=n.indexOf("-"),e=t>=0?n.substring(0,t):n,r=t>=0?n.substring(t+1):"in";return e=es.get(e)||ts,r=rs.get(r)||dt,Dr(r(e.apply(null,Wo.call(arguments,1))))},Bo.interpolateHcl=Br,Bo.interpolateHsl=Wr,Bo.interpolateLab=Jr,Bo.interpolateRound=Gr,Bo.transform=function(n){var t=Go.createElementNS(Bo.ns.prefix.svg,"g");return(Bo.transform=function(n){if(null!=n){t.setAttribute("transform",n);var e=t.transform.baseVal.consolidate()}return new Kr(e?e.matrix:us)})(n)},Kr.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var us={a:1,b:0,c:0,d:1,e:0,f:0};Bo.interpolateTransform=eu,Bo.layout={},Bo.layout.bundle=function(){return function(n){for(var t=[],e=-1,r=n.length;++e<r;)t.push(iu(n[e]));return t}},Bo.layout.chord=function(){function n(){var n,s,f,h,g,p={},v=[],d=Bo.range(i),m=[];for(e=[],r=[],n=0,h=-1;++h<i;){for(s=0,g=-1;++g<i;)s+=u[h][g];v.push(s),m.push(Bo.range(i)),n+=s}for(o&&d.sort(function(n,t){return o(v[n],v[t])}),a&&m.forEach(function(n,t){n.sort(function(n,e){return a(u[t][n],u[t][e])})}),n=(Aa-l*i)/n,s=0,h=-1;++h<i;){for(f=s,g=-1;++g<i;){var y=d[h],x=m[y][g],M=u[y][x],_=s,b=s+=M*n;p[y+"-"+x]={index:y,subindex:x,startAngle:_,endAngle:b,value:M}}r[y]={index:y,startAngle:f,endAngle:s,value:(s-f)/n},s+=l}for(h=-1;++h<i;)for(g=h-1;++g<i;){var w=p[h+"-"+g],S=p[g+"-"+h];(w.value||S.value)&&e.push(w.value<S.value?{source:S,target:w}:{source:w,target:S})}c&&t()}function t(){e.sort(function(n,t){return c((n.source.value+n.target.value)/2,(t.source.value+t.target.value)/2)})}var e,r,u,i,o,a,c,s={},l=0;return s.matrix=function(n){return arguments.length?(i=(u=n)&&u.length,e=r=null,s):u},s.padding=function(n){return arguments.length?(l=n,e=r=null,s):l},s.sortGroups=function(n){return arguments.length?(o=n,e=r=null,s):o},s.sortSubgroups=function(n){return arguments.length?(a=n,e=null,s):a},s.sortChords=function(n){return arguments.length?(c=n,e&&t(),s):c},s.chords=function(){return e||n(),e},s.groups=function(){return r||n(),r},s},Bo.layout.force=function(){function n(n){return function(t,e,r,u){if(t.point!==n){var i=t.cx-n.x,o=t.cy-n.y,a=1/Math.sqrt(i*i+o*o);if(v>(u-e)*a){var c=t.charge*a*a;return n.px-=i*c,n.py-=o*c,!0}if(t.point&&isFinite(a)){var c=t.pointCharge*a*a;n.px-=i*c,n.py-=o*c}}return!t.charge}}function t(n){n.px=Bo.event.x,n.py=Bo.event.y,a.resume()}var e,r,u,i,o,a={},c=Bo.dispatch("start","tick","end"),s=[1,1],l=.9,f=is,h=os,g=-30,p=.1,v=.8,d=[],m=[];return a.tick=function(){if((r*=.99)<.005)return c.end({type:"end",alpha:r=0}),!0;var t,e,a,f,h,v,y,x,M,_=d.length,b=m.length;for(e=0;b>e;++e)a=m[e],f=a.source,h=a.target,x=h.x-f.x,M=h.y-f.y,(v=x*x+M*M)&&(v=r*i[e]*((v=Math.sqrt(v))-u[e])/v,x*=v,M*=v,h.x-=x*(y=f.weight/(h.weight+f.weight)),h.y-=M*y,f.x+=x*(y=1-y),f.y+=M*y);if((y=r*p)&&(x=s[0]/2,M=s[1]/2,e=-1,y))for(;++e<_;)a=d[e],a.x+=(x-a.x)*y,a.y+=(M-a.y)*y;if(g)for(hu(t=Bo.geom.quadtree(d),r,o),e=-1;++e<_;)(a=d[e]).fixed||t.visit(n(a));for(e=-1;++e<_;)a=d[e],a.fixed?(a.x=a.px,a.y=a.py):(a.x-=(a.px-(a.px=a.x))*l,a.y-=(a.py-(a.py=a.y))*l);c.tick({type:"tick",alpha:r})},a.nodes=function(n){return arguments.length?(d=n,a):d},a.links=function(n){return arguments.length?(m=n,a):m},a.size=function(n){return arguments.length?(s=n,a):s},a.linkDistance=function(n){return arguments.length?(f="function"==typeof n?n:+n,a):f},a.distance=a.linkDistance,a.linkStrength=function(n){return arguments.length?(h="function"==typeof n?n:+n,a):h},a.friction=function(n){return arguments.length?(l=+n,a):l},a.charge=function(n){return arguments.length?(g="function"==typeof n?n:+n,a):g},a.gravity=function(n){return arguments.length?(p=+n,a):p},a.theta=function(n){return arguments.length?(v=+n,a):v},a.alpha=function(n){return arguments.length?(n=+n,r?r=n>0?n:0:n>0&&(c.start({type:"start",alpha:r=n}),Bo.timer(a.tick)),a):r},a.start=function(){function n(n,r){if(!e){for(e=new Array(c),a=0;c>a;++a)e[a]=[];for(a=0;s>a;++a){var u=m[a];e[u.source.index].push(u.target),e[u.target.index].push(u.source)}}for(var i,o=e[t],a=-1,s=o.length;++a<s;)if(!isNaN(i=o[a][n]))return i;return Math.random()*r}var t,e,r,c=d.length,l=m.length,p=s[0],v=s[1];for(t=0;c>t;++t)(r=d[t]).index=t,r.weight=0;for(t=0;l>t;++t)r=m[t],"number"==typeof r.source&&(r.source=d[r.source]),"number"==typeof r.target&&(r.target=d[r.target]),++r.source.weight,++r.target.weight;for(t=0;c>t;++t)r=d[t],isNaN(r.x)&&(r.x=n("x",p)),isNaN(r.y)&&(r.y=n("y",v)),isNaN(r.px)&&(r.px=r.x),isNaN(r.py)&&(r.py=r.y);if(u=[],"function"==typeof f)for(t=0;l>t;++t)u[t]=+f.call(this,m[t],t);else for(t=0;l>t;++t)u[t]=f;if(i=[],"function"==typeof h)for(t=0;l>t;++t)i[t]=+h.call(this,m[t],t);else for(t=0;l>t;++t)i[t]=h;if(o=[],"function"==typeof g)for(t=0;c>t;++t)o[t]=+g.call(this,d[t],t);else for(t=0;c>t;++t)o[t]=g;return a.resume()},a.resume=function(){return a.alpha(.1)},a.stop=function(){return a.alpha(0)},a.drag=function(){return e||(e=Bo.behavior.drag().origin(dt).on("dragstart.force",cu).on("drag.force",t).on("dragend.force",su)),arguments.length?(this.on("mouseover.force",lu).on("mouseout.force",fu).call(e),void 0):e},Bo.rebind(a,c,"on")};var is=20,os=1;Bo.layout.hierarchy=function(){function n(t,o,a){var c=u.call(e,t,o);if(t.depth=o,a.push(t),c&&(s=c.length)){for(var s,l,f=-1,h=t.children=new Array(s),g=0,p=o+1;++f<s;)l=h[f]=n(c[f],p,a),l.parent=t,g+=l.value;r&&h.sort(r),i&&(t.value=g)}else delete t.children,i&&(t.value=+i.call(e,t,o)||0);return t}function t(n,r){var u=n.children,o=0;if(u&&(a=u.length))for(var a,c=-1,s=r+1;++c<a;)o+=t(u[c],s);else i&&(o=+i.call(e,n,r)||0);return i&&(n.value=o),o}function e(t){var e=[];return n(t,0,e),e}var r=du,u=pu,i=vu;return e.sort=function(n){return arguments.length?(r=n,e):r},e.children=function(n){return arguments.length?(u=n,e):u},e.value=function(n){return arguments.length?(i=n,e):i},e.revalue=function(n){return t(n,0),n},e},Bo.layout.partition=function(){function n(t,e,r,u){var i=t.children;if(t.x=e,t.y=t.depth*u,t.dx=r,t.dy=u,i&&(o=i.length)){var o,a,c,s=-1;for(r=t.value?r/t.value:0;++s<o;)n(a=i[s],e,c=a.value*r,u),e+=c}}function t(n){var e=n.children,r=0;if(e&&(u=e.length))for(var u,i=-1;++i<u;)r=Math.max(r,t(e[i]));return 1+r}function e(e,i){var o=r.call(this,e,i);return n(o[0],0,u[0],u[1]/t(o[0])),o}var r=Bo.layout.hierarchy(),u=[1,1];return e.size=function(n){return arguments.length?(u=n,e):u},gu(e,r)},Bo.layout.pie=function(){function n(i){var o=i.map(function(e,r){return+t.call(n,e,r)}),a=+("function"==typeof r?r.apply(this,arguments):r),c=(("function"==typeof u?u.apply(this,arguments):u)-a)/Bo.sum(o),s=Bo.range(i.length);null!=e&&s.sort(e===as?function(n,t){return o[t]-o[n]}:function(n,t){return e(i[n],i[t])});var l=[];return s.forEach(function(n){var t;l[n]={data:i[n],value:t=o[n],startAngle:a,endAngle:a+=t*c}}),l}var t=Number,e=as,r=0,u=Aa;return n.value=function(e){return arguments.length?(t=e,n):t},n.sort=function(t){return arguments.length?(e=t,n):e},n.startAngle=function(t){return arguments.length?(r=t,n):r},n.endAngle=function(t){return arguments.length?(u=t,n):u},n};var as={};Bo.layout.stack=function(){function n(a,c){var s=a.map(function(e,r){return t.call(n,e,r)}),l=s.map(function(t){return t.map(function(t,e){return[i.call(n,t,e),o.call(n,t,e)]})}),f=e.call(n,l,c);s=Bo.permute(s,f),l=Bo.permute(l,f);var h,g,p,v=r.call(n,l,c),d=s.length,m=s[0].length;for(g=0;m>g;++g)for(u.call(n,s[0][g],p=v[g],l[0][g][1]),h=1;d>h;++h)u.call(n,s[h][g],p+=l[h-1][g][1],l[h][g][1]);return a}var t=dt,e=_u,r=bu,u=Mu,i=yu,o=xu;return n.values=function(e){return arguments.length?(t=e,n):t},n.order=function(t){return arguments.length?(e="function"==typeof t?t:cs.get(t)||_u,n):e},n.offset=function(t){return arguments.length?(r="function"==typeof t?t:ss.get(t)||bu,n):r},n.x=function(t){return arguments.length?(i=t,n):i},n.y=function(t){return arguments.length?(o=t,n):o},n.out=function(t){return arguments.length?(u=t,n):u},n};var cs=Bo.map({"inside-out":function(n){var t,e,r=n.length,u=n.map(wu),i=n.map(Su),o=Bo.range(r).sort(function(n,t){return u[n]-u[t]}),a=0,c=0,s=[],l=[];for(t=0;r>t;++t)e=o[t],c>a?(a+=i[e],s.push(e)):(c+=i[e],l.push(e));return l.reverse().concat(s)},reverse:function(n){return Bo.range(n.length).reverse()},"default":_u}),ss=Bo.map({silhouette:function(n){var t,e,r,u=n.length,i=n[0].length,o=[],a=0,c=[];for(e=0;i>e;++e){for(t=0,r=0;u>t;t++)r+=n[t][e][1];r>a&&(a=r),o.push(r)}for(e=0;i>e;++e)c[e]=(a-o[e])/2;return c},wiggle:function(n){var t,e,r,u,i,o,a,c,s,l=n.length,f=n[0],h=f.length,g=[];for(g[0]=c=s=0,e=1;h>e;++e){for(t=0,u=0;l>t;++t)u+=n[t][e][1];for(t=0,i=0,a=f[e][0]-f[e-1][0];l>t;++t){for(r=0,o=(n[t][e][1]-n[t][e-1][1])/(2*a);t>r;++r)o+=(n[r][e][1]-n[r][e-1][1])/a;i+=o*n[t][e][1]}g[e]=c-=u?i/u*a:0,s>c&&(s=c)}for(e=0;h>e;++e)g[e]-=s;return g},expand:function(n){var t,e,r,u=n.length,i=n[0].length,o=1/u,a=[];for(e=0;i>e;++e){for(t=0,r=0;u>t;t++)r+=n[t][e][1];if(r)for(t=0;u>t;t++)n[t][e][1]/=r;else for(t=0;u>t;t++)n[t][e][1]=o}for(e=0;i>e;++e)a[e]=0;return a},zero:bu});Bo.layout.histogram=function(){function n(n,i){for(var o,a,c=[],s=n.map(e,this),l=r.call(this,s,i),f=u.call(this,l,s,i),i=-1,h=s.length,g=f.length-1,p=t?1:1/h;++i<g;)o=c[i]=[],o.dx=f[i+1]-(o.x=f[i]),o.y=0;if(g>0)for(i=-1;++i<h;)a=s[i],a>=l[0]&&a<=l[1]&&(o=c[Bo.bisect(f,a,1,g)-1],o.y+=p,o.push(n[i]));return c}var t=!0,e=Number,r=Cu,u=Eu;return n.value=function(t){return arguments.length?(e=t,n):e},n.range=function(t){return arguments.length?(r=vt(t),n):r},n.bins=function(t){return arguments.length?(u="number"==typeof t?function(n){return Au(n,t)}:vt(t),n):u},n.frequency=function(e){return arguments.length?(t=!!e,n):t},n},Bo.layout.tree=function(){function n(n,i){function o(n,t){var r=n.children,u=n._tree;if(r&&(i=r.length)){for(var i,a,s,l=r[0],f=l,h=-1;++h<i;)s=r[h],o(s,a),f=c(s,a,f),a=s;Uu(n);var g=.5*(l._tree.prelim+s._tree.prelim);t?(u.prelim=t._tree.prelim+e(n,t),u.mod=u.prelim-g):u.prelim=g}else t&&(u.prelim=t._tree.prelim+e(n,t))}function a(n,t){n.x=n._tree.prelim+t;var e=n.children;if(e&&(r=e.length)){var r,u=-1;for(t+=n._tree.mod;++u<r;)a(e[u],t)}}function c(n,t,r){if(t){for(var u,i=n,o=n,a=t,c=n.parent.children[0],s=i._tree.mod,l=o._tree.mod,f=a._tree.mod,h=c._tree.mod;a=Tu(a),i=Lu(i),a&&i;)c=Lu(c),o=Tu(o),o._tree.ancestor=n,u=a._tree.prelim+f-i._tree.prelim-s+e(a,i),u>0&&(ju(Hu(a,n,r),n,u),s+=u,l+=u),f+=a._tree.mod,s+=i._tree.mod,h+=c._tree.mod,l+=o._tree.mod;a&&!Tu(o)&&(o._tree.thread=a,o._tree.mod+=f-l),i&&!Lu(c)&&(c._tree.thread=i,c._tree.mod+=s-h,r=n)}return r}var s=t.call(this,n,i),l=s[0];Pu(l,function(n,t){n._tree={ancestor:n,prelim:0,mod:0,change:0,shift:0,number:t?t._tree.number+1:0}}),o(l),a(l,-l._tree.prelim);var f=qu(l,Ru),h=qu(l,zu),g=qu(l,Du),p=f.x-e(f,h)/2,v=h.x+e(h,f)/2,d=g.depth||1;return Pu(l,u?function(n){n.x*=r[0],n.y=n.depth*r[1],delete n._tree}:function(n){n.x=(n.x-p)/(v-p)*r[0],n.y=n.depth/d*r[1],delete n._tree}),s}var t=Bo.layout.hierarchy().sort(null).value(null),e=Nu,r=[1,1],u=!1;return n.separation=function(t){return arguments.length?(e=t,n):e},n.size=function(t){return arguments.length?(u=null==(r=t),n):u?null:r},n.nodeSize=function(t){return arguments.length?(u=null!=(r=t),n):u?r:null},gu(n,t)},Bo.layout.pack=function(){function n(n,i){var o=e.call(this,n,i),a=o[0],c=u[0],s=u[1],l=null==t?Math.sqrt:"function"==typeof t?t:function(){return t};if(a.x=a.y=0,Pu(a,function(n){n.r=+l(n.value)}),Pu(a,Zu),r){var f=r*(t?1:Math.max(2*a.r/c,2*a.r/s))/2;Pu(a,function(n){n.r+=f}),Pu(a,Zu),Pu(a,function(n){n.r-=f})}return $u(a,c/2,s/2,t?1:1/Math.max(2*a.r/c,2*a.r/s)),o}var t,e=Bo.layout.hierarchy().sort(Fu),r=0,u=[1,1];return n.size=function(t){return arguments.length?(u=t,n):u},n.radius=function(e){return arguments.length?(t=null==e||"function"==typeof e?e:+e,n):t},n.padding=function(t){return arguments.length?(r=+t,n):r},gu(n,e)},Bo.layout.cluster=function(){function n(n,i){var o,a=t.call(this,n,i),c=a[0],s=0;Pu(c,function(n){var t=n.children;t&&t.length?(n.x=Ju(t),n.y=Wu(t)):(n.x=o?s+=e(n,o):0,n.y=0,o=n)});var l=Gu(c),f=Ku(c),h=l.x-e(l,f)/2,g=f.x+e(f,l)/2;return Pu(c,u?function(n){n.x=(n.x-c.x)*r[0],n.y=(c.y-n.y)*r[1]}:function(n){n.x=(n.x-h)/(g-h)*r[0],n.y=(1-(c.y?n.y/c.y:1))*r[1]}),a}var t=Bo.layout.hierarchy().sort(null).value(null),e=Nu,r=[1,1],u=!1;return n.separation=function(t){return arguments.length?(e=t,n):e},n.size=function(t){return arguments.length?(u=null==(r=t),n):u?null:r},n.nodeSize=function(t){return arguments.length?(u=null!=(r=t),n):u?r:null},gu(n,t)},Bo.layout.treemap=function(){function n(n,t){for(var e,r,u=-1,i=n.length;++u<i;)r=(e=n[u]).value*(0>t?0:t),e.area=isNaN(r)||0>=r?0:r}function t(e){var i=e.children;if(i&&i.length){var o,a,c,s=f(e),l=[],h=i.slice(),p=1/0,v="slice"===g?s.dx:"dice"===g?s.dy:"slice-dice"===g?1&e.depth?s.dy:s.dx:Math.min(s.dx,s.dy);for(n(h,s.dx*s.dy/e.value),l.area=0;(c=h.length)>0;)l.push(o=h[c-1]),l.area+=o.area,"squarify"!==g||(a=r(l,v))<=p?(h.pop(),p=a):(l.area-=l.pop().area,u(l,v,s,!1),v=Math.min(s.dx,s.dy),l.length=l.area=0,p=1/0);l.length&&(u(l,v,s,!0),l.length=l.area=0),i.forEach(t)}}function e(t){var r=t.children;if(r&&r.length){var i,o=f(t),a=r.slice(),c=[];for(n(a,o.dx*o.dy/t.value),c.area=0;i=a.pop();)c.push(i),c.area+=i.area,null!=i.z&&(u(c,i.z?o.dx:o.dy,o,!a.length),c.length=c.area=0);r.forEach(e)}}function r(n,t){for(var e,r=n.area,u=0,i=1/0,o=-1,a=n.length;++o<a;)(e=n[o].area)&&(i>e&&(i=e),e>u&&(u=e));return r*=r,t*=t,r?Math.max(t*u*p/r,r/(t*i*p)):1/0}function u(n,t,e,r){var u,i=-1,o=n.length,a=e.x,s=e.y,l=t?c(n.area/t):0;if(t==e.dx){for((r||l>e.dy)&&(l=e.dy);++i<o;)u=n[i],u.x=a,u.y=s,u.dy=l,a+=u.dx=Math.min(e.x+e.dx-a,l?c(u.area/l):0);u.z=!0,u.dx+=e.x+e.dx-a,e.y+=l,e.dy-=l}else{for((r||l>e.dx)&&(l=e.dx);++i<o;)u=n[i],u.x=a,u.y=s,u.dx=l,s+=u.dy=Math.min(e.y+e.dy-s,l?c(u.area/l):0);u.z=!1,u.dy+=e.y+e.dy-s,e.x+=l,e.dx-=l}}function i(r){var u=o||a(r),i=u[0];return i.x=0,i.y=0,i.dx=s[0],i.dy=s[1],o&&a.revalue(i),n([i],i.dx*i.dy/i.value),(o?e:t)(i),h&&(o=u),u}var o,a=Bo.layout.hierarchy(),c=Math.round,s=[1,1],l=null,f=Qu,h=!1,g="squarify",p=.5*(1+Math.sqrt(5));return i.size=function(n){return arguments.length?(s=n,i):s},i.padding=function(n){function t(t){var e=n.call(i,t,t.depth);return null==e?Qu(t):ni(t,"number"==typeof e?[e,e,e,e]:e)}function e(t){return ni(t,n)}if(!arguments.length)return l;var r;return f=null==(l=n)?Qu:"function"==(r=typeof n)?t:"number"===r?(n=[n,n,n,n],e):e,i},i.round=function(n){return arguments.length?(c=n?Math.round:Number,i):c!=Number},i.sticky=function(n){return arguments.length?(h=n,o=null,i):h},i.ratio=function(n){return arguments.length?(p=n,i):p},i.mode=function(n){return arguments.length?(g=n+"",i):g},gu(i,a)},Bo.random={normal:function(n,t){var e=arguments.length;return 2>e&&(t=1),1>e&&(n=0),function(){var e,r,u;do e=2*Math.random()-1,r=2*Math.random()-1,u=e*e+r*r;while(!u||u>1);return n+t*e*Math.sqrt(-2*Math.log(u)/u)}},logNormal:function(){var n=Bo.random.normal.apply(Bo,arguments);return function(){return Math.exp(n())}},bates:function(n){var t=Bo.random.irwinHall(n);return function(){return t()/n}},irwinHall:function(n){return function(){for(var t=0,e=0;n>e;e++)t+=Math.random();return t}}},Bo.scale={};var ls={floor:dt,ceil:dt};Bo.scale.linear=function(){return ai([0,1],[0,1],zr,!1)};var fs={s:1,g:1,p:1,r:1,e:1};Bo.scale.log=function(){return vi(Bo.scale.linear().domain([0,1]),10,!0,[1,10])};var hs=Bo.format(".0e"),gs={floor:function(n){return-Math.ceil(-n)},ceil:function(n){return-Math.floor(-n)}};Bo.scale.pow=function(){return di(Bo.scale.linear(),1,[0,1])},Bo.scale.sqrt=function(){return Bo.scale.pow().exponent(.5)},Bo.scale.ordinal=function(){return yi([],{t:"range",a:[[]]})},Bo.scale.category10=function(){return Bo.scale.ordinal().range(ps)},Bo.scale.category20=function(){return Bo.scale.ordinal().range(vs)},Bo.scale.category20b=function(){return Bo.scale.ordinal().range(ds)},Bo.scale.category20c=function(){return Bo.scale.ordinal().range(ms)};var ps=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(ot),vs=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(ot),ds=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(ot),ms=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(ot);Bo.scale.quantile=function(){return xi([],[])},Bo.scale.quantize=function(){return Mi(0,1,[0,1])},Bo.scale.threshold=function(){return _i([.5],[0,1])},Bo.scale.identity=function(){return bi([0,1])},Bo.svg={},Bo.svg.arc=function(){function n(){var n=t.apply(this,arguments),i=e.apply(this,arguments),o=r.apply(this,arguments)+ys,a=u.apply(this,arguments)+ys,c=(o>a&&(c=o,o=a,a=c),a-o),s=Ea>c?"0":"1",l=Math.cos(o),f=Math.sin(o),h=Math.cos(a),g=Math.sin(a);return c>=xs?n?"M0,"+i+"A"+i+","+i+" 0 1,1 0,"+-i+"A"+i+","+i+" 0 1,1 0,"+i+"M0,"+n+"A"+n+","+n+" 0 1,0 0,"+-n+"A"+n+","+n+" 0 1,0 0,"+n+"Z":"M0,"+i+"A"+i+","+i+" 0 1,1 0,"+-i+"A"+i+","+i+" 0 1,1 0,"+i+"Z":n?"M"+i*l+","+i*f+"A"+i+","+i+" 0 "+s+",1 "+i*h+","+i*g+"L"+n*h+","+n*g+"A"+n+","+n+" 0 "+s+",0 "+n*l+","+n*f+"Z":"M"+i*l+","+i*f+"A"+i+","+i+" 0 "+s+",1 "+i*h+","+i*g+"L0,0"+"Z"}var t=wi,e=Si,r=ki,u=Ei;return n.innerRadius=function(e){return arguments.length?(t=vt(e),n):t},n.outerRadius=function(t){return arguments.length?(e=vt(t),n):e},n.startAngle=function(t){return arguments.length?(r=vt(t),n):r},n.endAngle=function(t){return arguments.length?(u=vt(t),n):u},n.centroid=function(){var n=(t.apply(this,arguments)+e.apply(this,arguments))/2,i=(r.apply(this,arguments)+u.apply(this,arguments))/2+ys;return[Math.cos(i)*n,Math.sin(i)*n]},n};var ys=-Ca,xs=Aa-Na;Bo.svg.line=function(){return Ai(dt)};var Ms=Bo.map({linear:Ci,"linear-closed":Ni,step:Li,"step-before":Ti,"step-after":qi,basis:ji,"basis-open":Hi,"basis-closed":Fi,bundle:Oi,cardinal:Di,"cardinal-open":zi,"cardinal-closed":Ri,monotone:$i});Ms.forEach(function(n,t){t.key=n,t.closed=/-closed$/.test(n)});var _s=[0,2/3,1/3,0],bs=[0,1/3,2/3,0],ws=[0,1/6,2/3,1/6];Bo.svg.line.radial=function(){var n=Ai(Bi);return n.radius=n.x,delete n.x,n.angle=n.y,delete n.y,n},Ti.reverse=qi,qi.reverse=Ti,Bo.svg.area=function(){return Wi(dt)},Bo.svg.area.radial=function(){var n=Wi(Bi);return n.radius=n.x,delete n.x,n.innerRadius=n.x0,delete n.x0,n.outerRadius=n.x1,delete n.x1,n.angle=n.y,delete n.y,n.startAngle=n.y0,delete n.y0,n.endAngle=n.y1,delete n.y1,n},Bo.svg.chord=function(){function n(n,a){var c=t(this,i,n,a),s=t(this,o,n,a);return"M"+c.p0+r(c.r,c.p1,c.a1-c.a0)+(e(c,s)?u(c.r,c.p1,c.r,c.p0):u(c.r,c.p1,s.r,s.p0)+r(s.r,s.p1,s.a1-s.a0)+u(s.r,s.p1,c.r,c.p0))+"Z"}function t(n,t,e,r){var u=t.call(n,e,r),i=a.call(n,u,r),o=c.call(n,u,r)+ys,l=s.call(n,u,r)+ys;return{r:i,a0:o,a1:l,p0:[i*Math.cos(o),i*Math.sin(o)],p1:[i*Math.cos(l),i*Math.sin(l)]}}function e(n,t){return n.a0==t.a0&&n.a1==t.a1}function r(n,t,e){return"A"+n+","+n+" 0 "+ +(e>Ea)+",1 "+t}function u(n,t,e,r){return"Q 0,0 "+r}var i=De,o=Pe,a=Ji,c=ki,s=Ei;return n.radius=function(t){return arguments.length?(a=vt(t),n):a},n.source=function(t){return arguments.length?(i=vt(t),n):i},n.target=function(t){return arguments.length?(o=vt(t),n):o},n.startAngle=function(t){return arguments.length?(c=vt(t),n):c},n.endAngle=function(t){return arguments.length?(s=vt(t),n):s},n},Bo.svg.diagonal=function(){function n(n,u){var i=t.call(this,n,u),o=e.call(this,n,u),a=(i.y+o.y)/2,c=[i,{x:i.x,y:a},{x:o.x,y:a},o];return c=c.map(r),"M"+c[0]+"C"+c[1]+" "+c[2]+" "+c[3]}var t=De,e=Pe,r=Gi;return n.source=function(e){return arguments.length?(t=vt(e),n):t},n.target=function(t){return arguments.length?(e=vt(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},Bo.svg.diagonal.radial=function(){var n=Bo.svg.diagonal(),t=Gi,e=n.projection;return n.projection=function(n){return arguments.length?e(Ki(t=n)):t},n},Bo.svg.symbol=function(){function n(n,r){return(Ss.get(t.call(this,n,r))||to)(e.call(this,n,r))}var t=no,e=Qi;return n.type=function(e){return arguments.length?(t=vt(e),n):t},n.size=function(t){return arguments.length?(e=vt(t),n):e},n};var Ss=Bo.map({circle:to,cross:function(n){var t=Math.sqrt(n/5)/2;return"M"+-3*t+","+-t+"H"+-t+"V"+-3*t+"H"+t+"V"+-t+"H"+3*t+"V"+t+"H"+t+"V"+3*t+"H"+-t+"V"+t+"H"+-3*t+"Z"},diamond:function(n){var t=Math.sqrt(n/(2*Cs)),e=t*Cs;return"M0,"+-t+"L"+e+",0"+" 0,"+t+" "+-e+",0"+"Z"},square:function(n){var t=Math.sqrt(n)/2;return"M"+-t+","+-t+"L"+t+","+-t+" "+t+","+t+" "+-t+","+t+"Z" | |
},"triangle-down":function(n){var t=Math.sqrt(n/As),e=t*As/2;return"M0,"+e+"L"+t+","+-e+" "+-t+","+-e+"Z"},"triangle-up":function(n){var t=Math.sqrt(n/As),e=t*As/2;return"M0,"+-e+"L"+t+","+e+" "+-t+","+e+"Z"}});Bo.svg.symbolTypes=Ss.keys();var ks,Es,As=Math.sqrt(3),Cs=Math.tan(30*Ta),Ns=[],Ls=0;Ns.call=ya.call,Ns.empty=ya.empty,Ns.node=ya.node,Ns.size=ya.size,Bo.transition=function(n){return arguments.length?ks?n.transition():n:_a.transition()},Bo.transition.prototype=Ns,Ns.select=function(n){var t,e,r,u=this.id,i=[];n=v(n);for(var o=-1,a=this.length;++o<a;){i.push(t=[]);for(var c=this[o],s=-1,l=c.length;++s<l;)(r=c[s])&&(e=n.call(r,r.__data__,s,o))?("__data__"in r&&(e.__data__=r.__data__),io(e,s,u,r.__transition__[u]),t.push(e)):t.push(null)}return eo(i,u)},Ns.selectAll=function(n){var t,e,r,u,i,o=this.id,a=[];n=d(n);for(var c=-1,s=this.length;++c<s;)for(var l=this[c],f=-1,h=l.length;++f<h;)if(r=l[f]){i=r.__transition__[o],e=n.call(r,r.__data__,f,c),a.push(t=[]);for(var g=-1,p=e.length;++g<p;)(u=e[g])&&io(u,g,o,i),t.push(u)}return eo(a,o)},Ns.filter=function(n){var t,e,r,u=[];"function"!=typeof n&&(n=A(n));for(var i=0,o=this.length;o>i;i++){u.push(t=[]);for(var e=this[i],a=0,c=e.length;c>a;a++)(r=e[a])&&n.call(r,r.__data__,a,i)&&t.push(r)}return eo(u,this.id)},Ns.tween=function(n,t){var e=this.id;return arguments.length<2?this.node().__transition__[e].tween.get(n):N(this,null==t?function(t){t.__transition__[e].tween.remove(n)}:function(r){r.__transition__[e].tween.set(n,t)})},Ns.attr=function(n,t){function e(){this.removeAttribute(a)}function r(){this.removeAttributeNS(a.space,a.local)}function u(n){return null==n?e:(n+="",function(){var t,e=this.getAttribute(a);return e!==n&&(t=o(e,n),function(n){this.setAttribute(a,t(n))})})}function i(n){return null==n?r:(n+="",function(){var t,e=this.getAttributeNS(a.space,a.local);return e!==n&&(t=o(e,n),function(n){this.setAttributeNS(a.space,a.local,t(n))})})}if(arguments.length<2){for(t in n)this.attr(t,n[t]);return this}var o="transform"==n?eu:zr,a=Bo.ns.qualify(n);return ro(this,"attr."+n,t,a.local?i:u)},Ns.attrTween=function(n,t){function e(n,e){var r=t.call(this,n,e,this.getAttribute(u));return r&&function(n){this.setAttribute(u,r(n))}}function r(n,e){var r=t.call(this,n,e,this.getAttributeNS(u.space,u.local));return r&&function(n){this.setAttributeNS(u.space,u.local,r(n))}}var u=Bo.ns.qualify(n);return this.tween("attr."+n,u.local?r:e)},Ns.style=function(n,t,e){function r(){this.style.removeProperty(n)}function u(t){return null==t?r:(t+="",function(){var r,u=Qo.getComputedStyle(this,null).getPropertyValue(n);return u!==t&&(r=zr(u,t),function(t){this.style.setProperty(n,r(t),e)})})}var i=arguments.length;if(3>i){if("string"!=typeof n){2>i&&(t="");for(e in n)this.style(e,n[e],t);return this}e=""}return ro(this,"style."+n,t,u)},Ns.styleTween=function(n,t,e){function r(r,u){var i=t.call(this,r,u,Qo.getComputedStyle(this,null).getPropertyValue(n));return i&&function(t){this.style.setProperty(n,i(t),e)}}return arguments.length<3&&(e=""),this.tween("style."+n,r)},Ns.text=function(n){return ro(this,"text",n,uo)},Ns.remove=function(){return this.each("end.transition",function(){var n;this.__transition__.count<2&&(n=this.parentNode)&&n.removeChild(this)})},Ns.ease=function(n){var t=this.id;return arguments.length<1?this.node().__transition__[t].ease:("function"!=typeof n&&(n=Bo.ease.apply(Bo,arguments)),N(this,function(e){e.__transition__[t].ease=n}))},Ns.delay=function(n){var t=this.id;return N(this,"function"==typeof n?function(e,r,u){e.__transition__[t].delay=+n.call(e,e.__data__,r,u)}:(n=+n,function(e){e.__transition__[t].delay=n}))},Ns.duration=function(n){var t=this.id;return N(this,"function"==typeof n?function(e,r,u){e.__transition__[t].duration=Math.max(1,n.call(e,e.__data__,r,u))}:(n=Math.max(1,n),function(e){e.__transition__[t].duration=n}))},Ns.each=function(n,t){var e=this.id;if(arguments.length<2){var r=Es,u=ks;ks=e,N(this,function(t,r,u){Es=t.__transition__[e],n.call(t,t.__data__,r,u)}),Es=r,ks=u}else N(this,function(r){var u=r.__transition__[e];(u.event||(u.event=Bo.dispatch("start","end"))).on(n,t)});return this},Ns.transition=function(){for(var n,t,e,r,u=this.id,i=++Ls,o=[],a=0,c=this.length;c>a;a++){o.push(n=[]);for(var t=this[a],s=0,l=t.length;l>s;s++)(e=t[s])&&(r=Object.create(e.__transition__[u]),r.delay+=r.duration,io(e,s,i,r)),n.push(e)}return eo(o,i)},Bo.svg.axis=function(){function n(n){n.each(function(){var n,s=Bo.select(this),l=this.__chart__||e,f=this.__chart__=e.copy(),h=null==c?f.ticks?f.ticks.apply(f,a):f.domain():c,g=null==t?f.tickFormat?f.tickFormat.apply(f,a):dt:t,p=s.selectAll(".tick").data(h,f),v=p.enter().insert("g",".domain").attr("class","tick").style("opacity",Na),d=Bo.transition(p.exit()).style("opacity",Na).remove(),m=Bo.transition(p).style("opacity",1),y=ei(f),x=s.selectAll(".domain").data([0]),M=(x.enter().append("path").attr("class","domain"),Bo.transition(x));v.append("line"),v.append("text");var _=v.select("line"),b=m.select("line"),w=p.select("text").text(g),S=v.select("text"),k=m.select("text");switch(r){case"bottom":n=oo,_.attr("y2",u),S.attr("y",Math.max(u,0)+o),b.attr("x2",0).attr("y2",u),k.attr("x",0).attr("y",Math.max(u,0)+o),w.attr("dy",".71em").style("text-anchor","middle"),M.attr("d","M"+y[0]+","+i+"V0H"+y[1]+"V"+i);break;case"top":n=oo,_.attr("y2",-u),S.attr("y",-(Math.max(u,0)+o)),b.attr("x2",0).attr("y2",-u),k.attr("x",0).attr("y",-(Math.max(u,0)+o)),w.attr("dy","0em").style("text-anchor","middle"),M.attr("d","M"+y[0]+","+-i+"V0H"+y[1]+"V"+-i);break;case"left":n=ao,_.attr("x2",-u),S.attr("x",-(Math.max(u,0)+o)),b.attr("x2",-u).attr("y2",0),k.attr("x",-(Math.max(u,0)+o)).attr("y",0),w.attr("dy",".32em").style("text-anchor","end"),M.attr("d","M"+-i+","+y[0]+"H0V"+y[1]+"H"+-i);break;case"right":n=ao,_.attr("x2",u),S.attr("x",Math.max(u,0)+o),b.attr("x2",u).attr("y2",0),k.attr("x",Math.max(u,0)+o).attr("y",0),w.attr("dy",".32em").style("text-anchor","start"),M.attr("d","M"+i+","+y[0]+"H0V"+y[1]+"H"+i)}if(f.rangeBand){var E=f,A=E.rangeBand()/2;l=f=function(n){return E(n)+A}}else l.rangeBand?l=f:d.call(n,f);v.call(n,l),m.call(n,f)})}var t,e=Bo.scale.linear(),r=Ts,u=6,i=6,o=3,a=[10],c=null;return n.scale=function(t){return arguments.length?(e=t,n):e},n.orient=function(t){return arguments.length?(r=t in qs?t+"":Ts,n):r},n.ticks=function(){return arguments.length?(a=arguments,n):a},n.tickValues=function(t){return arguments.length?(c=t,n):c},n.tickFormat=function(e){return arguments.length?(t=e,n):t},n.tickSize=function(t){var e=arguments.length;return e?(u=+t,i=+arguments[e-1],n):u},n.innerTickSize=function(t){return arguments.length?(u=+t,n):u},n.outerTickSize=function(t){return arguments.length?(i=+t,n):i},n.tickPadding=function(t){return arguments.length?(o=+t,n):o},n.tickSubdivide=function(){return arguments.length&&n},n};var Ts="bottom",qs={top:1,right:1,bottom:1,left:1};Bo.svg.brush=function(){function n(i){i.each(function(){var i=Bo.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",u).on("touchstart.brush",u),o=i.selectAll(".background").data([0]);o.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),i.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var a=i.selectAll(".resize").data(d,dt);a.exit().remove(),a.enter().append("g").attr("class",function(n){return"resize "+n}).style("cursor",function(n){return zs[n]}).append("rect").attr("x",function(n){return/[ew]$/.test(n)?-3:null}).attr("y",function(n){return/^[ns]/.test(n)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),a.style("display",n.empty()?"none":null);var l,f=Bo.transition(i),h=Bo.transition(o);c&&(l=ei(c),h.attr("x",l[0]).attr("width",l[1]-l[0]),e(f)),s&&(l=ei(s),h.attr("y",l[0]).attr("height",l[1]-l[0]),r(f)),t(f)})}function t(n){n.selectAll(".resize").attr("transform",function(n){return"translate("+l[+/e$/.test(n)]+","+h[+/^s/.test(n)]+")"})}function e(n){n.select(".extent").attr("x",l[0]),n.selectAll(".extent,.n>rect,.s>rect").attr("width",l[1]-l[0])}function r(n){n.select(".extent").attr("y",h[0]),n.selectAll(".extent,.e>rect,.w>rect").attr("height",h[1]-h[0])}function u(){function u(){32==Bo.event.keyCode&&(C||(x=null,L[0]-=l[1],L[1]-=h[1],C=2),f())}function g(){32==Bo.event.keyCode&&2==C&&(L[0]+=l[1],L[1]+=h[1],C=0,f())}function d(){var n=Bo.mouse(_),u=!1;M&&(n[0]+=M[0],n[1]+=M[1]),C||(Bo.event.altKey?(x||(x=[(l[0]+l[1])/2,(h[0]+h[1])/2]),L[0]=l[+(n[0]<x[0])],L[1]=h[+(n[1]<x[1])]):x=null),E&&m(n,c,0)&&(e(S),u=!0),A&&m(n,s,1)&&(r(S),u=!0),u&&(t(S),w({type:"brush",mode:C?"move":"resize"}))}function m(n,t,e){var r,u,a=ei(t),c=a[0],s=a[1],f=L[e],g=e?h:l,d=g[1]-g[0];return C&&(c-=f,s-=d+f),r=(e?v:p)?Math.max(c,Math.min(s,n[e])):n[e],C?u=(r+=f)+d:(x&&(f=Math.max(c,Math.min(s,2*x[e]-r))),r>f?(u=r,r=f):u=f),g[0]!=r||g[1]!=u?(e?o=null:i=null,g[0]=r,g[1]=u,!0):void 0}function y(){d(),S.style("pointer-events","all").selectAll(".resize").style("display",n.empty()?"none":null),Bo.select("body").style("cursor",null),T.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),N(),w({type:"brushend"})}var x,M,_=this,b=Bo.select(Bo.event.target),w=a.of(_,arguments),S=Bo.select(_),k=b.datum(),E=!/^(n|s)$/.test(k)&&c,A=!/^(e|w)$/.test(k)&&s,C=b.classed("extent"),N=P(),L=Bo.mouse(_),T=Bo.select(Qo).on("keydown.brush",u).on("keyup.brush",g);if(Bo.event.changedTouches?T.on("touchmove.brush",d).on("touchend.brush",y):T.on("mousemove.brush",d).on("mouseup.brush",y),S.interrupt().selectAll("*").interrupt(),C)L[0]=l[0]-L[0],L[1]=h[0]-L[1];else if(k){var q=+/w$/.test(k),z=+/^n/.test(k);M=[l[1-q]-L[0],h[1-z]-L[1]],L[0]=l[q],L[1]=h[z]}else Bo.event.altKey&&(x=L.slice());S.style("pointer-events","none").selectAll(".resize").style("display",null),Bo.select("body").style("cursor",b.style("cursor")),w({type:"brushstart"}),d()}var i,o,a=g(n,"brushstart","brush","brushend"),c=null,s=null,l=[0,0],h=[0,0],p=!0,v=!0,d=Rs[0];return n.event=function(n){n.each(function(){var n=a.of(this,arguments),t={x:l,y:h,i:i,j:o},e=this.__chart__||t;this.__chart__=t,ks?Bo.select(this).transition().each("start.brush",function(){i=e.i,o=e.j,l=e.x,h=e.y,n({type:"brushstart"})}).tween("brush:brush",function(){var e=Rr(l,t.x),r=Rr(h,t.y);return i=o=null,function(u){l=t.x=e(u),h=t.y=r(u),n({type:"brush",mode:"resize"})}}).each("end.brush",function(){i=t.i,o=t.j,n({type:"brush",mode:"resize"}),n({type:"brushend"})}):(n({type:"brushstart"}),n({type:"brush",mode:"resize"}),n({type:"brushend"}))})},n.x=function(t){return arguments.length?(c=t,d=Rs[!c<<1|!s],n):c},n.y=function(t){return arguments.length?(s=t,d=Rs[!c<<1|!s],n):s},n.clamp=function(t){return arguments.length?(c&&s?(p=!!t[0],v=!!t[1]):c?p=!!t:s&&(v=!!t),n):c&&s?[p,v]:c?p:s?v:null},n.extent=function(t){var e,r,u,a,f;return arguments.length?(c&&(e=t[0],r=t[1],s&&(e=e[0],r=r[0]),i=[e,r],c.invert&&(e=c(e),r=c(r)),e>r&&(f=e,e=r,r=f),(e!=l[0]||r!=l[1])&&(l=[e,r])),s&&(u=t[0],a=t[1],c&&(u=u[1],a=a[1]),o=[u,a],s.invert&&(u=s(u),a=s(a)),u>a&&(f=u,u=a,a=f),(u!=h[0]||a!=h[1])&&(h=[u,a])),n):(c&&(i?(e=i[0],r=i[1]):(e=l[0],r=l[1],c.invert&&(e=c.invert(e),r=c.invert(r)),e>r&&(f=e,e=r,r=f))),s&&(o?(u=o[0],a=o[1]):(u=h[0],a=h[1],s.invert&&(u=s.invert(u),a=s.invert(a)),u>a&&(f=u,u=a,a=f))),c&&s?[[e,u],[r,a]]:c?[e,r]:s&&[u,a])},n.clear=function(){return n.empty()||(l=[0,0],h=[0,0],i=o=null),n},n.empty=function(){return!!c&&l[0]==l[1]||!!s&&h[0]==h[1]},Bo.rebind(n,a,"on")};var zs={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Rs=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]],Ds=Bo.time={},Ps=Date,Us=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];co.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){js.setUTCDate.apply(this._,arguments)},setDay:function(){js.setUTCDay.apply(this._,arguments)},setFullYear:function(){js.setUTCFullYear.apply(this._,arguments)},setHours:function(){js.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){js.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){js.setUTCMinutes.apply(this._,arguments)},setMonth:function(){js.setUTCMonth.apply(this._,arguments)},setSeconds:function(){js.setUTCSeconds.apply(this._,arguments)},setTime:function(){js.setTime.apply(this._,arguments)}};var js=Date.prototype,Hs="%a %b %e %X %Y",Fs="%m/%d/%Y",Os="%H:%M:%S",Ys=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Is=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],Zs=["January","February","March","April","May","June","July","August","September","October","November","December"],Vs=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];Ds.year=so(function(n){return n=Ds.day(n),n.setMonth(0,1),n},function(n,t){n.setFullYear(n.getFullYear()+t)},function(n){return n.getFullYear()}),Ds.years=Ds.year.range,Ds.years.utc=Ds.year.utc.range,Ds.day=so(function(n){var t=new Ps(2e3,0);return t.setFullYear(n.getFullYear(),n.getMonth(),n.getDate()),t},function(n,t){n.setDate(n.getDate()+t)},function(n){return n.getDate()-1}),Ds.days=Ds.day.range,Ds.days.utc=Ds.day.utc.range,Ds.dayOfYear=function(n){var t=Ds.year(n);return Math.floor((n-t-6e4*(n.getTimezoneOffset()-t.getTimezoneOffset()))/864e5)},Us.forEach(function(n,t){n=n.toLowerCase(),t=7-t;var e=Ds[n]=so(function(n){return(n=Ds.day(n)).setDate(n.getDate()-(n.getDay()+t)%7),n},function(n,t){n.setDate(n.getDate()+7*Math.floor(t))},function(n){var e=Ds.year(n).getDay();return Math.floor((Ds.dayOfYear(n)+(e+t)%7)/7)-(e!==t)});Ds[n+"s"]=e.range,Ds[n+"s"].utc=e.utc.range,Ds[n+"OfYear"]=function(n){var e=Ds.year(n).getDay();return Math.floor((Ds.dayOfYear(n)+(e+t)%7)/7)}}),Ds.week=Ds.sunday,Ds.weeks=Ds.sunday.range,Ds.weeks.utc=Ds.sunday.utc.range,Ds.weekOfYear=Ds.sundayOfYear,Ds.format=fo;var Xs=go(Ys),$s=po(Ys),Bs=go(Is),Ws=po(Is),Js=go(Zs),Gs=po(Zs),Ks=go(Vs),Qs=po(Vs),nl=/^%/,tl={"-":"",_:" ",0:"0"},el={a:function(n){return Is[n.getDay()]},A:function(n){return Ys[n.getDay()]},b:function(n){return Vs[n.getMonth()]},B:function(n){return Zs[n.getMonth()]},c:fo(Hs),d:function(n,t){return vo(n.getDate(),t,2)},e:function(n,t){return vo(n.getDate(),t,2)},H:function(n,t){return vo(n.getHours(),t,2)},I:function(n,t){return vo(n.getHours()%12||12,t,2)},j:function(n,t){return vo(1+Ds.dayOfYear(n),t,3)},L:function(n,t){return vo(n.getMilliseconds(),t,3)},m:function(n,t){return vo(n.getMonth()+1,t,2)},M:function(n,t){return vo(n.getMinutes(),t,2)},p:function(n){return n.getHours()>=12?"PM":"AM"},S:function(n,t){return vo(n.getSeconds(),t,2)},U:function(n,t){return vo(Ds.sundayOfYear(n),t,2)},w:function(n){return n.getDay()},W:function(n,t){return vo(Ds.mondayOfYear(n),t,2)},x:fo(Fs),X:fo(Os),y:function(n,t){return vo(n.getFullYear()%100,t,2)},Y:function(n,t){return vo(n.getFullYear()%1e4,t,4)},Z:Ho,"%":function(){return"%"}},rl={a:mo,A:yo,b:bo,B:wo,c:So,d:qo,e:qo,H:Ro,I:Ro,j:zo,L:Uo,m:To,M:Do,p:jo,S:Po,U:Mo,w:xo,W:_o,x:ko,X:Eo,y:Co,Y:Ao,Z:No,"%":Fo},ul=/^\s*\d+/,il=Bo.map({am:0,pm:1});fo.utc=Oo;var ol=Oo("%Y-%m-%dT%H:%M:%S.%LZ");fo.iso=Date.prototype.toISOString&&+new Date("2000-01-01T00:00:00.000Z")?Yo:ol,Yo.parse=function(n){var t=new Date(n);return isNaN(t)?null:t},Yo.toString=ol.toString,Ds.second=so(function(n){return new Ps(1e3*Math.floor(n/1e3))},function(n,t){n.setTime(n.getTime()+1e3*Math.floor(t))},function(n){return n.getSeconds()}),Ds.seconds=Ds.second.range,Ds.seconds.utc=Ds.second.utc.range,Ds.minute=so(function(n){return new Ps(6e4*Math.floor(n/6e4))},function(n,t){n.setTime(n.getTime()+6e4*Math.floor(t))},function(n){return n.getMinutes()}),Ds.minutes=Ds.minute.range,Ds.minutes.utc=Ds.minute.utc.range,Ds.hour=so(function(n){var t=n.getTimezoneOffset()/60;return new Ps(36e5*(Math.floor(n/36e5-t)+t))},function(n,t){n.setTime(n.getTime()+36e5*Math.floor(t))},function(n){return n.getHours()}),Ds.hours=Ds.hour.range,Ds.hours.utc=Ds.hour.utc.range,Ds.month=so(function(n){return n=Ds.day(n),n.setDate(1),n},function(n,t){n.setMonth(n.getMonth()+t)},function(n){return n.getMonth()}),Ds.months=Ds.month.range,Ds.months.utc=Ds.month.utc.range;var al=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],cl=[[Ds.second,1],[Ds.second,5],[Ds.second,15],[Ds.second,30],[Ds.minute,1],[Ds.minute,5],[Ds.minute,15],[Ds.minute,30],[Ds.hour,1],[Ds.hour,3],[Ds.hour,6],[Ds.hour,12],[Ds.day,1],[Ds.day,2],[Ds.week,1],[Ds.month,1],[Ds.month,3],[Ds.year,1]],sl=[[fo("%Y"),Vt],[fo("%B"),function(n){return n.getMonth()}],[fo("%b %d"),function(n){return 1!=n.getDate()}],[fo("%a %d"),function(n){return n.getDay()&&1!=n.getDate()}],[fo("%I %p"),function(n){return n.getHours()}],[fo("%I:%M"),function(n){return n.getMinutes()}],[fo(":%S"),function(n){return n.getSeconds()}],[fo(".%L"),function(n){return n.getMilliseconds()}]],ll=Vo(sl);cl.year=Ds.year,Ds.scale=function(){return Io(Bo.scale.linear(),cl,ll)};var fl={range:function(n,t,e){return Bo.range(+n,+t,e).map(Zo)}},hl=cl.map(function(n){return[n[0].utc,n[1]]}),gl=[[Oo("%Y"),Vt],[Oo("%B"),function(n){return n.getUTCMonth()}],[Oo("%b %d"),function(n){return 1!=n.getUTCDate()}],[Oo("%a %d"),function(n){return n.getUTCDay()&&1!=n.getUTCDate()}],[Oo("%I %p"),function(n){return n.getUTCHours()}],[Oo("%I:%M"),function(n){return n.getUTCMinutes()}],[Oo(":%S"),function(n){return n.getUTCSeconds()}],[Oo(".%L"),function(n){return n.getUTCMilliseconds()}]],pl=Vo(gl);return hl.year=Ds.year.utc,Ds.scale.utc=function(){return Io(Bo.scale.linear(),hl,pl)},Bo.text=mt(function(n){return n.responseText}),Bo.json=function(n,t){return yt(n,"application/json",Xo,t)},Bo.html=function(n,t){return yt(n,"text/html",$o,t)},Bo.xml=mt(function(n){return n.responseXML}),Bo}(); | |
</script> | |
<script type="text/javascript"> | |
(function(){function t(e,t){return(new Date(t,e+1,0)).getDate()}function n(e,t,n){return function(r,i,s){var o=e(r),u=[];o<r&&t(o);if(s>1)while(o<i){var a=new Date(+o);n(a)%s===0&&u.push(a),t(o)}else while(o<i)u.push(new Date(+o)),t(o);return u}}var e=window.nv||{};e.version="1.1.15b",e.dev=!0,window.nv=e,e.tooltip=e.tooltip||{},e.utils=e.utils||{},e.models=e.models||{},e.charts={},e.graphs=[],e.logs={},e.dispatch=d3.dispatch("render_start","render_end"),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&&console.log&&console.log.apply)console.log.apply(console,arguments);else if(e.dev&&typeof console.log=="function"&&Function.prototype.bind){var t=Function.prototype.bind.call(console.log,console);t.apply(console,arguments)}return arguments[arguments.length-1]},e.render=function(n){n=n||1,e.render.active=!0,e.dispatch.render_start(),setTimeout(function(){var t,r;for(var i=0;i<n&&(r=e.render.queue[i]);i++)t=r.generate(),typeof r.callback==typeof Function&&r.callback(t),e.graphs.push(t);e.render.queue.splice(0,i),e.render.queue.length?setTimeout(arguments.callee,0):(e.dispatch.render_end(),e.render.active=!1)},0)},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()},e.identity=function(e){return e},e.strip=function(e){return e.replace(/(\s|&)/g,"")},d3.time.monthEnd=function(e){return new Date(e.getFullYear(),e.getMonth(),0)},d3.time.monthEnds=n(d3.time.monthEnd,function(e){e.setUTCDate(e.getUTCDate()+1),e.setDate(t(e.getMonth()+1,e.getFullYear()))},function(e){return e.getMonth()}),e.interactiveGuideline=function(){"use strict";function c(o){o.each(function(o){function g(){var e=d3.mouse(this),n=e[0],r=e[1],o=!0,a=!1;l&&(n=d3.event.offsetX,r=d3.event.offsetY,d3.event.target.tagName!=="svg"&&(o=!1),d3.event.target.className.baseVal.match("nv-legend")&&(a=!0)),o&&(n-=i.left,r-=i.top);if(n<0||r<0||n>p||r>d||d3.event.relatedTarget&&d3.event.relatedTarget.ownerSVGElement===undefined||a){if(l&&d3.event.relatedTarget&&d3.event.relatedTarget.ownerSVGElement===undefined&&d3.event.relatedTarget.className.match(t.nvPointerEventsClass))return;u.elementMouseout({mouseX:n,mouseY:r}),c.renderGuideLine(null);return}var f=s.invert(n);u.elementMousemove({mouseX:n,mouseY:r,pointXValue:f}),d3.event.type==="dblclick"&&u.elementDblclick({mouseX:n,mouseY:r,pointXValue:f})}var h=d3.select(this),p=n||960,d=r||400,v=h.selectAll("g.nv-wrap.nv-interactiveLineLayer").data([o]),m=v.enter().append("g").attr("class"," nv-wrap nv-interactiveLineLayer");m.append("g").attr("class","nv-interactiveGuideLine");if(!f)return;f.on("mousemove",g,!0).on("mouseout",g,!0).on("dblclick",g),c.renderGuideLine=function(t){if(!a)return;var n=v.select(".nv-interactiveGuideLine").selectAll("line").data(t!=null?[e.utils.NaNtoZero(t)]:[],String);n.enter().append("line").attr("class","nv-guideline").attr("x1",function(e){return e}).attr("x2",function(e){return e}).attr("y1",d).attr("y2",0),n.exit().remove()}})}var t=e.models.tooltip(),n=null,r=null,i={left:0,top:0},s=d3.scale.linear(),o=d3.scale.linear(),u=d3.dispatch("elementMousemove","elementMouseout","elementDblclick"),a=!0,f=null,l=navigator.userAgent.indexOf("MSIE")!==-1;return c.dispatch=u,c.tooltip=t,c.margin=function(e){return arguments.length?(i.top=typeof e.top!="undefined"?e.top:i.top,i.left=typeof e.left!="undefined"?e.left:i.left,c):i},c.width=function(e){return arguments.length?(n=e,c):n},c.height=function(e){return arguments.length?(r=e,c):r},c.xScale=function(e){return arguments.length?(s=e,c):s},c.showGuideLine=function(e){return arguments.length?(a=e,c):a},c.svgContainer=function(e){return arguments.length?(f=e,c):f},c},e.interactiveBisect=function(e,t,n){"use strict";if(!e instanceof Array)return null;typeof n!="function"&&(n=function(e,t){return e.x});var r=d3.bisector(n).left,i=d3.max([0,r(e,t)-1]),s=n(e[i],i);typeof s=="undefined"&&(s=i);if(s===t)return i;var o=d3.min([i+1,e.length-1]),u=n(e[o],o);return typeof u=="undefined"&&(u=o),Math.abs(u-t)>=Math.abs(s-t)?i:o},e.nearestValueIndex=function(e,t,n){"use strict";var r=Infinity,i=null;return e.forEach(function(e,s){var o=Math.abs(t-e);o<=r&&o<n&&(r=o,i=s)}),i},function(){"use strict";window.nv.tooltip={},window.nv.models.tooltip=function(){function y(){if(a){var e=d3.select(a);e.node().tagName!=="svg"&&(e=e.select("svg"));var t=e.node()?e.attr("viewBox"):null;if(t){t=t.split(" ");var n=parseInt(e.style("width"))/t[2];l.left=l.left*n,l.top=l.top*n}}}function b(e){var t;a?t=d3.select(a):t=d3.select("body");var n=t.select(".nvtooltip");return n.node()===null&&(n=t.append("div").attr("class","nvtooltip "+(u?u:"xy-tooltip")).attr("id",h)),n.node().innerHTML=e,n.style("top",0).style("left",0).style("opacity",0),n.selectAll("div, table, td, tr").classed(p,!0),n.classed(p,!0),n.node()}function w(){if(!c)return;if(!g(n))return;y();var t=l.left,u=o!=null?o:l.top,h=b(m(n));f=h;if(a){var p=a.getElementsByTagName("svg")[0],d=p?p.getBoundingClientRect():a.getBoundingClientRect(),v={left:0,top:0};if(p){var E=p.getBoundingClientRect(),S=a.getBoundingClientRect(),x=E.top;if(x<0){var T=a.getBoundingClientRect();x=Math.abs(x)>T.height?0:x}v.top=Math.abs(x-S.top),v.left=Math.abs(E.left-S.left)}t+=a.offsetLeft+v.left-2*a.scrollLeft,u+=a.offsetTop+v.top-2*a.scrollTop}return s&&s>0&&(u=Math.floor(u/s)*s),e.tooltip.calcTooltipPosition([t,u],r,i,h),w}var t=null,n=null,r="w",i=50,s=25,o=null,u=null,a=null,f=null,l={left:null,top:null},c=!0,h="nvtooltip-"+Math.floor(Math.random()*1e5),p="nv-pointer-events-none",d=function(e,t){return e},v=function(e){return e},m=function(e){if(t!=null)return t;if(e==null)return"";var n=d3.select(document.createElement("table")),r=n.selectAll("thead").data([e]).enter().append("thead");r.append("tr").append("td").attr("colspan",3).append("strong").classed("x-value",!0).html(v(e.value));var i=n.selectAll("tbody").data([e]).enter().append("tbody"),s=i.selectAll("tr").data(function(e){return e.series}).enter().append("tr").classed("highlight",function(e){return e.highlight});s.append("td").classed("legend-color-guide",!0).append("div").style("background-color",function(e){return e.color}),s.append("td").classed("key",!0).html(function(e){return e.key}),s.append("td").classed("value",!0).html(function(e,t){return d(e.value,t)}),s.selectAll("td").each(function(e){if(e.highlight){var t=d3.scale.linear().domain([0,1]).range(["#fff",e.color]),n=.6;d3.select(this).style("border-bottom-color",t(n)).style("border-top-color",t(n))}});var o=n.node().outerHTML;return e.footer!==undefined&&(o+="<div class='footer'>"+e.footer+"</div>"),o},g=function(e){return e&&e.series&&e.series.length>0?!0:!1};return w.nvPointerEventsClass=p,w.content=function(e){return arguments.length?(t=e,w):t},w.tooltipElem=function(){return f},w.contentGenerator=function(e){return arguments.length?(typeof e=="function"&&(m=e),w):m},w.data=function(e){return arguments.length?(n=e,w):n},w.gravity=function(e){return arguments.length?(r=e,w):r},w.distance=function(e){return arguments.length?(i=e,w):i},w.snapDistance=function(e){return arguments.length?(s=e,w):s},w.classes=function(e){return arguments.length?(u=e,w):u},w.chartContainer=function(e){return arguments.length?(a=e,w):a},w.position=function(e){return arguments.length?(l.left=typeof e.left!="undefined"?e.left:l.left,l.top=typeof e.top!="undefined"?e.top:l.top,w):l},w.fixedTop=function(e){return arguments.length?(o=e,w):o},w.enabled=function(e){return arguments.length?(c=e,w):c},w.valueFormatter=function(e){return arguments.length?(typeof e=="function"&&(d=e),w):d},w.headerFormatter=function(e){return arguments.length?(typeof e=="function"&&(v=e),w):v},w.id=function(){return h},w},e.tooltip.show=function(t,n,r,i,s,o){var u=document.createElement("div");u.className="nvtooltip "+(o?o:"xy-tooltip");var a=s;if(!s||s.tagName.match(/g|svg/i))a=document.getElementsByTagName("body")[0];u.style.left=0,u.style.top=0,u.style.opacity=0,u.innerHTML=n,a.appendChild(u),s&&(t[0]=t[0]-s.scrollLeft,t[1]=t[1]-s.scrollTop),e.tooltip.calcTooltipPosition(t,r,i,u)},e.tooltip.findFirstNonSVGParent=function(e){while(e.tagName.match(/^g|svg$/i)!==null)e=e.parentNode;return e},e.tooltip.findTotalOffsetTop=function(e,t){var n=t;do isNaN(e.offsetTop)||(n+=e.offsetTop);while(e=e.offsetParent);return n},e.tooltip.findTotalOffsetLeft=function(e,t){var n=t;do isNaN(e.offsetLeft)||(n+=e.offsetLeft);while(e=e.offsetParent);return n},e.tooltip.calcTooltipPosition=function(t,n,r,i){var s=parseInt(i.offsetHeight),o=parseInt(i.offsetWidth),u=e.utils.windowSize().width,a=e.utils.windowSize().height,f=window.pageYOffset,l=window.pageXOffset,c,h;a=window.innerWidth>=document.body.scrollWidth?a:a-16,u=window.innerHeight>=document.body.scrollHeight?u:u-16,n=n||"s",r=r||20;var p=function(t){return e.tooltip.findTotalOffsetTop(t,h)},d=function(t){return e.tooltip.findTotalOffsetLeft(t,c)};switch(n){case"e":c=t[0]-o-r,h=t[1]-s/2;var v=d(i),m=p(i);v<l&&(c=t[0]+r>l?t[0]+r:l-v+c),m<f&&(h=f-m+h),m+s>f+a&&(h=f+a-m+h-s);break;case"w":c=t[0]+r,h=t[1]-s/2;var v=d(i),m=p(i);v+o>u&&(c=t[0]-o-r),m<f&&(h=f+5),m+s>f+a&&(h=f+a-m+h-s);break;case"n":c=t[0]-o/2-5,h=t[1]+r;var v=d(i),m=p(i);v<l&&(c=l+5),v+o>u&&(c=c-o/2+5),m+s>f+a&&(h=f+a-m+h-s);break;case"s":c=t[0]-o/2,h=t[1]-s-r;var v=d(i),m=p(i);v<l&&(c=l+5),v+o>u&&(c=c-o/2+5),f>m&&(h=f);break;case"none":c=t[0],h=t[1]-r;var v=d(i),m=p(i)}return i.style.left=c+"px",i.style.top=h+"px",i.style.opacity=1,i.style.position="absolute",i},e.tooltip.cleanup=function(){var e=document.getElementsByClassName("nvtooltip"),t=[];while(e.length)t.push(e[0]),e[0].style.transitionDelay="0 !important",e[0].style.opacity=0,e[0].className="nvtooltip-pending-removal";setTimeout(function(){while(t.length){var e=t.pop();e.parentNode.removeChild(e)}},500)}}(),e.utils.windowSize=function(){var e={width:640,height:480};return document.body&&document.body.offsetWidth&&(e.width=document.body.offsetWidth,e.height=document.body.offsetHeight),document.compatMode=="CSS1Compat"&&document.documentElement&&document.documentElement.offsetWidth&&(e.width=document.documentElement.offsetWidth,e.height=document.documentElement.offsetHeight),window.innerWidth&&window.innerHeight&&(e.width=window.innerWidth,e.height=window.innerHeight),e},e.utils.windowResize=function(e){if(e===undefined)return;var t=window.onresize;window.onresize=function(n){typeof t=="function"&&t(n),e(n)}},e.utils.getColor=function(t){return arguments.length?Object.prototype.toString.call(t)==="[object Array]"?function(e,n){return e.color||t[n%t.length]}:t:e.utils.defaultColor()},e.utils.defaultColor=function(){var e=d3.scale.category20().range();return function(t,n){return t.color||e[n%e.length]}},e.utils.customTheme=function(e,t,n){t=t||function(e){return e.key},n=n||d3.scale.category20().range();var r=n.length;return function(i,s){var o=t(i);return r||(r=n.length),typeof e[o]!="undefined"?typeof e[o]=="function"?e[o]():e[o]:n[--r]}},e.utils.pjax=function(t,n){function r(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(e){if(typeof e.style=="function"&&typeof e.text=="function"){var t=parseInt(e.style("font-size").replace("px","")),n=e.text().length;return n*t*.5}return 0},e.utils.NaNtoZero=function(e){return typeof e!="number"||isNaN(e)||e===null||e===Infinity?0:e},e.utils.optionsFunc=function(e){return e&&d3.map(e).forEach(function(e,t){typeof this[e]=="function"&&this[e](t)}.bind(this)),this},e.models.axis=function(){"use strict";function m(e){return e.each(function(e){var i=d3.select(this),m=i.selectAll("g.nv-wrap.nv-axis").data([e]),g=m.enter().append("g").attr("class","nvd3 nv-wrap nv-axis"),y=g.append("g"),b=m.select("g");p!==null?t.ticks(p):(t.orient()=="top"||t.orient()=="bottom")&&t.ticks(Math.abs(s.range()[1]-s.range()[0])/100),b.transition().call(t),v=v||t.scale();var w=t.tickFormat();w==null&&(w=v.tickFormat());var E=b.selectAll("text.nv-axislabel").data([o||null]);E.exit().remove();switch(t.orient()){case"top":E.enter().append("text").attr("class","nv-axislabel");var S=s.range().length==2?s.range()[1]:s.range()[s.range().length-1]+(s.range()[1]-s.range()[0]);E.attr("text-anchor","middle").attr("y",0).attr("x",S/2);if(u){var x=m.selectAll("g.nv-axisMaxMin").data(s.domain());x.enter().append("g").attr("class","nv-axisMaxMin").append("text"),x.exit().remove(),x.attr("transform",function(e,t){return"translate("+s(e)+",0)"}).select("text").attr("dy","-0.5em").attr("y",-t.tickPadding()).attr("text-anchor","middle").text(function(e,t){var n=w(e);return(""+n).match("NaN")?"":n}),x.transition().attr("transform",function(e,t){return"translate("+s.range()[t]+",0)"})}break;case"bottom":var T=36,N=30,C=b.selectAll("g").select("text");if(f%360){C.each(function(e,t){var n=this.getBBox().width;n>N&&(N=n)});var k=Math.abs(Math.sin(f*Math.PI/180)),T=(k?k*N:N)+30;C.attr("transform",function(e,t,n){return"rotate("+f+" 0,0)"}).style("text-anchor",f%360>0?"start":"end")}E.enter().append("text").attr("class","nv-axislabel");var S=s.range().length==2?s.range()[1]:s.range()[s.range().length-1]+(s.range()[1]-s.range()[0]);E.attr("text-anchor","middle").attr("y",T).attr("x",S/2);if(u){var x=m.selectAll("g.nv-axisMaxMin").data([s.domain()[0],s.domain()[s.domain().length-1]]);x.enter().append("g").attr("class","nv-axisMaxMin").append("text"),x.exit().remove(),x.attr("transform",function(e,t){return"translate("+(s(e)+(h?s.rangeBand()/2:0))+",0)"}).select("text").attr("dy",".71em").attr("y",t.tickPadding()).attr("transform",function(e,t,n){return"rotate("+f+" 0,0)"}).style("text-anchor",f?f%360>0?"start":"end":"middle").text(function(e,t){var n=w(e);return(""+n).match("NaN")?"":n}),x.transition().attr("transform",function(e,t){return"translate("+(s(e)+(h?s.rangeBand()/2:0))+",0)"})}c&&C.attr("transform",function(e,t){return"translate(0,"+(t%2==0?"0":"12")+")"});break;case"right":E.enter().append("text").attr("class","nv-axislabel"),E.style("text-anchor",l?"middle":"begin").attr("transform",l?"rotate(90)":"").attr("y",l?-Math.max(n.right,r)+12:-10).attr("x",l?s.range()[0]/2:t.tickPadding());if(u){var x=m.selectAll("g.nv-axisMaxMin").data(s.domain());x.enter().append("g").attr("class","nv-axisMaxMin").append("text").style("opacity",0),x.exit().remove(),x.attr("transform",function(e,t){return"translate(0,"+s(e)+")"}).select("text").attr("dy",".32em").attr("y",0).attr("x",t.tickPadding()).style("text-anchor","start").text(function(e,t){var n=w(e);return(""+n).match("NaN")?"":n}),x.transition().attr("transform",function(e,t){return"translate(0,"+s.range()[t]+")"}).select("text").style("opacity",1)}break;case"left":E.enter().append("text").attr("class","nv-axislabel"),E.style("text-anchor",l?"middle":"end").attr("transform",l?"rotate(-90)":"").attr("y",l?-Math.max(n.left,r)+d:-10).attr("x",l?-s.range()[0]/2:-t.tickPadding());if(u){var x=m.selectAll("g.nv-axisMaxMin").data(s.domain());x.enter().append("g").attr("class","nv-axisMaxMin").append("text").style("opacity",0),x.exit().remove(),x.attr("transform",function(e,t){return"translate(0,"+v(e)+")"}).select("text").attr("dy",".32em").attr("y",0).attr("x",-t.tickPadding()).attr("text-anchor","end").text(function(e,t){var n=w(e);return(""+n).match("NaN")?"":n}),x.transition().attr("transform",function(e,t){return"translate(0,"+s.range()[t]+")"}).select("text").style("opacity",1)}}E.text(function(e){return e}),u&&(t.orient()==="left"||t.orient()==="right")&&(b.selectAll("g").each(function(e,t){d3.select(this).select("text").attr("opacity",1);if(s(e)<s.range()[1]+10||s(e)>s.range()[0]-10)(e>1e-10||e<-1e-10)&&d3.select(this).attr("opacity",0),d3.select(this).select("text").attr("opacity",0)}),s.domain()[0]==s.domain()[1]&&s.domain()[0]==0&&m.selectAll("g.nv-axisMaxMin").style("opacity",function(e,t){return t?0:1}));if(u&&(t.orient()==="top"||t.orient()==="bottom")){var L=[];m.selectAll("g.nv-axisMaxMin").each(function(e,t){try{t?L.push(s(e)-this.getBBox().width-4):L.push(s(e)+this.getBBox().width+4)}catch(n){t?L.push(s(e)-4):L.push(s(e)+4)}}),b.selectAll("g").each(function(e,t){if(s(e)<L[0]||s(e)>L[1])e>1e-10||e<-1e-10?d3.select(this).remove():d3.select(this).select("text").remove()})}a&&b.selectAll(".tick").filter(function(e){return!parseFloat(Math.round(e.__data__*1e5)/1e6)&&e.__data__!==undefined}).classed("zero",!0),v=s.copy()}),m}var t=d3.svg.axis(),n={top:0,right:0,bottom:0,left:0},r=75,i=60,s=d3.scale.linear(),o=null,u=!0,a=!0,f=0,l=!0,c=!1,h=!1,p=null,d=12;t.scale(s).orient("bottom").tickFormat(function(e){return e});var v;return m.axis=t,d3.rebind(m,t,"orient","tickValues","tickSubdivide","tickSize","tickPadding","tickFormat"),d3.rebind(m,s,"domain","range","rangeBand","rangeBands"),m.options=e.utils.optionsFunc.bind(m),m.margin=function(e){return arguments.length?(n.top=typeof e.top!="undefined"?e.top:n.top,n.right=typeof e.right!="undefined"?e.right:n.right,n.bottom=typeof e.bottom!="undefined"?e.bottom:n.bottom,n.left=typeof e.left!="undefined"?e.left:n.left,m):n},m.width=function(e){return arguments.length?(r=e,m):r},m.ticks=function(e){return arguments.length?(p=e,m):p},m.height=function(e){return arguments.length?(i=e,m):i},m.axisLabel=function(e){return arguments.length?(o=e,m):o},m.showMaxMin=function(e){return arguments.length?(u=e,m):u},m.highlightZero=function(e){return arguments.length?(a=e,m):a},m.scale=function(e){return arguments.length?(s=e,t.scale(s),h=typeof s.rangeBands=="function",d3.rebind(m,s,"domain","range","rangeBand","rangeBands"),m):s},m.rotateYLabel=function(e){return arguments.length?(l=e,m):l},m.rotateLabels=function(e){return arguments.length?(f=e,m):f},m.staggerLabels=function(e){return arguments.length?(c=e,m):c},m.axisLabelDistance=function(e){return arguments.length?(d=e,m):d},m},e.models.bullet=function(){"use strict";function m(e){return e.each(function(e,n){var p=c-t.left-t.right,m=h-t.top-t.bottom,g=d3.select(this),y=i.call(this,e,n).slice().sort(d3.descending),b=s.call(this,e,n).slice().sort(d3.descending),w=o.call(this,e,n).slice().sort(d3.descending),E=u.call(this,e,n).slice(),S=a.call(this,e,n).slice(),x=f.call(this,e,n).slice(),T=d3.scale.linear().domain(d3.extent(d3.merge([l,y]))).range(r?[p,0]:[0,p]),N=this.__chart__||d3.scale.linear().domain([0,Infinity]).range(T.range());this.__chart__=T;var C=d3.min(y),k=d3.max(y),L=y[1],A=g.selectAll("g.nv-wrap.nv-bullet").data([e]),O=A.enter().append("g").attr("class","nvd3 nv-wrap nv-bullet"),M=O.append("g"),_=A.select("g");M.append("rect").attr("class","nv-range nv-rangeMax"),M.append("rect").attr("class","nv-range nv-rangeAvg"),M.append("rect").attr("class","nv-range nv-rangeMin"),M.append("rect").attr("class","nv-measure"),M.append("path").attr("class","nv-markerTriangle"),A.attr("transform","translate("+t.left+","+t.top+")");var D=function(e){return Math.abs(N(e)-N(0))},P=function(e){return Math.abs(T(e)-T(0))},H=function(e){return e<0?N(e):N(0)},B=function(e){return e<0?T(e):T(0)};_.select("rect.nv-rangeMax").attr("height",m).attr("width",P(k>0?k:C)).attr("x",B(k>0?k:C)).datum(k>0?k:C),_.select("rect.nv-rangeAvg").attr("height",m).attr("width",P(L)).attr("x",B(L)).datum(L),_.select("rect.nv-rangeMin").attr("height",m).attr("width",P(k)).attr("x",B(k)).attr("width",P(k>0?C:k)).attr("x",B(k>0?C:k)).datum(k>0?C:k),_.select("rect.nv-measure").style("fill",d).attr("height",m/3).attr("y",m/3).attr("width",w<0?T(0)-T(w[0]):T(w[0])-T(0)).attr("x",B(w)).on("mouseover",function(){v.elementMouseover({value:w[0],label:x[0]||"Current",pos:[T(w[0]),m/2]})}).on("mouseout",function(){v.elementMouseout({value:w[0],label:x[0]||"Current"})});var j=m/6;b[0]?_.selectAll("path.nv-markerTriangle").attr("transform",function(e){return"translate("+T(b[0])+","+m/2+")"}).attr("d","M0,"+j+"L"+j+","+ -j+" "+ -j+","+ -j+"Z").on("mouseover",function(){v.elementMouseover({value:b[0],label:S[0]||"Previous",pos:[T(b[0]),m/2]})}).on("mouseout",function(){v.elementMouseout({value:b[0],label:S[0]||"Previous"})}):_.selectAll("path.nv-markerTriangle").remove(),A.selectAll(".nv-range").on("mouseover",function(e,t){var n=E[t]||(t?t==1?"Mean":"Minimum":"Maximum");v.elementMouseover({value:e,label:n,pos:[T(e),m/2]})}).on("mouseout",function(e,t){var n=E[t]||(t?t==1?"Mean":"Minimum":"Maximum");v.elementMouseout({value:e,label:n})})}),m}var t={top:0,right:0,bottom:0,left:0},n="left",r=!1,i=function(e){return e.ranges},s=function(e){return e.markers},o=function(e){return e.measures},u=function(e){return e.rangeLabels?e.rangeLabels:[]},a=function(e){return e.markerLabels?e.markerLabels:[]},f=function(e){return e.measureLabels?e.measureLabels:[]},l=[0],c=380,h=30,p=null,d=e.utils.getColor(["#1f77b4"]),v=d3.dispatch("elementMouseover","elementMouseout");return m.dispatch=v,m.options=e.utils.optionsFunc.bind(m),m.orient=function(e){return arguments.length?(n=e,r=n=="right"||n=="bottom",m):n},m.ranges=function(e){return arguments.length?(i=e,m):i},m.markers=function(e){return arguments.length?(s=e,m):s},m.measures=function(e){return arguments.length?(o=e,m):o},m.forceX=function(e){return arguments.length?(l=e,m):l},m.width=function(e){return arguments.length?(c=e,m):c},m.height=function(e){return arguments.length?(h=e,m):h},m.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,m):t},m.tickFormat=function(e){return arguments.length?(p=e,m):p},m.color=function(t){return arguments.length?(d=e.utils.getColor(t),m):d},m},e.models.bulletChart=function(){"use strict";function m(e){return e.each(function(n,h){var g=d3.select(this),y=(a||parseInt(g.style("width"))||960)-i.left-i.right,b=f-i.top-i.bottom,w=this;m.update=function(){m(e)},m.container=this;if(!n||!s.call(this,n,h)){var E=g.selectAll(".nv-noData").data([p]);return E.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),E.attr("x",i.left+y/2).attr("y",18+i.top+b/2).text(function(e){return e}),m}g.selectAll(".nv-noData").remove();var S=s.call(this,n,h).slice().sort(d3.descending),x=o.call(this,n,h).slice().sort(d3.descending),T=u.call(this,n,h).slice().sort(d3.descending),N=g.selectAll("g.nv-wrap.nv-bulletChart").data([n]),C=N.enter().append("g").attr("class","nvd3 nv-wrap nv-bulletChart"),k=C.append("g"),L=N.select("g");k.append("g").attr("class","nv-bulletWrap"),k.append("g").attr("class","nv-titles"),N.attr("transform","translate("+i.left+","+i.top+")");var A=d3.scale.linear().domain([0,Math.max(S[0],x[0],T[0])]).range(r?[y,0]:[0,y]),O=this.__chart__||d3.scale.linear().domain([0,Infinity]).range(A.range());this.__chart__=A;var M=function(e){return Math.abs(O(e)-O(0))},_=function(e){return Math.abs(A(e)-A(0))},D=k.select(".nv-titles").append("g").attr("text-anchor","end").attr("transform","translate(-6,"+(f-i.top-i.bottom)/2+")");D.append("text").attr("class","nv-title").text(function(e){return e.title}),D.append("text").attr("class","nv-subtitle").attr("dy","1em").text(function(e){return e.subtitle}),t.width(y).height(b);var P=L.select(".nv-bulletWrap");d3.transition(P).call(t);var H=l||A.tickFormat(y/100),B=L.selectAll("g.nv-tick").data(A.ticks(y/50),function(e){return this.textContent||H(e)}),j=B.enter().append("g").attr("class","nv-tick").attr("transform",function(e){return"translate("+O(e)+",0)"}).style("opacity",1e-6);j.append("line").attr("y1",b).attr("y2",b*7/6),j.append("text").attr("text-anchor","middle").attr("dy","1em").attr("y",b*7/6).text(H);var F=d3.transition(B).attr("transform",function(e){return"translate("+A(e)+",0)"}).style("opacity",1);F.select("line").attr("y1",b).attr("y2",b*7/6),F.select("text").attr("y",b*7/6),d3.transition(B.exit()).attr("transform",function(e){return"translate("+A(e)+",0)"}).style("opacity",1e-6).remove(),d.on("tooltipShow",function(e){e.key=n.title,c&&v(e,w.parentNode)})}),d3.timer.flush(),m}var t=e.models.bullet(),n="left",r=!1,i={top:5,right:40,bottom:20,left:120},s=function(e){return e.ranges},o=function(e){return e.markers},u=function(e){return e.measures},a=null,f=55,l=null,c=!0,h=function(e,t,n,r,i){return"<h3>"+t+"</h3>"+"<p>"+n+"</p>"},p="No Data Available.",d=d3.dispatch("tooltipShow","tooltipHide"),v=function(t,n){var r=t.pos[0]+(n.offsetLeft||0)+i.left,s=t.pos[1]+(n.offsetTop||0)+i.top,o=h(t.key,t.label,t.value,t,m);e.tooltip.show([r,s],o,t.value<0?"e":"w",null,n)};return t.dispatch.on("elementMouseover.tooltip",function(e){d.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){d.tooltipHide(e)}),d.on("tooltipHide",function(){c&&e.tooltip.cleanup()}),m.dispatch=d,m.bullet=t,d3.rebind(m,t,"color"),m.options=e.utils.optionsFunc.bind(m),m.orient=function(e){return arguments.length?(n=e,r=n=="right"||n=="bottom",m):n},m.ranges=function(e){return arguments.length?(s=e,m):s},m.markers=function(e){return arguments.length?(o=e,m):o},m.measures=function(e){return arguments.length?(u=e,m):u},m.width=function(e){return arguments.length?(a=e,m):a},m.height=function(e){return arguments.length?(f=e,m):f},m.margin=function(e){return arguments.length?(i.top=typeof e.top!="undefined"?e.top:i.top,i.right=typeof e.right!="undefined"?e.right:i.right,i.bottom=typeof e.bottom!="undefined"?e.bottom:i.bottom,i.left=typeof e.left!="undefined"?e.left:i.left,m):i},m.tickFormat=function(e){return arguments.length?(l=e,m):l},m.tooltips=function(e){return arguments.length?(c=e,m):c},m.tooltipContent=function(e){return arguments.length?(h=e,m):h},m.noData=function(e){return arguments.length?(p=e,m):p},m},e.models.cumulativeLineChart=function(){"use strict";function D(b){return b.each(function(b){function q(e,t){d3.select(D.container).style("cursor","ew-resize")}function R(e,t){M.x=d3.event.x,M.i=Math.round(O.invert(M.x)),rt()}function U(e,t){d3.select(D.container).style("cursor","auto"),x.index=M.i,k.stateChange(x)}function rt(){nt.data([M]);var e=D.transitionDuration();D.transitionDuration(0),D.update(),D.transitionDuration(e)}var A=d3.select(this).classed("nv-chart-"+S,!0),H=this,B=(f||parseInt(A.style("width"))||960)-u.left-u.right,j=(l||parseInt(A.style("height"))||400)-u.top-u.bottom;D.update=function(){A.transition().duration(L).call(D)},D.container=this,x.disabled=b.map(function(e){return!!e.disabled});if(!T){var F;T={};for(F in x)x[F]instanceof Array?T[F]=x[F].slice(0):T[F]=x[F]}var I=d3.behavior.drag().on("dragstart",q).on("drag",R).on("dragend",U);if(!b||!b.length||!b.filter(function(e){return e.values.length}).length){var z=A.selectAll(".nv-noData").data([N]);return z.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),z.attr("x",u.left+B/2).attr("y",u.top+j/2).text(function(e){return e}),D}A.selectAll(".nv-noData").remove(),w=t.xScale(),E=t.yScale();if(!y){var W=b.filter(function(e){return!e.disabled}).map(function(e,n){var r=d3.extent(e.values,t.y());return r[0]<-0.95&&(r[0]=-0.95),[(r[0]-r[1])/(1+r[1]),(r[1]-r[0])/(1+r[0])]}),X=[d3.min(W,function(e){return e[0]}),d3.max(W,function(e){return e[1]})];t.yDomain(X)}else t.yDomain(null);O.domain([0,b[0].values.length-1]).range([0,B]).clamp(!0);var b=P(M.i,b),V=g?"none":"all",$=A.selectAll("g.nv-wrap.nv-cumulativeLine").data([b]),J=$.enter().append("g").attr("class","nvd3 nv-wrap nv-cumulativeLine").append("g"),K=$.select("g");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",V),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"),c&&(i.width(B),K.select(".nv-legendWrap").datum(b).call(i),u.top!=i.height()&&(u.top=i.height(),j=(l||parseInt(A.style("height"))||400)-u.top-u.bottom),K.select(".nv-legendWrap").attr("transform","translate(0,"+ -u.top+")"));if(m){var Q=[{key:"Re-scale y-axis",disabled:!y}];s.width(140).color(["#444","#444","#444"]).rightAlign(!1).margin({top:5,right:0,bottom:5,left:20}),K.select(".nv-controlsWrap").datum(Q).attr("transform","translate(0,"+ -u.top+")").call(s)}$.attr("transform","translate("+u.left+","+u.top+")"),d&&K.select(".nv-y.nv-axis").attr("transform","translate("+B+",0)");var G=b.filter(function(e){return e.tempDisabled});$.select(".tempDisabled").remove(),G.length&&$.append("text").attr("class","tempDisabled").attr("x",B/2).attr("y","-.71em").style("text-anchor","end").text(G.map(function(e){return e.key}).join(", ")+" values cannot be calculated for this time period."),g&&(o.width(B).height(j).margin({left:u.left,top:u.top}).svgContainer(A).xScale(w),$.select(".nv-interactive").call(o)),J.select(".nv-background").append("rect"),K.select(".nv-background rect").attr("width",B).attr("height",j),t.y(function(e){return e.display.y}).width(B).height(j).color(b.map(function(e,t){return e.color||a(e,t)}).filter(function(e,t){return!b[t].disabled&&!b[t].tempDisabled}));var Y=K.select(".nv-linesWrap").datum(b.filter(function(e){return!e.disabled&&!e.tempDisabled}));Y.call(t),b.forEach(function(e,t){e.seriesIndex=t});var Z=b.filter(function(e){return!e.disabled&&!!C(e)}),et=K.select(".nv-avgLinesWrap").selectAll("line").data(Z,function(e){return e.key}),tt=function(e){var t=E(C(e));return t<0?0:t>j?j:t};et.enter().append("line").style("stroke-width",2).style("stroke-dasharray","10,10").style("stroke",function(e,n){return t.color()(e,e.seriesIndex)}).attr("x1",0).attr("x2",B).attr("y1",tt).attr("y2",tt),et.style("stroke-opacity",function(e){var t=E(C(e));return t<0||t>j?0:1}).attr("x1",0).attr("x2",B).attr("y1",tt).attr("y2",tt),et.exit().remove();var nt=Y.selectAll(".nv-indexLine").data([M]);nt.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),nt.attr("transform",function(e){return"translate("+O(e.i)+",0)"}).attr("height",j),h&&(n.scale(w).ticks(Math.min(b[0].values.length,B/70)).tickSize(-j,0),K.select(".nv-x.nv-axis").attr("transform","translate(0,"+E.range()[0]+")"),d3.transition(K.select(".nv-x.nv-axis")).call(n)),p&&(r.scale(E).ticks(j/36).tickSize(-B,0),d3.transition(K.select(".nv-y.nv-axis")).call(r)),K.select(".nv-background rect").on("click",function(){M.x=d3.mouse(this)[0],M.i=Math.round(O.invert(M.x)),x.index=M.i,k.stateChange(x),rt()}),t.dispatch.on("elementClick",function(e){M.i=e.pointIndex,M.x=O(M.i),x.index=M.i,k.stateChange(x),rt()}),s.dispatch.on("legendClick",function(e,t){e.disabled=!e.disabled,y=!e.disabled,x.rescaleY=y,k.stateChange(x),D.update()}),i.dispatch.on("stateChange",function(e){x.disabled=e.disabled,k.stateChange(x),D.update()}),o.dispatch.on("elementMousemove",function(i){t.clearHighlights();var s,f,l,c=[];b.filter(function(e,t){return e.seriesIndex=t,!e.disabled}).forEach(function(n,r){f=e.interactiveBisect(n.values,i.pointXValue,D.x()),t.highlightPoint(r,f,!0);var o=n.values[f];if(typeof o=="undefined")return;typeof s=="undefined"&&(s=o),typeof l=="undefined"&&(l=D.xScale()(D.x()(o,f))),c.push({key:n.key,value:D.y()(o,f),color:a(n,n.seriesIndex)})});if(c.length>2){var h=D.yScale().invert(i.mouseY),p=Math.abs(D.yScale().domain()[0]-D.yScale().domain()[1]),d=.03*p,m=e.nearestValueIndex(c.map(function(e){return e.value}),h,d);m!==null&&(c[m].highlight=!0)}var g=n.tickFormat()(D.x()(s,f),f);o.tooltip.position({left:l+u.left,top:i.mouseY+u.top}).chartContainer(H.parentNode).enabled(v).valueFormatter(function(e,t){return r.tickFormat()(e)}).data({value:g,series:c})(),o.renderGuideLine(l)}),o.dispatch.on("elementMouseout",function(e){k.tooltipHide(),t.clearHighlights()}),k.on("tooltipShow",function(e){v&&_(e,H.parentNode)}),k.on("changeState",function(e){typeof e.disabled!="undefined"&&(b.forEach(function(t,n){t.disabled=e.disabled[n]}),x.disabled=e.disabled),typeof e.index!="undefined"&&(M.i=e.index,M.x=O(M.i),x.index=e.index,nt.data([M])),typeof e.rescaleY!="undefined"&&(y=e.rescaleY),D.update()})}),D}function P(e,n){return n.map(function(n,r){if(!n.values)return n;var i=t.y()(n.values[e],e);return i<-0.95&&!A?(n.tempDisabled=!0,n):(n.tempDisabled=!1,n.values= | |
n.values.map(function(e,n){return e.display={y:(t.y()(e,n)-i)/(1+i)},e}),n)})}var t=e.models.line(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),s=e.models.legend(),o=e.interactiveGuideline(),u={top:30,right:30,bottom:50,left:60},a=e.utils.defaultColor(),f=null,l=null,c=!0,h=!0,p=!0,d=!1,v=!0,m=!0,g=!1,y=!0,b=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" at "+t+"</p>"},w,E,S=t.id(),x={index:0,rescaleY:y},T=null,N="No Data Available.",C=function(e){return e.average},k=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),L=250,A=!1;n.orient("bottom").tickPadding(7),r.orient(d?"right":"left"),s.updateState(!1);var O=d3.scale.linear(),M={i:0,x:0},_=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),a=n.tickFormat()(t.x()(i.point,i.pointIndex)),f=r.tickFormat()(t.y()(i.point,i.pointIndex)),l=b(i.series.key,a,f,i,D);e.tooltip.show([o,u],l,null,null,s)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+u.left,e.pos[1]+u.top],k.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){k.tooltipHide(e)}),k.on("tooltipHide",function(){v&&e.tooltip.cleanup()}),D.dispatch=k,D.lines=t,D.legend=i,D.xAxis=n,D.yAxis=r,D.interactiveLayer=o,d3.rebind(D,t,"defined","isArea","x","y","xScale","yScale","size","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","useVoronoi","id"),D.options=e.utils.optionsFunc.bind(D),D.margin=function(e){return arguments.length?(u.top=typeof e.top!="undefined"?e.top:u.top,u.right=typeof e.right!="undefined"?e.right:u.right,u.bottom=typeof e.bottom!="undefined"?e.bottom:u.bottom,u.left=typeof e.left!="undefined"?e.left:u.left,D):u},D.width=function(e){return arguments.length?(f=e,D):f},D.height=function(e){return arguments.length?(l=e,D):l},D.color=function(t){return arguments.length?(a=e.utils.getColor(t),i.color(a),D):a},D.rescaleY=function(e){return arguments.length?(y=e,D):y},D.showControls=function(e){return arguments.length?(m=e,D):m},D.useInteractiveGuideline=function(e){return arguments.length?(g=e,e===!0&&(D.interactive(!1),D.useVoronoi(!1)),D):g},D.showLegend=function(e){return arguments.length?(c=e,D):c},D.showXAxis=function(e){return arguments.length?(h=e,D):h},D.showYAxis=function(e){return arguments.length?(p=e,D):p},D.rightAlignYAxis=function(e){return arguments.length?(d=e,r.orient(e?"right":"left"),D):d},D.tooltips=function(e){return arguments.length?(v=e,D):v},D.tooltipContent=function(e){return arguments.length?(b=e,D):b},D.state=function(e){return arguments.length?(x=e,D):x},D.defaultState=function(e){return arguments.length?(T=e,D):T},D.noData=function(e){return arguments.length?(N=e,D):N},D.average=function(e){return arguments.length?(C=e,D):C},D.transitionDuration=function(e){return arguments.length?(L=e,D):L},D.noErrorCheck=function(e){return arguments.length?(A=e,D):A},D},e.models.discreteBar=function(){"use strict";function E(e){return e.each(function(e){var i=n-t.left-t.right,E=r-t.top-t.bottom,S=d3.select(this);e.forEach(function(e,t){e.values.forEach(function(e){e.series=t})});var T=p&&d?[]:e.map(function(e){return e.values.map(function(e,t){return{x:u(e,t),y:a(e,t),y0:e.y0}})});s.domain(p||d3.merge(T).map(function(e){return e.x})).rangeBands(v||[0,i],.1),o.domain(d||d3.extent(d3.merge(T).map(function(e){return e.y}).concat(f))),c?o.range(m||[E-(o.domain()[0]<0?12:0),o.domain()[1]>0?12:0]):o.range(m||[E,0]),b=b||s,w=w||o.copy().range([o(0),o(0)]);var N=S.selectAll("g.nv-wrap.nv-discretebar").data([e]),C=N.enter().append("g").attr("class","nvd3 nv-wrap nv-discretebar"),k=C.append("g"),L=N.select("g");k.append("g").attr("class","nv-groups"),N.attr("transform","translate("+t.left+","+t.top+")");var A=N.select(".nv-groups").selectAll(".nv-group").data(function(e){return e},function(e){return e.key});A.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),A.exit().transition().style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),A.attr("class",function(e,t){return"nv-group nv-series-"+t}).classed("hover",function(e){return e.hover}),A.transition().style("stroke-opacity",1).style("fill-opacity",.75);var O=A.selectAll("g.nv-bar").data(function(e){return e.values});O.exit().remove();var M=O.enter().append("g").attr("transform",function(e,t,n){return"translate("+(s(u(e,t))+s.rangeBand()*.05)+", "+o(0)+")"}).on("mouseover",function(t,n){d3.select(this).classed("hover",!0),g.elementMouseover({value:a(t,n),point:t,series:e[t.series],pos:[s(u(t,n))+s.rangeBand()*(t.series+.5)/e.length,o(a(t,n))],pointIndex:n,seriesIndex:t.series,e:d3.event})}).on("mouseout",function(t,n){d3.select(this).classed("hover",!1),g.elementMouseout({value:a(t,n),point:t,series:e[t.series],pointIndex:n,seriesIndex:t.series,e:d3.event})}).on("click",function(t,n){g.elementClick({value:a(t,n),point:t,series:e[t.series],pos:[s(u(t,n))+s.rangeBand()*(t.series+.5)/e.length,o(a(t,n))],pointIndex:n,seriesIndex:t.series,e:d3.event}),d3.event.stopPropagation()}).on("dblclick",function(t,n){g.elementDblClick({value:a(t,n),point:t,series:e[t.series],pos:[s(u(t,n))+s.rangeBand()*(t.series+.5)/e.length,o(a(t,n))],pointIndex:n,seriesIndex:t.series,e:d3.event}),d3.event.stopPropagation()});M.append("rect").attr("height",0).attr("width",s.rangeBand()*.9/e.length),c?(M.append("text").attr("text-anchor","middle"),O.select("text").text(function(e,t){return h(a(e,t))}).transition().attr("x",s.rangeBand()*.9/2).attr("y",function(e,t){return a(e,t)<0?o(a(e,t))-o(0)+12:-4})):O.selectAll("text").remove(),O.attr("class",function(e,t){return a(e,t)<0?"nv-bar negative":"nv-bar positive"}).style("fill",function(e,t){return e.color||l(e,t)}).style("stroke",function(e,t){return e.color||l(e,t)}).select("rect").attr("class",y).transition().attr("width",s.rangeBand()*.9/e.length),O.transition().attr("transform",function(e,t){var n=s(u(e,t))+s.rangeBand()*.05,r=a(e,t)<0?o(0):o(0)-o(a(e,t))<1?o(0)-1:o(a(e,t));return"translate("+n+", "+r+")"}).select("rect").attr("height",function(e,t){return Math.max(Math.abs(o(a(e,t))-o(d&&d[0]||0))||1)}),b=s.copy(),w=o.copy()}),E}var t={top:0,right:0,bottom:0,left:0},n=960,r=500,i=Math.floor(Math.random()*1e4),s=d3.scale.ordinal(),o=d3.scale.linear(),u=function(e){return e.x},a=function(e){return e.y},f=[0],l=e.utils.defaultColor(),c=!1,h=d3.format(",.2f"),p,d,v,m,g=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),y="discreteBar",b,w;return E.dispatch=g,E.options=e.utils.optionsFunc.bind(E),E.x=function(e){return arguments.length?(u=e,E):u},E.y=function(e){return arguments.length?(a=e,E):a},E.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,E):t},E.width=function(e){return arguments.length?(n=e,E):n},E.height=function(e){return arguments.length?(r=e,E):r},E.xScale=function(e){return arguments.length?(s=e,E):s},E.yScale=function(e){return arguments.length?(o=e,E):o},E.xDomain=function(e){return arguments.length?(p=e,E):p},E.yDomain=function(e){return arguments.length?(d=e,E):d},E.xRange=function(e){return arguments.length?(v=e,E):v},E.yRange=function(e){return arguments.length?(m=e,E):m},E.forceY=function(e){return arguments.length?(f=e,E):f},E.color=function(t){return arguments.length?(l=e.utils.getColor(t),E):l},E.id=function(e){return arguments.length?(i=e,E):i},E.showValues=function(e){return arguments.length?(c=e,E):c},E.valueFormat=function(e){return arguments.length?(h=e,E):h},E.rectClass=function(e){return arguments.length?(y=e,E):y},E},e.models.discreteBarChart=function(){"use strict";function w(e){return e.each(function(e){var u=d3.select(this),p=this,E=(s||parseInt(u.style("width"))||960)-i.left-i.right,S=(o||parseInt(u.style("height"))||400)-i.top-i.bottom;w.update=function(){g.beforeUpdate(),u.transition().duration(y).call(w)},w.container=this;if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var T=u.selectAll(".nv-noData").data([m]);return T.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),T.attr("x",i.left+E/2).attr("y",i.top+S/2).text(function(e){return e}),w}u.selectAll(".nv-noData").remove(),d=t.xScale(),v=t.yScale().clamp(!0);var N=u.selectAll("g.nv-wrap.nv-discreteBarWithAxes").data([e]),C=N.enter().append("g").attr("class","nvd3 nv-wrap nv-discreteBarWithAxes").append("g"),k=C.append("defs"),L=N.select("g");C.append("g").attr("class","nv-x nv-axis"),C.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),C.append("g").attr("class","nv-barsWrap"),L.attr("transform","translate("+i.left+","+i.top+")"),l&&L.select(".nv-y.nv-axis").attr("transform","translate("+E+",0)"),t.width(E).height(S);var A=L.select(".nv-barsWrap").datum(e.filter(function(e){return!e.disabled}));A.transition().call(t),k.append("clipPath").attr("id","nv-x-label-clip-"+t.id()).append("rect"),L.select("#nv-x-label-clip-"+t.id()+" rect").attr("width",d.rangeBand()*(c?2:1)).attr("height",16).attr("x",-d.rangeBand()/(c?1:2));if(a){n.scale(d).ticks(E/100).tickSize(-S,0),L.select(".nv-x.nv-axis").attr("transform","translate(0,"+(v.range()[0]+(t.showValues()&&v.domain()[0]<0?16:0))+")"),L.select(".nv-x.nv-axis").transition().call(n);var O=L.select(".nv-x.nv-axis").selectAll("g");c&&O.selectAll("text").attr("transform",function(e,t,n){return"translate(0,"+(n%2==0?"5":"17")+")"})}f&&(r.scale(v).ticks(S/36).tickSize(-E,0),L.select(".nv-y.nv-axis").transition().call(r)),L.select(".nv-zeroLine line").attr("x1",0).attr("x2",E).attr("y1",v(0)).attr("y2",v(0)),g.on("tooltipShow",function(e){h&&b(e,p.parentNode)})}),w}var t=e.models.discreteBar(),n=e.models.axis(),r=e.models.axis(),i={top:15,right:10,bottom:50,left:60},s=null,o=null,u=e.utils.getColor(),a=!0,f=!0,l=!1,c=!1,h=!0,p=function(e,t,n,r,i){return"<h3>"+t+"</h3>"+"<p>"+n+"</p>"},d,v,m="No Data Available.",g=d3.dispatch("tooltipShow","tooltipHide","beforeUpdate"),y=250;n.orient("bottom").highlightZero(!1).showMaxMin(!1).tickFormat(function(e){return e}),r.orient(l?"right":"left").tickFormat(d3.format(",.1f"));var b=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),a=n.tickFormat()(t.x()(i.point,i.pointIndex)),f=r.tickFormat()(t.y()(i.point,i.pointIndex)),l=p(i.series.key,a,f,i,w);e.tooltip.show([o,u],l,i.value<0?"n":"s",null,s)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+i.left,e.pos[1]+i.top],g.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){g.tooltipHide(e)}),g.on("tooltipHide",function(){h&&e.tooltip.cleanup()}),w.dispatch=g,w.discretebar=t,w.xAxis=n,w.yAxis=r,d3.rebind(w,t,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","id","showValues","valueFormat"),w.options=e.utils.optionsFunc.bind(w),w.margin=function(e){return arguments.length?(i.top=typeof e.top!="undefined"?e.top:i.top,i.right=typeof e.right!="undefined"?e.right:i.right,i.bottom=typeof e.bottom!="undefined"?e.bottom:i.bottom,i.left=typeof e.left!="undefined"?e.left:i.left,w):i},w.width=function(e){return arguments.length?(s=e,w):s},w.height=function(e){return arguments.length?(o=e,w):o},w.color=function(n){return arguments.length?(u=e.utils.getColor(n),t.color(u),w):u},w.showXAxis=function(e){return arguments.length?(a=e,w):a},w.showYAxis=function(e){return arguments.length?(f=e,w):f},w.rightAlignYAxis=function(e){return arguments.length?(l=e,r.orient(e?"right":"left"),w):l},w.staggerLabels=function(e){return arguments.length?(c=e,w):c},w.tooltips=function(e){return arguments.length?(h=e,w):h},w.tooltipContent=function(e){return arguments.length?(p=e,w):p},w.noData=function(e){return arguments.length?(m=e,w):m},w.transitionDuration=function(e){return arguments.length?(y=e,w):y},w},e.models.distribution=function(){"use strict";function l(e){return e.each(function(e){var a=n-(i==="x"?t.left+t.right:t.top+t.bottom),l=i=="x"?"y":"x",c=d3.select(this);f=f||u;var h=c.selectAll("g.nv-distribution").data([e]),p=h.enter().append("g").attr("class","nvd3 nv-distribution"),d=p.append("g"),v=h.select("g");h.attr("transform","translate("+t.left+","+t.top+")");var m=v.selectAll("g.nv-dist").data(function(e){return e},function(e){return e.key});m.enter().append("g"),m.attr("class",function(e,t){return"nv-dist nv-series-"+t}).style("stroke",function(e,t){return o(e,t)});var g=m.selectAll("line.nv-dist"+i).data(function(e){return e.values});g.enter().append("line").attr(i+"1",function(e,t){return f(s(e,t))}).attr(i+"2",function(e,t){return f(s(e,t))}),m.exit().selectAll("line.nv-dist"+i).transition().attr(i+"1",function(e,t){return u(s(e,t))}).attr(i+"2",function(e,t){return u(s(e,t))}).style("stroke-opacity",0).remove(),g.attr("class",function(e,t){return"nv-dist"+i+" nv-dist"+i+"-"+t}).attr(l+"1",0).attr(l+"2",r),g.transition().attr(i+"1",function(e,t){return u(s(e,t))}).attr(i+"2",function(e,t){return u(s(e,t))}),f=u.copy()}),l}var t={top:0,right:0,bottom:0,left:0},n=400,r=8,i="x",s=function(e){return e[i]},o=e.utils.defaultColor(),u=d3.scale.linear(),a,f;return l.options=e.utils.optionsFunc.bind(l),l.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,l):t},l.width=function(e){return arguments.length?(n=e,l):n},l.axis=function(e){return arguments.length?(i=e,l):i},l.size=function(e){return arguments.length?(r=e,l):r},l.getData=function(e){return arguments.length?(s=d3.functor(e),l):s},l.scale=function(e){return arguments.length?(u=e,l):u},l.color=function(t){return arguments.length?(o=e.utils.getColor(t),l):o},l},e.models.historicalBar=function(){"use strict";function w(E){return E.each(function(w){var E=n-t.left-t.right,S=r-t.top-t.bottom,T=d3.select(this);s.domain(d||d3.extent(w[0].values.map(u).concat(f))),c?s.range(m||[E*.5/w[0].values.length,E*(w[0].values.length-.5)/w[0].values.length]):s.range(m||[0,E]),o.domain(v||d3.extent(w[0].values.map(a).concat(l))).range(g||[S,0]),s.domain()[0]===s.domain()[1]&&(s.domain()[0]?s.domain([s.domain()[0]-s.domain()[0]*.01,s.domain()[1]+s.domain()[1]*.01]):s.domain([-1,1])),o.domain()[0]===o.domain()[1]&&(o.domain()[0]?o.domain([o.domain()[0]+o.domain()[0]*.01,o.domain()[1]-o.domain()[1]*.01]):o.domain([-1,1]));var N=T.selectAll("g.nv-wrap.nv-historicalBar-"+i).data([w[0].values]),C=N.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBar-"+i),k=C.append("defs"),L=C.append("g"),A=N.select("g");L.append("g").attr("class","nv-bars"),N.attr("transform","translate("+t.left+","+t.top+")"),T.on("click",function(e,t){y.chartClick({data:e,index:t,pos:d3.event,id:i})}),k.append("clipPath").attr("id","nv-chart-clip-path-"+i).append("rect"),N.select("#nv-chart-clip-path-"+i+" rect").attr("width",E).attr("height",S),A.attr("clip-path",h?"url(#nv-chart-clip-path-"+i+")":"");var O=N.select(".nv-bars").selectAll(".nv-bar").data(function(e){return e},function(e,t){return u(e,t)});O.exit().remove();var M=O.enter().append("rect").attr("x",0).attr("y",function(t,n){return e.utils.NaNtoZero(o(Math.max(0,a(t,n))))}).attr("height",function(t,n){return e.utils.NaNtoZero(Math.abs(o(a(t,n))-o(0)))}).attr("transform",function(e,t){return"translate("+(s(u(e,t))-E/w[0].values.length*.45)+",0)"}).on("mouseover",function(e,t){if(!b)return;d3.select(this).classed("hover",!0),y.elementMouseover({point:e,series:w[0],pos:[s(u(e,t)),o(a(e,t))],pointIndex:t,seriesIndex:0,e:d3.event})}).on("mouseout",function(e,t){if(!b)return;d3.select(this).classed("hover",!1),y.elementMouseout({point:e,series:w[0],pointIndex:t,seriesIndex:0,e:d3.event})}).on("click",function(e,t){if(!b)return;y.elementClick({value:a(e,t),data:e,index:t,pos:[s(u(e,t)),o(a(e,t))],e:d3.event,id:i}),d3.event.stopPropagation()}).on("dblclick",function(e,t){if(!b)return;y.elementDblClick({value:a(e,t),data:e,index:t,pos:[s(u(e,t)),o(a(e,t))],e:d3.event,id:i}),d3.event.stopPropagation()});O.attr("fill",function(e,t){return p(e,t)}).attr("class",function(e,t,n){return(a(e,t)<0?"nv-bar negative":"nv-bar positive")+" nv-bar-"+n+"-"+t}).transition().attr("transform",function(e,t){return"translate("+(s(u(e,t))-E/w[0].values.length*.45)+",0)"}).attr("width",E/w[0].values.length*.9),O.transition().attr("y",function(t,n){var r=a(t,n)<0?o(0):o(0)-o(a(t,n))<1?o(0)-1:o(a(t,n));return e.utils.NaNtoZero(r)}).attr("height",function(t,n){return e.utils.NaNtoZero(Math.max(Math.abs(o(a(t,n))-o(0)),1))})}),w}var t={top:0,right:0,bottom:0,left:0},n=960,r=500,i=Math.floor(Math.random()*1e4),s=d3.scale.linear(),o=d3.scale.linear(),u=function(e){return e.x},a=function(e){return e.y},f=[],l=[0],c=!1,h=!0,p=e.utils.defaultColor(),d,v,m,g,y=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),b=!0;return w.highlightPoint=function(e,t){d3.select(".nv-historicalBar-"+i).select(".nv-bars .nv-bar-0-"+e).classed("hover",t)},w.clearHighlights=function(){d3.select(".nv-historicalBar-"+i).select(".nv-bars .nv-bar.hover").classed("hover",!1)},w.dispatch=y,w.options=e.utils.optionsFunc.bind(w),w.x=function(e){return arguments.length?(u=e,w):u},w.y=function(e){return arguments.length?(a=e,w):a},w.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,w):t},w.width=function(e){return arguments.length?(n=e,w):n},w.height=function(e){return arguments.length?(r=e,w):r},w.xScale=function(e){return arguments.length?(s=e,w):s},w.yScale=function(e){return arguments.length?(o=e,w):o},w.xDomain=function(e){return arguments.length?(d=e,w):d},w.yDomain=function(e){return arguments.length?(v=e,w):v},w.xRange=function(e){return arguments.length?(m=e,w):m},w.yRange=function(e){return arguments.length?(g=e,w):g},w.forceX=function(e){return arguments.length?(f=e,w):f},w.forceY=function(e){return arguments.length?(l=e,w):l},w.padData=function(e){return arguments.length?(c=e,w):c},w.clipEdge=function(e){return arguments.length?(h=e,w):h},w.color=function(t){return arguments.length?(p=e.utils.getColor(t),w):p},w.id=function(e){return arguments.length?(i=e,w):i},w.interactive=function(e){return arguments.length?(b=!1,w):b},w},e.models.historicalBarChart=function(){"use strict";function x(e){return e.each(function(d){var T=d3.select(this),N=this,C=(u||parseInt(T.style("width"))||960)-s.left-s.right,k=(a||parseInt(T.style("height"))||400)-s.top-s.bottom;x.update=function(){T.transition().duration(E).call(x)},x.container=this,g.disabled=d.map(function(e){return!!e.disabled});if(!y){var L;y={};for(L in g)g[L]instanceof Array?y[L]=g[L].slice(0):y[L]=g[L]}if(!d||!d.length||!d.filter(function(e){return e.values.length}).length){var A=T.selectAll(".nv-noData").data([b]);return A.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),A.attr("x",s.left+C/2).attr("y",s.top+k/2).text(function(e){return e}),x}T.selectAll(".nv-noData").remove(),v=t.xScale(),m=t.yScale();var O=T.selectAll("g.nv-wrap.nv-historicalBarChart").data([d]),M=O.enter().append("g").attr("class","nvd3 nv-wrap nv-historicalBarChart").append("g"),_=O.select("g");M.append("g").attr("class","nv-x nv-axis"),M.append("g").attr("class","nv-y nv-axis"),M.append("g").attr("class","nv-barsWrap"),M.append("g").attr("class","nv-legendWrap"),f&&(i.width(C),_.select(".nv-legendWrap").datum(d).call(i),s.top!=i.height()&&(s.top=i.height(),k=(a||parseInt(T.style("height"))||400)-s.top-s.bottom),O.select(".nv-legendWrap").attr("transform","translate(0,"+ -s.top+")")),O.attr("transform","translate("+s.left+","+s.top+")"),h&&_.select(".nv-y.nv-axis").attr("transform","translate("+C+",0)"),t.width(C).height(k).color(d.map(function(e,t){return e.color||o(e,t)}).filter(function(e,t){return!d[t].disabled}));var D=_.select(".nv-barsWrap").datum(d.filter(function(e){return!e.disabled}));D.transition().call(t),l&&(n.scale(v).tickSize(-k,0),_.select(".nv-x.nv-axis").attr("transform","translate(0,"+m.range()[0]+")"),_.select(".nv-x.nv-axis").transition().call(n)),c&&(r.scale(m).ticks(k/36).tickSize(-C,0),_.select(".nv-y.nv-axis").transition().call(r)),i.dispatch.on("legendClick",function(t,n){t.disabled=!t.disabled,d.filter(function(e){return!e.disabled}).length||d.map(function(e){return e.disabled=!1,O.selectAll(".nv-series").classed("disabled",!1),e}),g.disabled=d.map(function(e){return!!e.disabled}),w.stateChange(g),e.transition().call(x)}),i.dispatch.on("legendDblclick",function(e){d.forEach(function(e){e.disabled=!0}),e.disabled=!1,g.disabled=d.map(function(e){return!!e.disabled}),w.stateChange(g),x.update()}),w.on("tooltipShow",function(e){p&&S(e,N.parentNode)}),w.on("changeState",function(e){typeof e.disabled!="undefined"&&(d.forEach(function(t,n){t.disabled=e.disabled[n]}),g.disabled=e.disabled),x.update()})}),x}var t=e.models.historicalBar(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),s={top:30,right:90,bottom:50,left:90},o=e.utils.defaultColor(),u=null,a=null,f=!1,l=!0,c=!0,h=!1,p=!0,d=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" at "+t+"</p>"},v,m,g={},y=null,b="No Data Available.",w=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),E=250;n.orient("bottom").tickPadding(7),r.orient(h?"right":"left");var S=function(i,s){if(s){var o=d3.select(s).select("svg"),u=o.node()?o.attr("viewBox"):null;if(u){u=u.split(" ");var a=parseInt(o.style("width"))/u[2];i.pos[0]=i.pos[0]*a,i.pos[1]=i.pos[1]*a}}var f=i.pos[0]+(s.offsetLeft||0),l=i.pos[1]+(s.offsetTop||0),c=n.tickFormat()(t.x()(i.point,i.pointIndex)),h=r.tickFormat()(t.y()(i.point,i.pointIndex)),p=d(i.series.key,c,h,i,x);e.tooltip.show([f,l],p,null,null,s)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+s.left,e.pos[1]+s.top],w.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){w.tooltipHide(e)}),w.on("tooltipHide",function(){p&&e.tooltip.cleanup()}),x.dispatch=w,x.bars=t,x.legend=i,x.xAxis=n,x.yAxis=r,d3.rebind(x,t,"defined","isArea","x","y","size","xScale","yScale","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","id","interpolate","highlightPoint","clearHighlights","interactive"),x.options=e.utils.optionsFunc.bind(x),x.margin=function(e){return arguments.length?(s.top=typeof e.top!="undefined"?e.top:s.top,s.right=typeof e.right!="undefined"?e.right:s.right,s.bottom=typeof e.bottom!="undefined"?e.bottom:s.bottom,s.left=typeof e.left!="undefined"?e.left:s.left,x):s},x.width=function(e){return arguments.length?(u=e,x):u},x.height=function(e){return arguments.length?(a=e,x):a},x.color=function(t){return arguments.length?(o=e.utils.getColor(t),i.color(o),x):o},x.showLegend=function(e){return arguments.length?(f=e,x):f},x.showXAxis=function(e){return arguments.length?(l=e,x):l},x.showYAxis=function(e){return arguments.length?(c=e,x):c},x.rightAlignYAxis=function(e){return arguments.length?(h=e,r.orient(e?"right":"left"),x):h},x.tooltips=function(e){return arguments.length?(p=e,x):p},x.tooltipContent=function(e){return arguments.length?(d=e,x):d},x.state=function(e){return arguments.length?(g=e,x):g},x.defaultState=function(e){return arguments.length?(y=e,x):y},x.noData=function(e){return arguments.length?(b=e,x):b},x.transitionDuration=function(e){return arguments.length?(E=e,x):E},x},e.models.indentedTree=function(){"use strict";function g(e){return e.each(function(e){function k(e,t,n){d3.event.stopPropagation();if(d3.event.shiftKey&&!n)return d3.event.shiftKey=!1,e.values&&e.values.forEach(function(e){(e.values||e._values)&&k(e,0,!0)}),!0;if(!O(e))return!0;e.values?(e._values=e.values,e.values=null):(e.values=e._values,e._values=null),g.update()}function L(e){return e._values&&e._values.length?h:e.values&&e.values.length?p:""}function A(e){return e._values&&e._values.length}function O(e){var t=e.values||e._values;return t&&t.length}var t=1,n=d3.select(this),i=d3.layout.tree().children(function(e){return e.values}).size([r,f]);g.update=function(){n.transition().duration(600).call(g)},e[0]||(e[0]={key:a});var s=i.nodes(e[0]),y=d3.select(this).selectAll("div").data([[s]]),b=y.enter().append("div").attr("class","nvd3 nv-wrap nv-indentedtree"),w=b.append("table"),E=y.select("table").attr("width","100%").attr("class",c);if(o){var S=w.append("thead"),x=S.append("tr");l.forEach(function(e){x.append("th").attr("width",e.width?e.width:"10%").style("text-align",e.type=="numeric"?"right":"left").append("span").html(e.label)})}var T=E.selectAll("tbody").data(function(e){return e});T.enter().append("tbody"),t=d3.max(s,function(e){return e.depth}),i.size([r,t*f]);var N=T.selectAll("tr").data(function(e){return e.filter(function(e){return u&&!e.children?u(e):!0})},function(e,t){return e.id||e.id||++m});N.exit().remove(),N.select("img.nv-treeicon").attr("src",L).classed("folded",A);var C=N.enter().append("tr");l.forEach(function(e,t){var n=C.append("td").style("padding-left",function(e){return(t?0:e.depth*f+12+(L(e)?0:16))+"px"},"important").style("text-align",e.type=="numeric"?"right":"left");t==0&&n.append("a").text(L).classed("nv-treeicon",!0).classed("nv-folded",A).style('background', '#DDD').style('text-align','center').style('color','#000').style("width","14px").style("height","14px").style("padding","0 1px").style("display",function(e){return L(e)?"inline-block":"none"}).on("click",k),n.each(function(n){!t&&v(n)?d3.select(this).append("a").attr("href",v).attr("class",d3.functor(e.classes)).append("span"):d3.select(this).append("span"),d3.select(this).select("span").attr("class",d3.functor(e.classes)).html(function(t){return e.format?e.format(t):t[e.key]||"-"})}),e.showCount&&(n.append("span").attr("class","nv-childrenCount"),N.selectAll("span.nv-childrenCount").text(function(e){return e.values&&e.values.length||e._values&&e._values.length?"("+(e.values&&e.values.filter(function(e){return u?u(e):!0}).length||e._values&&e._values.filter(function(e){return u?u(e):!0}).length||0)+")":""}))}),N.order().on("click",function(e){d.elementClick({row:this,data:e,pos:[e.x,e.y]})}).on("dblclick",function(e){d.elementDblclick({row:this,data:e,pos:[e.x,e.y]})}).on("mouseover",function(e){d.elementMouseover({row:this,data:e,pos:[e.x,e.y]})}).on("mouseout",function(e){d.elementMouseout({row:this,data:e,pos:[e.x,e.y]})})}),g}var t={top:0,right:0,bottom:0,left:0},n=960,r=500,i=e.utils.defaultColor(),s=Math.floor(Math.random()*1e4),o=!0,u=!1,a="No Data Available.",f=20,l=[{key:"key",label:"Name",type:"text"}],c=null,h="+",p="-",d=d3.dispatch("elementClick","elementDblclick","elementMouseover","elementMouseout"),v=function(e){return e.url},m=0;return g.options=e.utils.optionsFunc.bind(g),g.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,g):t},g.width=function(e){return arguments.length?(n=e,g):n},g.height=function(e){return arguments.length?(r=e,g):r},g.color=function(t){return arguments.length?(i=e.utils.getColor(t),scatter.color(i),g):i},g.id=function(e){return arguments.length?(s=e,g):s},g.header=function(e){return arguments.length?(o=e,g):o},g.noData=function(e){return arguments.length?(a=e,g):a},g.filterZero=function(e){return arguments.length?(u=e,g):u},g.columns=function(e){return arguments.length?(l=e,g):l},g.tableClass=function(e){return arguments.length?(c=e,g):c},g.iconOpen=function(e){return arguments.length?(h=e,g):h},g.iconClose=function(e){return arguments.length?(p=e,g):p},g.getUrl=function(e){return arguments.length?(v=e,g):v},g},e.models.legend=function(){"use strict";function c(h){return h.each(function(c){var h=n-t.left-t.right,p=d3.select(this),d=p.selectAll("g.nv-legend").data([c]),v=d.enter().append("g").attr("class","nvd3 nv-legend").append("g"),m=d.select("g");d.attr("transform","translate("+t.left+","+t.top+")");var g=m.selectAll(".nv-series").data(function(e){return e}),y=g.enter().append("g").attr("class","nv-series").on("mouseover",function(e,t){l.legendMouseover(e,t)}).on("mouseout",function(e,t){l.legendMouseout(e,t)}).on("click",function(e,t){l.legendClick(e,t),a&&(f?(c.forEach(function(e){e.disabled=!0}),e.disabled=!1):(e.disabled=!e.disabled,c.every(function(e){return e.disabled})&&c.forEach(function(e){e.disabled=!1})),l.stateChange({disabled:c.map(function(e){return!!e.disabled})}))}).on("dblclick",function(e,t){l.legendDblclick(e,t),a&&(c.forEach(function(e){e.disabled=!0}),e.disabled=!1,l.stateChange({disabled:c.map(function(e){return!!e.disabled})}))});y.append("circle").style("stroke-width",2).attr("class","nv-legend-symbol").attr("r",5),y.append("text").attr("text-anchor","start").attr("class","nv-legend-text").attr("dy",".32em").attr("dx","8"),g.classed("disabled",function(e){return e.disabled}),g.exit().remove(),g.select("circle").style("fill",function(e,t){return e.color||s(e,t)}).style("stroke",function(e,t){return e.color||s(e,t)}),g.select("text").text(i);if(o){var b=[];g.each(function(t,n){var r=d3.select(this).select("text"),i;try{i=r.getComputedTextLength();if(i<=0)throw Error()}catch(s){i=e.utils.calcApproxTextWidth(r)}b.push(i+28)});var w=0,E=0,S=[];while(E<h&&w<b.length)S[w]=b[w],E+=b[w++];w===0&&(w=1);while(E>h&&w>1){S=[],w--;for(var x=0;x<b.length;x++)b[x]>(S[x%w]||0)&&(S[x%w]=b[x]);E=S.reduce(function(e,t,n,r){return e+t})}var T=[];for(var N=0,C=0;N<w;N++)T[N]=C,C+=S[N];g.attr("transform",function(e,t){return"translate("+T[t%w]+","+(5+Math.floor(t/w)*20)+")"}),u?m.attr("transform","translate("+(n-t.right-E)+","+t.top+")"):m.attr("transform","translate(0,"+t.top+")"),r=t.top+t.bottom+Math.ceil(b.length/w)*20}else{var k=5,L=5,A=0,O;g.attr("transform",function(e,r){var i=d3.select(this).select("text").node().getComputedTextLength()+28;return O=L,n<t.left+t.right+O+i&&(L=O=5,k+=20),L+=i,L>A&&(A=L),"translate("+O+","+k+")"}),m.attr("transform","translate("+(n-t.right-A)+","+t.top+")"),r=t.top+t.bottom+k+15}}),c}var t={top:5,right:0,bottom:5,left:0},n=400,r=20,i=function(e){return e.key},s=e.utils.defaultColor(),o=!0,u=!0,a=!0,f=!1,l=d3.dispatch("legendClick","legendDblclick","legendMouseover","legendMouseout","stateChange");return c.dispatch=l,c.options=e.utils.optionsFunc.bind(c),c.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,c):t},c.width=function(e){return arguments.length?(n=e,c):n},c.height=function(e){return arguments.length?(r=e,c):r},c.key=function(e){return arguments.length?(i=e,c):i},c.color=function(t){return arguments.length?(s=e.utils.getColor(t),c):s},c.align=function(e){return arguments.length?(o=e,c):o},c.rightAlign=function(e){return arguments.length?(u=e,c):u},c.updateState=function(e){return arguments.length?(a=e,c):a},c.radioButtonMode=function(e){return arguments.length?(f=e,c):f},c},e.models.line=function(){"use strict";function m(g){return g.each(function(m){var g=r-n.left-n.right,b=i-n.top-n.bottom,w=d3.select(this);c=t.xScale(),h=t.yScale(),d=d||c,v=v||h;var E=w.selectAll("g.nv-wrap.nv-line").data([m]),S=E.enter().append("g").attr("class","nvd3 nv-wrap nv-line"),T=S.append("defs"),N=S.append("g"),C=E.select("g");N.append("g").attr("class","nv-groups"),N.append("g").attr("class","nv-scatterWrap"),E.attr("transform","translate("+n.left+","+n.top+")"),t.width(g).height(b);var k=E.select(".nv-scatterWrap");k.transition().call(t),T.append("clipPath").attr("id","nv-edge-clip-"+t.id()).append("rect"),E.select("#nv-edge-clip-"+t.id()+" rect").attr("width",g).attr("height",b),C.attr("clip-path",l?"url(#nv-edge-clip-"+t.id()+")":""),k.attr("clip-path",l?"url(#nv-edge-clip-"+t.id()+")":"");var L=E.select(".nv-groups").selectAll(".nv-group").data(function(e){return e},function(e){return e.key});L.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),L.exit().remove(),L.attr("class",function(e,t){return"nv-group nv-series-"+t}).classed("hover",function(e){return e.hover}).style("fill",function(e,t){return s(e,t)}).style("stroke",function(e,t){return s(e,t)}),L.transition().style("stroke-opacity",1).style("fill-opacity",.5);var A=L.selectAll("path.nv-area").data(function(e){return f(e)?[e]:[]});A.enter().append("path").attr("class","nv-area").attr("d",function(t){return d3.svg.area().interpolate(p).defined(a).x(function(t,n){return e. | |
utils.NaNtoZero(d(o(t,n)))}).y0(function(t,n){return e.utils.NaNtoZero(v(u(t,n)))}).y1(function(e,t){return v(h.domain()[0]<=0?h.domain()[1]>=0?0:h.domain()[1]:h.domain()[0])}).apply(this,[t.values])}),L.exit().selectAll("path.nv-area").remove(),A.transition().attr("d",function(t){return d3.svg.area().interpolate(p).defined(a).x(function(t,n){return e.utils.NaNtoZero(c(o(t,n)))}).y0(function(t,n){return e.utils.NaNtoZero(h(u(t,n)))}).y1(function(e,t){return h(h.domain()[0]<=0?h.domain()[1]>=0?0:h.domain()[1]:h.domain()[0])}).apply(this,[t.values])});var O=L.selectAll("path.nv-line").data(function(e){return[e.values]});O.enter().append("path").attr("class","nv-line").attr("d",d3.svg.line().interpolate(p).defined(a).x(function(t,n){return e.utils.NaNtoZero(d(o(t,n)))}).y(function(t,n){return e.utils.NaNtoZero(v(u(t,n)))})),O.transition().attr("d",d3.svg.line().interpolate(p).defined(a).x(function(t,n){return e.utils.NaNtoZero(c(o(t,n)))}).y(function(t,n){return e.utils.NaNtoZero(h(u(t,n)))})),d=c.copy(),v=h.copy()}),m}var t=e.models.scatter(),n={top:0,right:0,bottom:0,left:0},r=960,i=500,s=e.utils.defaultColor(),o=function(e){return e.x},u=function(e){return e.y},a=function(e,t){return!isNaN(u(e,t))&&u(e,t)!==null},f=function(e){return e.area},l=!1,c,h,p="linear";t.size(16).sizeDomain([16,256]);var d,v;return m.dispatch=t.dispatch,m.scatter=t,d3.rebind(m,t,"id","interactive","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","forceX","forceY","forceSize","clipVoronoi","useVoronoi","clipRadius","padData","highlightPoint","clearHighlights"),m.options=e.utils.optionsFunc.bind(m),m.margin=function(e){return arguments.length?(n.top=typeof e.top!="undefined"?e.top:n.top,n.right=typeof e.right!="undefined"?e.right:n.right,n.bottom=typeof e.bottom!="undefined"?e.bottom:n.bottom,n.left=typeof e.left!="undefined"?e.left:n.left,m):n},m.width=function(e){return arguments.length?(r=e,m):r},m.height=function(e){return arguments.length?(i=e,m):i},m.x=function(e){return arguments.length?(o=e,t.x(e),m):o},m.y=function(e){return arguments.length?(u=e,t.y(e),m):u},m.clipEdge=function(e){return arguments.length?(l=e,m):l},m.color=function(n){return arguments.length?(s=e.utils.getColor(n),t.color(s),m):s},m.interpolate=function(e){return arguments.length?(p=e,m):p},m.defined=function(e){return arguments.length?(a=e,m):a},m.isArea=function(e){return arguments.length?(f=d3.functor(e),m):f},m},e.models.lineChart=function(){"use strict";function N(m){return m.each(function(m){var C=d3.select(this),k=this,L=(a||parseInt(C.style("width"))||960)-o.left-o.right,A=(f||parseInt(C.style("height"))||400)-o.top-o.bottom;N.update=function(){C.transition().duration(x).call(N)},N.container=this,b.disabled=m.map(function(e){return!!e.disabled});if(!w){var O;w={};for(O in b)b[O]instanceof Array?w[O]=b[O].slice(0):w[O]=b[O]}if(!m||!m.length||!m.filter(function(e){return e.values.length}).length){var M=C.selectAll(".nv-noData").data([E]);return M.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),M.attr("x",o.left+L/2).attr("y",o.top+A/2).text(function(e){return e}),N}C.selectAll(".nv-noData").remove(),g=t.xScale(),y=t.yScale();var _=C.selectAll("g.nv-wrap.nv-lineChart").data([m]),D=_.enter().append("g").attr("class","nvd3 nv-wrap nv-lineChart").append("g"),P=_.select("g");D.append("rect").style("opacity",0),D.append("g").attr("class","nv-x nv-axis"),D.append("g").attr("class","nv-y nv-axis"),D.append("g").attr("class","nv-linesWrap"),D.append("g").attr("class","nv-legendWrap"),D.append("g").attr("class","nv-interactive"),P.select("rect").attr("width",L).attr("height",A>0?A:0),l&&(i.width(L),P.select(".nv-legendWrap").datum(m).call(i),o.top!=i.height()&&(o.top=i.height(),A=(f||parseInt(C.style("height"))||400)-o.top-o.bottom),_.select(".nv-legendWrap").attr("transform","translate(0,"+ -o.top+")")),_.attr("transform","translate("+o.left+","+o.top+")"),p&&P.select(".nv-y.nv-axis").attr("transform","translate("+L+",0)"),d&&(s.width(L).height(A).margin({left:o.left,top:o.top}).svgContainer(C).xScale(g),_.select(".nv-interactive").call(s)),t.width(L).height(A).color(m.map(function(e,t){return e.color||u(e,t)}).filter(function(e,t){return!m[t].disabled}));var H=P.select(".nv-linesWrap").datum(m.filter(function(e){return!e.disabled}));H.transition().call(t),c&&(n.scale(g).ticks(L/100).tickSize(-A,0),P.select(".nv-x.nv-axis").attr("transform","translate(0,"+y.range()[0]+")"),P.select(".nv-x.nv-axis").transition().call(n)),h&&(r.scale(y).ticks(A/36).tickSize(-L,0),P.select(".nv-y.nv-axis").transition().call(r)),i.dispatch.on("stateChange",function(e){b=e,S.stateChange(b),N.update()}),s.dispatch.on("elementMousemove",function(i){t.clearHighlights();var a,f,l,c=[];m.filter(function(e,t){return e.seriesIndex=t,!e.disabled}).forEach(function(n,r){f=e.interactiveBisect(n.values,i.pointXValue,N.x()),t.highlightPoint(r,f,!0);var s=n.values[f];if(typeof s=="undefined")return;typeof a=="undefined"&&(a=s),typeof l=="undefined"&&(l=N.xScale()(N.x()(s,f))),c.push({key:n.key,value:N.y()(s,f),color:u(n,n.seriesIndex)})});if(c.length>2){var h=N.yScale().invert(i.mouseY),p=Math.abs(N.yScale().domain()[0]-N.yScale().domain()[1]),d=.03*p,g=e.nearestValueIndex(c.map(function(e){return e.value}),h,d);g!==null&&(c[g].highlight=!0)}var y=n.tickFormat()(N.x()(a,f));s.tooltip.position({left:l+o.left,top:i.mouseY+o.top}).chartContainer(k.parentNode).enabled(v).valueFormatter(function(e,t){return r.tickFormat()(e)}).data({value:y,series:c})(),s.renderGuideLine(l)}),s.dispatch.on("elementMouseout",function(e){S.tooltipHide(),t.clearHighlights()}),S.on("tooltipShow",function(e){v&&T(e,k.parentNode)}),S.on("changeState",function(e){typeof e.disabled!="undefined"&&m.length===e.disabled.length&&(m.forEach(function(t,n){t.disabled=e.disabled[n]}),b.disabled=e.disabled),N.update()})}),N}var t=e.models.line(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),s=e.interactiveGuideline(),o={top:30,right:20,bottom:50,left:60},u=e.utils.defaultColor(),a=null,f=null,l=!0,c=!0,h=!0,p=!1,d=!1,v=!0,m=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" at "+t+"</p>"},g,y,b={},w=null,E="No Data Available.",S=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),x=250;n.orient("bottom").tickPadding(7),r.orient(p?"right":"left");var T=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),a=n.tickFormat()(t.x()(i.point,i.pointIndex)),f=r.tickFormat()(t.y()(i.point,i.pointIndex)),l=m(i.series.key,a,f,i,N);e.tooltip.show([o,u],l,null,null,s)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+o.left,e.pos[1]+o.top],S.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){S.tooltipHide(e)}),S.on("tooltipHide",function(){v&&e.tooltip.cleanup()}),N.dispatch=S,N.lines=t,N.legend=i,N.xAxis=n,N.yAxis=r,N.interactiveLayer=s,d3.rebind(N,t,"defined","isArea","x","y","size","xScale","yScale","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","useVoronoi","id","interpolate"),N.options=e.utils.optionsFunc.bind(N),N.margin=function(e){return arguments.length?(o.top=typeof e.top!="undefined"?e.top:o.top,o.right=typeof e.right!="undefined"?e.right:o.right,o.bottom=typeof e.bottom!="undefined"?e.bottom:o.bottom,o.left=typeof e.left!="undefined"?e.left:o.left,N):o},N.width=function(e){return arguments.length?(a=e,N):a},N.height=function(e){return arguments.length?(f=e,N):f},N.color=function(t){return arguments.length?(u=e.utils.getColor(t),i.color(u),N):u},N.showLegend=function(e){return arguments.length?(l=e,N):l},N.showXAxis=function(e){return arguments.length?(c=e,N):c},N.showYAxis=function(e){return arguments.length?(h=e,N):h},N.rightAlignYAxis=function(e){return arguments.length?(p=e,r.orient(e?"right":"left"),N):p},N.useInteractiveGuideline=function(e){return arguments.length?(d=e,e===!0&&(N.interactive(!1),N.useVoronoi(!1)),N):d},N.tooltips=function(e){return arguments.length?(v=e,N):v},N.tooltipContent=function(e){return arguments.length?(m=e,N):m},N.state=function(e){return arguments.length?(b=e,N):b},N.defaultState=function(e){return arguments.length?(w=e,N):w},N.noData=function(e){return arguments.length?(E=e,N):E},N.transitionDuration=function(e){return arguments.length?(x=e,N):x},N},e.models.linePlusBarChart=function(){"use strict";function T(e){return e.each(function(e){var l=d3.select(this),c=this,v=(a||parseInt(l.style("width"))||960)-u.left-u.right,N=(f||parseInt(l.style("height"))||400)-u.top-u.bottom;T.update=function(){l.transition().call(T)},b.disabled=e.map(function(e){return!!e.disabled});if(!w){var C;w={};for(C in b)b[C]instanceof Array?w[C]=b[C].slice(0):w[C]=b[C]}if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var k=l.selectAll(".nv-noData").data([E]);return k.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),k.attr("x",u.left+v/2).attr("y",u.top+N/2).text(function(e){return e}),T}l.selectAll(".nv-noData").remove();var L=e.filter(function(e){return!e.disabled&&e.bar}),A=e.filter(function(e){return!e.bar});m=A.filter(function(e){return!e.disabled}).length&&A.filter(function(e){return!e.disabled})[0].values.length?t.xScale():n.xScale(),g=n.yScale(),y=t.yScale();var O=d3.select(this).selectAll("g.nv-wrap.nv-linePlusBar").data([e]),M=O.enter().append("g").attr("class","nvd3 nv-wrap nv-linePlusBar").append("g"),_=O.select("g");M.append("g").attr("class","nv-x nv-axis"),M.append("g").attr("class","nv-y1 nv-axis"),M.append("g").attr("class","nv-y2 nv-axis"),M.append("g").attr("class","nv-barsWrap"),M.append("g").attr("class","nv-linesWrap"),M.append("g").attr("class","nv-legendWrap"),p&&(o.width(v/2),_.select(".nv-legendWrap").datum(e.map(function(e){return e.originalKey=e.originalKey===undefined?e.key:e.originalKey,e.key=e.originalKey+(e.bar?" (left axis)":" (right axis)"),e})).call(o),u.top!=o.height()&&(u.top=o.height(),N=(f||parseInt(l.style("height"))||400)-u.top-u.bottom),_.select(".nv-legendWrap").attr("transform","translate("+v/2+","+ -u.top+")")),O.attr("transform","translate("+u.left+","+u.top+")"),t.width(v).height(N).color(e.map(function(e,t){return e.color||h(e,t)}).filter(function(t,n){return!e[n].disabled&&!e[n].bar})),n.width(v).height(N).color(e.map(function(e,t){return e.color||h(e,t)}).filter(function(t,n){return!e[n].disabled&&e[n].bar}));var D=_.select(".nv-barsWrap").datum(L.length?L:[{values:[]}]),P=_.select(".nv-linesWrap").datum(A[0]&&!A[0].disabled?A:[{values:[]}]);d3.transition(D).call(n),d3.transition(P).call(t),r.scale(m).ticks(v/100).tickSize(-N,0),_.select(".nv-x.nv-axis").attr("transform","translate(0,"+g.range()[0]+")"),d3.transition(_.select(".nv-x.nv-axis")).call(r),i.scale(g).ticks(N/36).tickSize(-v,0),d3.transition(_.select(".nv-y1.nv-axis")).style("opacity",L.length?1:0).call(i),s.scale(y).ticks(N/36).tickSize(L.length?0:-v,0),_.select(".nv-y2.nv-axis").style("opacity",A.length?1:0).attr("transform","translate("+v+",0)"),d3.transition(_.select(".nv-y2.nv-axis")).call(s),o.dispatch.on("stateChange",function(e){b=e,S.stateChange(b),T.update()}),S.on("tooltipShow",function(e){d&&x(e,c.parentNode)}),S.on("changeState",function(t){typeof t.disabled!="undefined"&&(e.forEach(function(e,n){e.disabled=t.disabled[n]}),b.disabled=t.disabled),T.update()})}),T}var t=e.models.line(),n=e.models.historicalBar(),r=e.models.axis(),i=e.models.axis(),s=e.models.axis(),o=e.models.legend(),u={top:30,right:60,bottom:50,left:60},a=null,f=null,l=function(e){return e.x},c=function(e){return e.y},h=e.utils.defaultColor(),p=!0,d=!0,v=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" at "+t+"</p>"},m,g,y,b={},w=null,E="No Data Available.",S=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState");n.padData(!0),t.clipEdge(!1).padData(!0),r.orient("bottom").tickPadding(7).highlightZero(!1),i.orient("left"),s.orient("right");var x=function(n,o){var u=n.pos[0]+(o.offsetLeft||0),a=n.pos[1]+(o.offsetTop||0),f=r.tickFormat()(t.x()(n.point,n.pointIndex)),l=(n.series.bar?i:s).tickFormat()(t.y()(n.point,n.pointIndex)),c=v(n.series.key,f,l,n,T);e.tooltip.show([u,a],c,n.value<0?"n":"s",null,o)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+u.left,e.pos[1]+u.top],S.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){S.tooltipHide(e)}),n.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+u.left,e.pos[1]+u.top],S.tooltipShow(e)}),n.dispatch.on("elementMouseout.tooltip",function(e){S.tooltipHide(e)}),S.on("tooltipHide",function(){d&&e.tooltip.cleanup()}),T.dispatch=S,T.legend=o,T.lines=t,T.bars=n,T.xAxis=r,T.y1Axis=i,T.y2Axis=s,d3.rebind(T,t,"defined","size","clipVoronoi","interpolate"),T.options=e.utils.optionsFunc.bind(T),T.x=function(e){return arguments.length?(l=e,t.x(e),n.x(e),T):l},T.y=function(e){return arguments.length?(c=e,t.y(e),n.y(e),T):c},T.margin=function(e){return arguments.length?(u.top=typeof e.top!="undefined"?e.top:u.top,u.right=typeof e.right!="undefined"?e.right:u.right,u.bottom=typeof e.bottom!="undefined"?e.bottom:u.bottom,u.left=typeof e.left!="undefined"?e.left:u.left,T):u},T.width=function(e){return arguments.length?(a=e,T):a},T.height=function(e){return arguments.length?(f=e,T):f},T.color=function(t){return arguments.length?(h=e.utils.getColor(t),o.color(h),T):h},T.showLegend=function(e){return arguments.length?(p=e,T):p},T.tooltips=function(e){return arguments.length?(d=e,T):d},T.tooltipContent=function(e){return arguments.length?(v=e,T):v},T.state=function(e){return arguments.length?(b=e,T):b},T.defaultState=function(e){return arguments.length?(w=e,T):w},T.noData=function(e){return arguments.length?(E=e,T):E},T},e.models.lineWithFocusChart=function(){"use strict";function k(e){return e.each(function(e){function U(e){var t=+(e=="e"),n=t?1:-1,r=M/3;return"M"+.5*n+","+r+"A6,6 0 0 "+t+" "+6.5*n+","+(r+6)+"V"+(2*r-6)+"A6,6 0 0 "+t+" "+.5*n+","+2*r+"Z"+"M"+2.5*n+","+(r+8)+"V"+(2*r-8)+"M"+4.5*n+","+(r+8)+"V"+(2*r-8)}function z(){a.empty()||a.extent(w),I.data([a.empty()?g.domain():w]).each(function(e,t){var n=g(e[0])-v.range()[0],r=v.range()[1]-g(e[1]);d3.select(this).select(".left").attr("width",n<0?0:n),d3.select(this).select(".right").attr("x",g(e[1])).attr("width",r<0?0:r)})}function W(){w=a.empty()?null:a.extent();var n=a.empty()?g.domain():a.extent();if(Math.abs(n[0]-n[1])<=1)return;T.brush({extent:n,brush:a}),z();var s=H.select(".nv-focus .nv-linesWrap").datum(e.filter(function(e){return!e.disabled}).map(function(e,r){return{key:e.key,values:e.values.filter(function(e,r){return t.x()(e,r)>=n[0]&&t.x()(e,r)<=n[1]})}}));s.transition().duration(N).call(t),H.select(".nv-focus .nv-x.nv-axis").transition().duration(N).call(r),H.select(".nv-focus .nv-y.nv-axis").transition().duration(N).call(i)}var S=d3.select(this),L=this,A=(h||parseInt(S.style("width"))||960)-f.left-f.right,O=(p||parseInt(S.style("height"))||400)-f.top-f.bottom-d,M=d-l.top-l.bottom;k.update=function(){S.transition().duration(N).call(k)},k.container=this;if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var _=S.selectAll(".nv-noData").data([x]);return _.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),_.attr("x",f.left+A/2).attr("y",f.top+O/2).text(function(e){return e}),k}S.selectAll(".nv-noData").remove(),v=t.xScale(),m=t.yScale(),g=n.xScale(),y=n.yScale();var D=S.selectAll("g.nv-wrap.nv-lineWithFocusChart").data([e]),P=D.enter().append("g").attr("class","nvd3 nv-wrap nv-lineWithFocusChart").append("g"),H=D.select("g");P.append("g").attr("class","nv-legendWrap");var B=P.append("g").attr("class","nv-focus");B.append("g").attr("class","nv-x nv-axis"),B.append("g").attr("class","nv-y nv-axis"),B.append("g").attr("class","nv-linesWrap");var j=P.append("g").attr("class","nv-context");j.append("g").attr("class","nv-x nv-axis"),j.append("g").attr("class","nv-y nv-axis"),j.append("g").attr("class","nv-linesWrap"),j.append("g").attr("class","nv-brushBackground"),j.append("g").attr("class","nv-x nv-brush"),b&&(u.width(A),H.select(".nv-legendWrap").datum(e).call(u),f.top!=u.height()&&(f.top=u.height(),O=(p||parseInt(S.style("height"))||400)-f.top-f.bottom-d),H.select(".nv-legendWrap").attr("transform","translate(0,"+ -f.top+")")),D.attr("transform","translate("+f.left+","+f.top+")"),t.width(A).height(O).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),n.defined(t.defined()).width(A).height(M).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),H.select(".nv-context").attr("transform","translate(0,"+(O+f.bottom+l.top)+")");var F=H.select(".nv-context .nv-linesWrap").datum(e.filter(function(e){return!e.disabled}));d3.transition(F).call(n),r.scale(v).ticks(A/100).tickSize(-O,0),i.scale(m).ticks(O/36).tickSize(-A,0),H.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+O+")"),a.x(g).on("brush",function(){var e=k.transitionDuration();k.transitionDuration(0),W(),k.transitionDuration(e)}),w&&a.extent(w);var I=H.select(".nv-brushBackground").selectAll("g").data([w||a.extent()]),q=I.enter().append("g");q.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",M),q.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",M);var R=H.select(".nv-x.nv-brush").call(a);R.selectAll("rect").attr("height",M),R.selectAll(".resize").append("path").attr("d",U),W(),s.scale(g).ticks(A/100).tickSize(-M,0),H.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+y.range()[0]+")"),d3.transition(H.select(".nv-context .nv-x.nv-axis")).call(s),o.scale(y).ticks(M/36).tickSize(-A,0),d3.transition(H.select(".nv-context .nv-y.nv-axis")).call(o),H.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+y.range()[0]+")"),u.dispatch.on("stateChange",function(e){k.update()}),T.on("tooltipShow",function(e){E&&C(e,L.parentNode)})}),k}var t=e.models.line(),n=e.models.line(),r=e.models.axis(),i=e.models.axis(),s=e.models.axis(),o=e.models.axis(),u=e.models.legend(),a=d3.svg.brush(),f={top:30,right:30,bottom:30,left:60},l={top:0,right:30,bottom:20,left:60},c=e.utils.defaultColor(),h=null,p=null,d=100,v,m,g,y,b=!0,w=null,E=!0,S=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" at "+t+"</p>"},x="No Data Available.",T=d3.dispatch("tooltipShow","tooltipHide","brush"),N=250;t.clipEdge(!0),n.interactive(!1),r.orient("bottom").tickPadding(5),i.orient("left"),s.orient("bottom").tickPadding(5),o.orient("left");var C=function(n,s){var o=n.pos[0]+(s.offsetLeft||0),u=n.pos[1]+(s.offsetTop||0),a=r.tickFormat()(t.x()(n.point,n.pointIndex)),f=i.tickFormat()(t.y()(n.point,n.pointIndex)),l=S(n.series.key,a,f,n,k);e.tooltip.show([o,u],l,null,null,s)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+f.left,e.pos[1]+f.top],T.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){T.tooltipHide(e)}),T.on("tooltipHide",function(){E&&e.tooltip.cleanup()}),k.dispatch=T,k.legend=u,k.lines=t,k.lines2=n,k.xAxis=r,k.yAxis=i,k.x2Axis=s,k.y2Axis=o,d3.rebind(k,t,"defined","isArea","size","xDomain","yDomain","xRange","yRange","forceX","forceY","interactive","clipEdge","clipVoronoi","id"),k.options=e.utils.optionsFunc.bind(k),k.x=function(e){return arguments.length?(t.x(e),n.x(e),k):t.x},k.y=function(e){return arguments.length?(t.y(e),n.y(e),k):t.y},k.margin=function(e){return arguments.length?(f.top=typeof e.top!="undefined"?e.top:f.top,f.right=typeof e.right!="undefined"?e.right:f.right,f.bottom=typeof e.bottom!="undefined"?e.bottom:f.bottom,f.left=typeof e.left!="undefined"?e.left:f.left,k):f},k.margin2=function(e){return arguments.length?(l=e,k):l},k.width=function(e){return arguments.length?(h=e,k):h},k.height=function(e){return arguments.length?(p=e,k):p},k.height2=function(e){return arguments.length?(d=e,k):d},k.color=function(t){return arguments.length?(c=e.utils.getColor(t),u.color(c),k):c},k.showLegend=function(e){return arguments.length?(b=e,k):b},k.tooltips=function(e){return arguments.length?(E=e,k):E},k.tooltipContent=function(e){return arguments.length?(S=e,k):S},k.interpolate=function(e){return arguments.length?(t.interpolate(e),n.interpolate(e),k):t.interpolate()},k.noData=function(e){return arguments.length?(x=e,k):x},k.xTickFormat=function(e){return arguments.length?(r.tickFormat(e),s.tickFormat(e),k):r.tickFormat()},k.yTickFormat=function(e){return arguments.length?(i.tickFormat(e),o.tickFormat(e),k):i.tickFormat()},k.brushExtent=function(e){return arguments.length?(w=e,k):w},k.transitionDuration=function(e){return arguments.length?(N=e,k):N},k},e.models.linePlusBarWithFocusChart=function(){"use strict";function B(e){return e.each(function(e){function nt(e){var t=+(e=="e"),n=t?1:-1,r=q/3;return"M"+.5*n+","+r+"A6,6 0 0 "+t+" "+6.5*n+","+(r+6)+"V"+(2*r-6)+"A6,6 0 0 "+t+" "+.5*n+","+2*r+"Z"+"M"+2.5*n+","+(r+8)+"V"+(2*r-8)+"M"+4.5*n+","+(r+8)+"V"+(2*r-8)}function rt(){h.empty()||h.extent(x),Z.data([h.empty()?k.domain():x]).each(function(e,t){var n=k(e[0])-k.range()[0],r=k.range()[1]-k(e[1]);d3.select(this).select(".left").attr("width",n<0?0:n),d3.select(this).select(".right").attr("x",k(e[1])).attr("width",r<0?0:r)})}function it(){x=h.empty()?null:h.extent(),S=h.empty()?k.domain():h.extent(),D.brush({extent:S,brush:h}),rt(),r.width(F).height(I).color(e.map(function(e,t){return e.color||w(e,t)}).filter(function(t,n){return!e[n].disabled&&e[n].bar})),t.width(F).height(I).color(e.map(function(e,t){return e.color||w(e,t)}).filter(function(t,n){return!e[n].disabled&&!e[n].bar}));var n=J.select(".nv-focus .nv-barsWrap").datum(U.length?U.map(function(e,t){return{key:e.key,values:e.values.filter(function(e,t){return r.x()(e,t)>=S[0]&&r.x()(e,t)<=S[1]})}}):[{values:[]}]),i=J.select(".nv-focus .nv-linesWrap").datum(z[0].disabled?[{values:[]}]:z.map(function(e,n){return{key:e.key,values:e.values.filter(function(e,n){return t.x()(e,n)>=S[0]&&t.x()(e,n)<=S[1]})}}));U.length?C=r.xScale():C=t.xScale(),s.scale(C).ticks(F/100).tickSize(-I,0),s.domain([Math.ceil(S[0]),Math.floor(S[1])]),J.select(".nv-x.nv-axis").transition().duration(P).call(s),n.transition().duration(P).call(r),i.transition().duration(P).call(t),J.select(".nv-focus .nv-x.nv-axis").attr("transform","translate(0,"+L.range()[0]+")"),u.scale(L).ticks(I/36).tickSize(-F,0),J.select(".nv-focus .nv-y1.nv-axis").style("opacity",U.length?1:0),a.scale(A).ticks(I/36).tickSize(U.length?0:-F,0),J.select(".nv-focus .nv-y2.nv-axis").style("opacity",z.length?1:0).attr("transform","translate("+C.range()[1]+",0)"),J.select(".nv-focus .nv-y1.nv-axis").transition().duration(P).call(u),J.select(".nv-focus .nv-y2.nv-axis").transition().duration(P).call(a)}var N=d3.select(this),j=this,F=(v||parseInt(N.style("width"))||960)-p.left-p.right,I=(m||parseInt(N.style("height"))||400)-p.top-p.bottom-g,q=g-d.top-d.bottom;B.update=function(){N.transition().duration(P).call(B)},B.container=this;if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var R=N.selectAll(".nv-noData").data([_]);return R.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),R.attr("x",p.left+F/2).attr("y",p.top+I/2).text(function(e){return e}),B}N.selectAll(".nv-noData").remove();var U=e.filter(function(e){return!e.disabled&&e.bar}),z=e.filter(function(e){return!e.bar});C=r.xScale(),k=o.scale(),L=r.yScale(),A=t.yScale(),O=i.yScale(),M=n.yScale();var W=e.filter(function(e){return!e.disabled&&e.bar}).map(function(e){return e.values.map(function(e,t){return{x:y(e,t),y:b(e,t)}})}),X=e.filter(function(e){return!e.disabled&&!e.bar}).map(function(e){return e.values.map(function(e,t){return{x:y(e,t),y:b(e,t)}})});C.range([0,F]),k.domain(d3.extent(d3.merge(W.concat(X)),function(e){return e.x})).range([0,F]);var V=N.selectAll("g.nv-wrap.nv-linePlusBar").data([e]),$=V.enter().append("g").attr("class","nvd3 nv-wrap nv-linePlusBar").append("g"),J=V.select("g");$.append("g").attr("class","nv-legendWrap");var K=$.append("g").attr("class","nv-focus");K.append("g").attr("class","nv-x nv-axis"),K.append("g").attr("class","nv-y1 nv-axis"),K.append("g").attr("class","nv-y2 nv-axis"),K.append("g").attr("class","nv-barsWrap"),K.append("g").attr("class","nv-linesWrap");var Q=$.append("g").attr("class","nv-context");Q.append("g").attr("class","nv-x nv-axis"),Q.append("g").attr("class","nv-y1 nv-axis"),Q.append("g").attr("class","nv-y2 nv-axis"),Q.append("g").attr("class","nv-barsWrap"),Q.append("g").attr("class","nv-linesWrap"),Q.append("g").attr("class","nv-brushBackground"),Q.append("g").attr("class","nv-x nv-brush"),E&&(c.width(F/2),J.select(".nv-legendWrap").datum(e.map(function(e){return e.originalKey=e.originalKey===undefined?e.key:e.originalKey,e.key=e.originalKey+(e.bar?" (left axis)":" (right axis)"),e})).call(c),p.top!=c.height()&&(p.top=c.height(),I=(m||parseInt(N.style("height"))||400)-p.top-p.bottom-g),J.select(".nv-legendWrap").attr("transform","translate("+F/2+","+ -p.top+")")),V.attr("transform","translate("+p.left+","+p.top+")"),i.width(F).height(q).color(e.map(function(e,t){return e.color||w(e,t)}).filter(function(t,n){return!e[n].disabled&&e[n].bar})),n.width(F).height(q).color(e.map(function(e,t){return e.color||w(e,t)}).filter(function(t,n){return!e[n].disabled&&!e[n].bar}));var G=J.select(".nv-context .nv-barsWrap").datum(U.length?U:[{values:[]}]),Y=J.select(".nv-context .nv-linesWrap").datum(z[0].disabled?[{values:[]}]:z);J.select(".nv-context").attr("transform","translate(0,"+(I+p.bottom+d.top)+")"),G.transition().call(i),Y.transition().call(n),h.x(k).on("brush",it),x&&h.extent(x);var Z=J.select(".nv-brushBackground").selectAll("g").data([x||h.extent()]),et=Z.enter().append("g");et.append("rect").attr("class","left").attr("x",0).attr("y",0).attr("height",q),et.append("rect").attr("class","right").attr("x",0).attr("y",0).attr("height",q);var tt=J.select(".nv-x.nv-brush").call(h);tt.selectAll("rect").attr("height",q),tt.selectAll(".resize").append("path").attr("d",nt),o.ticks(F/100).tickSize(-q,0),J.select(".nv-context .nv-x.nv-axis").attr("transform","translate(0,"+O.range()[0]+")"),J.select(".nv-context .nv-x.nv-axis").transition().call(o),f.scale(O).ticks(q/36).tickSize(-F,0),J.select(".nv-context .nv-y1.nv-axis").style("opacity",U.length?1:0).attr("transform","translate(0,"+k.range()[0]+")"),J.select(".nv-context .nv-y1.nv-axis").transition().call(f),l.scale(M).ticks(q/36).tickSize(U.length?0:-F,0),J.select(".nv-context .nv-y2.nv-axis").style("opacity",z.length?1:0).attr("transform","translate("+k.range()[1]+",0)"),J.select(".nv-context .nv-y2.nv-axis").transition().call(l),c.dispatch.on("stateChange",function(e){B.update()}),D.on("tooltipShow",function(e){T&&H(e,j.parentNode)}),it()}),B}var t=e.models.line(),n=e.models.line(),r=e.models.historicalBar(),i=e.models.historicalBar(),s=e.models.axis(),o=e.models.axis(),u=e.models.axis(),a=e.models.axis(),f=e.models.axis(),l=e.models.axis(),c=e.models.legend(),h=d3.svg.brush(),p={top:30,right:30,bottom:30,left:60},d={top:0,right:30,bottom:20,left:60},v=null,m=null,g=100,y=function(e){return e.x},b=function(e){return e.y},w=e.utils.defaultColor(),E=!0,S,x=null,T=!0,N=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" at "+t+"</p>"},C,k,L,A,O,M,_="No Data Available.",D=d3.dispatch("tooltipShow","tooltipHide","brush"),P=0;t.clipEdge(!0),n.interactive(!1),s.orient("bottom").tickPadding(5),u.orient("left"),a.orient("right"),o.orient("bottom").tickPadding(5),f.orient("left"),l.orient("right");var H=function(n,r){S&&(n.pointIndex+=Math.ceil(S[0]));var i=n.pos[0]+(r.offsetLeft||0),o=n.pos[1]+(r.offsetTop||0),f=s.tickFormat()(t.x()(n.point,n.pointIndex)),l=(n.series.bar?u:a).tickFormat()(t.y()(n.point,n.pointIndex)),c=N(n.series.key,f,l,n,B);e.tooltip.show([i,o],c,n.value<0?"n":"s",null,r)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+p.left,e.pos[1]+p.top],D.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){D.tooltipHide(e)}),r.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+p.left,e.pos[1]+p.top],D.tooltipShow(e)}),r.dispatch.on("elementMouseout.tooltip",function(e){D.tooltipHide(e)}),D.on("tooltipHide",function(){T&&e.tooltip.cleanup()}),B.dispatch=D,B.legend=c,B.lines=t,B.lines2=n,B.bars=r,B.bars2=i,B.xAxis=s,B.x2Axis=o,B.y1Axis=u,B.y2Axis=a,B.y3Axis=f,B.y4Axis=l,d3.rebind(B,t,"defined","size","clipVoronoi","interpolate"),B.options=e.utils.optionsFunc.bind(B),B.x=function(e){return arguments.length?(y=e,t.x(e),r.x(e),B):y},B.y=function(e){return arguments.length?(b=e,t.y(e),r.y(e),B):b},B.margin=function(e){return arguments.length?(p.top=typeof e.top!="undefined"?e.top:p.top,p.right=typeof e.right!="undefined"?e.right:p.right,p.bottom=typeof e.bottom!="undefined"?e.bottom:p.bottom,p.left=typeof e.left!="undefined"?e.left:p.left,B):p},B.width=function(e){return arguments.length?(v=e,B):v},B.height=function(e){return arguments.length?(m=e,B):m},B.color=function(t){return arguments.length?(w=e.utils.getColor(t),c.color(w),B):w},B.showLegend=function(e){return arguments.length?(E=e,B):E},B.tooltips=function(e){return arguments.length?(T=e,B):T},B.tooltipContent=function(e){return arguments.length?(N=e,B):N},B.noData=function(e){return arguments.length?(_=e,B):_},B.brushExtent=function(e){return arguments.length?(x=e,B):x},B},e.models.multiBar=function(){"use strict";function C(e){return e.each(function(e){var C=n-t.left-t.right,k=r-t.top-t.bottom,L=d3.select(this);d&&e.length&&(d=[{values:e[0].values.map(function(e){return{x:e.x,y:0,series:e.series,size:.01}})}]),c&&(e=d3.layout.stack().offset(h).values(function(e){return e.values}).y(a)(!e.length&&d?d:e)),e.forEach(function(e,t){e.values.forEach(function(e){e.series=t})}),c&&e[0].values.map(function(t,n){var r=0,i=0;e.map(function(e){var t=e.values[n];t.size=Math.abs(t.y),t.y<0?(t.y1=i,i-=t.size):(t.y1=t.size+r,r+=t.size)})});var A=y&&b?[]:e.map(function(e){return e.values.map(function(e,t){return{x:u(e,t),y:a(e,t),y0:e.y0,y1:e.y1}})});i.domain(y||d3.merge(A).map(function(e){return e.x})).rangeBands(w||[0,C],S),s.domain(b||d3.extent(d3.merge(A).map(function(e){return c?e.y>0?e.y1:e.y1+e.y:e.y}).concat(f))).range(E||[k,0]),i.domain()[0]===i.domain()[1]&&(i.domain()[0]?i.domain([i.domain()[0]-i.domain()[0]*.01,i.domain()[1]+i.domain()[1]*.01]):i.domain([-1,1])),s.domain()[0]===s.domain()[1]&&(s.domain()[0]?s.domain([s.domain()[0]+s.domain()[0]*.01,s.domain()[1]-s.domain()[1]*.01]):s.domain([-1,1])),T=T||i,N=N||s;var O=L.selectAll("g.nv-wrap.nv-multibar").data([e]),M=O.enter().append("g").attr("class","nvd3 nv-wrap nv-multibar"),_=M.append("defs"),D=M.append("g"),P=O.select("g");D.append("g").attr("class","nv-groups"),O.attr("transform","translate("+t.left+","+t.top+")"),_.append("clipPath").attr("id","nv-edge-clip-"+o).append("rect"),O.select("#nv-edge-clip-"+o+" rect").attr("width",C).attr("height",k),P.attr("clip-path",l?"url(#nv-edge-clip-"+o+")":"");var H=O.select(".nv-groups").selectAll(".nv-group").data(function(e){return e},function(e,t){return t});H.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),H.exit().transition().selectAll("rect.nv-bar").delay(function(t,n){return n*g/e[0].values.length}).attr("y",function(e){return c?N(e.y0):N(0)}).attr("height",0).remove(),H.attr("class",function(e,t){return"nv-group nv-series-"+t}).classed("hover",function(e){return e.hover}).style("fill",function(e,t){return p(e,t)}).style("stroke",function(e,t){return p(e,t)}),H.transition().style("stroke-opacity",1).style("fill-opacity",.75);var B=H.selectAll("rect.nv-bar").data(function(t){return d&&!e.length?d.values:t.values});B.exit().remove();var j=B.enter().append("rect").attr("class",function(e,t){return a(e,t)<0?"nv-bar negative":"nv-bar positive"}).attr("x",function(t,n,r){return c?0:r*i.rangeBand()/e.length}).attr("y",function(e){return N(c?e.y0:0)}).attr("height",0).attr("width",i.rangeBand()/(c?1:e.length)).attr("transform",function(e,t){return"translate("+i(u(e,t))+",0)"});B.style("fill",function(e,t,n){return p(e,n,t)}).style("stroke",function(e,t,n){return p(e,n,t)}).on("mouseover",function(t,n){d3.select(this).classed("hover",!0),x.elementMouseover({value:a(t,n),point:t,series:e[t.series],pos:[i(u(t,n))+i.rangeBand()*(c?e.length/2:t.series+.5)/e.length,s(a(t,n)+(c?t.y0:0))],pointIndex:n,seriesIndex:t.series,e:d3.event})}).on("mouseout",function(t,n){d3.select(this).classed("hover",!1),x.elementMouseout({value:a(t,n),point:t,series:e[t.series],pointIndex:n,seriesIndex:t.series,e:d3.event})}).on("click",function(t,n){x.elementClick({value:a(t,n),point:t,series:e[t.series],pos:[i(u(t,n))+i.rangeBand()*(c?e.length/2:t.series+.5)/e.length | |
,s(a(t,n)+(c?t.y0:0))],pointIndex:n,seriesIndex:t.series,e:d3.event}),d3.event.stopPropagation()}).on("dblclick",function(t,n){x.elementDblClick({value:a(t,n),point:t,series:e[t.series],pos:[i(u(t,n))+i.rangeBand()*(c?e.length/2:t.series+.5)/e.length,s(a(t,n)+(c?t.y0:0))],pointIndex:n,seriesIndex:t.series,e:d3.event}),d3.event.stopPropagation()}),B.attr("class",function(e,t){return a(e,t)<0?"nv-bar negative":"nv-bar positive"}).transition().attr("transform",function(e,t){return"translate("+i(u(e,t))+",0)"}),v&&(m||(m=e.map(function(){return!0})),B.style("fill",function(e,t,n){return d3.rgb(v(e,t)).darker(m.map(function(e,t){return t}).filter(function(e,t){return!m[t]})[n]).toString()}).style("stroke",function(e,t,n){return d3.rgb(v(e,t)).darker(m.map(function(e,t){return t}).filter(function(e,t){return!m[t]})[n]).toString()})),c?B.transition().delay(function(t,n){return n*g/e[0].values.length}).attr("y",function(e,t){return s(c?e.y1:0)}).attr("height",function(e,t){return Math.max(Math.abs(s(e.y+(c?e.y0:0))-s(c?e.y0:0)),1)}).attr("x",function(t,n){return c?0:t.series*i.rangeBand()/e.length}).attr("width",i.rangeBand()/(c?1:e.length)):B.transition().delay(function(t,n){return n*g/e[0].values.length}).attr("x",function(t,n){return t.series*i.rangeBand()/e.length}).attr("width",i.rangeBand()/e.length).attr("y",function(e,t){return a(e,t)<0?s(0):s(0)-s(a(e,t))<1?s(0)-1:s(a(e,t))||0}).attr("height",function(e,t){return Math.max(Math.abs(s(a(e,t))-s(0)),1)||0}),T=i.copy(),N=s.copy()}),C}var t={top:0,right:0,bottom:0,left:0},n=960,r=500,i=d3.scale.ordinal(),s=d3.scale.linear(),o=Math.floor(Math.random()*1e4),u=function(e){return e.x},a=function(e){return e.y},f=[0],l=!0,c=!1,h="zero",p=e.utils.defaultColor(),d=!1,v=null,m,g=1200,y,b,w,E,S=.1,x=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),T,N;return C.dispatch=x,C.options=e.utils.optionsFunc.bind(C),C.x=function(e){return arguments.length?(u=e,C):u},C.y=function(e){return arguments.length?(a=e,C):a},C.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,C):t},C.width=function(e){return arguments.length?(n=e,C):n},C.height=function(e){return arguments.length?(r=e,C):r},C.xScale=function(e){return arguments.length?(i=e,C):i},C.yScale=function(e){return arguments.length?(s=e,C):s},C.xDomain=function(e){return arguments.length?(y=e,C):y},C.yDomain=function(e){return arguments.length?(b=e,C):b},C.xRange=function(e){return arguments.length?(w=e,C):w},C.yRange=function(e){return arguments.length?(E=e,C):E},C.forceY=function(e){return arguments.length?(f=e,C):f},C.stacked=function(e){return arguments.length?(c=e,C):c},C.stackOffset=function(e){return arguments.length?(h=e,C):h},C.clipEdge=function(e){return arguments.length?(l=e,C):l},C.color=function(t){return arguments.length?(p=e.utils.getColor(t),C):p},C.barColor=function(t){return arguments.length?(v=e.utils.getColor(t),C):v},C.disabled=function(e){return arguments.length?(m=e,C):m},C.id=function(e){return arguments.length?(o=e,C):o},C.hideable=function(e){return arguments.length?(d=e,C):d},C.delay=function(e){return arguments.length?(g=e,C):g},C.groupSpacing=function(e){return arguments.length?(S=e,C):S},C},e.models.multiBarChart=function(){"use strict";function A(e){return e.each(function(e){var b=d3.select(this),O=this,M=(u||parseInt(b.style("width"))||960)-o.left-o.right,_=(a||parseInt(b.style("height"))||400)-o.top-o.bottom;A.update=function(){b.transition().duration(k).call(A)},A.container=this,S.disabled=e.map(function(e){return!!e.disabled});if(!x){var D;x={};for(D in S)S[D]instanceof Array?x[D]=S[D].slice(0):x[D]=S[D]}if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var P=b.selectAll(".nv-noData").data([T]);return P.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),P.attr("x",o.left+M/2).attr("y",o.top+_/2).text(function(e){return e}),A}b.selectAll(".nv-noData").remove(),w=t.xScale(),E=t.yScale();var H=b.selectAll("g.nv-wrap.nv-multiBarWithLegend").data([e]),B=H.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarWithLegend").append("g"),j=H.select("g");B.append("g").attr("class","nv-x nv-axis"),B.append("g").attr("class","nv-y nv-axis"),B.append("g").attr("class","nv-barsWrap"),B.append("g").attr("class","nv-legendWrap"),B.append("g").attr("class","nv-controlsWrap"),c&&(i.width(M-C()),t.barColor()&&e.forEach(function(e,t){e.color=d3.rgb("#ccc").darker(t*1.5).toString()}),j.select(".nv-legendWrap").datum(e).call(i),o.top!=i.height()&&(o.top=i.height(),_=(a||parseInt(b.style("height"))||400)-o.top-o.bottom),j.select(".nv-legendWrap").attr("transform","translate("+C()+","+ -o.top+")"));if(l){var F=[{key:"Grouped",disabled:t.stacked()},{key:"Stacked",disabled:!t.stacked()}];s.width(C()).color(["#444","#444","#444"]),j.select(".nv-controlsWrap").datum(F).attr("transform","translate(0,"+ -o.top+")").call(s)}H.attr("transform","translate("+o.left+","+o.top+")"),d&&j.select(".nv-y.nv-axis").attr("transform","translate("+M+",0)"),t.disabled(e.map(function(e){return e.disabled})).width(M).height(_).color(e.map(function(e,t){return e.color||f(e,t)}).filter(function(t,n){return!e[n].disabled}));var I=j.select(".nv-barsWrap").datum(e.filter(function(e){return!e.disabled}));I.transition().call(t);if(h){n.scale(w).ticks(M/100).tickSize(-_,0),j.select(".nv-x.nv-axis").attr("transform","translate(0,"+E.range()[0]+")"),j.select(".nv-x.nv-axis").transition().call(n);var q=j.select(".nv-x.nv-axis > g").selectAll("g");q.selectAll("line, text").style("opacity",1);if(m){var R=function(e,t){return"translate("+e+","+t+")"},U=5,z=17;q.selectAll("text").attr("transform",function(e,t,n){return R(0,n%2==0?U:z)});var W=d3.selectAll(".nv-x.nv-axis .nv-wrap g g text")[0].length;j.selectAll(".nv-x.nv-axis .nv-axisMaxMin text").attr("transform",function(e,t){return R(0,t===0||W%2!==0?z:U)})}v&&q.filter(function(t,n){return n%Math.ceil(e[0].values.length/(M/100))!==0}).selectAll("text, line").style("opacity",0),g&&q.selectAll(".tick text").attr("transform","rotate("+g+" 0,0)").style("text-anchor",g>0?"start":"end"),j.select(".nv-x.nv-axis").selectAll("g.nv-axisMaxMin text").style("opacity",1)}p&&(r.scale(E).ticks(_/36).tickSize(-M,0),j.select(".nv-y.nv-axis").transition().call(r)),i.dispatch.on("stateChange",function(e){S=e,N.stateChange(S),A.update()}),s.dispatch.on("legendClick",function(e,n){if(!e.disabled)return;F=F.map(function(e){return e.disabled=!0,e}),e.disabled=!1;switch(e.key){case"Grouped":t.stacked(!1);break;case"Stacked":t.stacked(!0)}S.stacked=t.stacked(),N.stateChange(S),A.update()}),N.on("tooltipShow",function(e){y&&L(e,O.parentNode)}),N.on("changeState",function(n){typeof n.disabled!="undefined"&&(e.forEach(function(e,t){e.disabled=n.disabled[t]}),S.disabled=n.disabled),typeof n.stacked!="undefined"&&(t.stacked(n.stacked),S.stacked=n.stacked),A.update()})}),A}var t=e.models.multiBar(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),s=e.models.legend(),o={top:30,right:20,bottom:50,left:60},u=null,a=null,f=e.utils.defaultColor(),l=!0,c=!0,h=!0,p=!0,d=!1,v=!0,m=!1,g=0,y=!0,b=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" on "+t+"</p>"},w,E,S={stacked:!1},x=null,T="No Data Available.",N=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),C=function(){return l?180:0},k=250;t.stacked(!1),n.orient("bottom").tickPadding(7).highlightZero(!0).showMaxMin(!1).tickFormat(function(e){return e}),r.orient(d?"right":"left").tickFormat(d3.format(",.1f")),s.updateState(!1);var L=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),a=n.tickFormat()(t.x()(i.point,i.pointIndex)),f=r.tickFormat()(t.y()(i.point,i.pointIndex)),l=b(i.series.key,a,f,i,A);e.tooltip.show([o,u],l,i.value<0?"n":"s",null,s)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+o.left,e.pos[1]+o.top],N.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){N.tooltipHide(e)}),N.on("tooltipHide",function(){y&&e.tooltip.cleanup()}),A.dispatch=N,A.multibar=t,A.legend=i,A.xAxis=n,A.yAxis=r,d3.rebind(A,t,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","clipEdge","id","stacked","stackOffset","delay","barColor","groupSpacing"),A.options=e.utils.optionsFunc.bind(A),A.margin=function(e){return arguments.length?(o.top=typeof e.top!="undefined"?e.top:o.top,o.right=typeof e.right!="undefined"?e.right:o.right,o.bottom=typeof e.bottom!="undefined"?e.bottom:o.bottom,o.left=typeof e.left!="undefined"?e.left:o.left,A):o},A.width=function(e){return arguments.length?(u=e,A):u},A.height=function(e){return arguments.length?(a=e,A):a},A.color=function(t){return arguments.length?(f=e.utils.getColor(t),i.color(f),A):f},A.showControls=function(e){return arguments.length?(l=e,A):l},A.showLegend=function(e){return arguments.length?(c=e,A):c},A.showXAxis=function(e){return arguments.length?(h=e,A):h},A.showYAxis=function(e){return arguments.length?(p=e,A):p},A.rightAlignYAxis=function(e){return arguments.length?(d=e,r.orient(e?"right":"left"),A):d},A.reduceXTicks=function(e){return arguments.length?(v=e,A):v},A.rotateLabels=function(e){return arguments.length?(g=e,A):g},A.staggerLabels=function(e){return arguments.length?(m=e,A):m},A.tooltip=function(e){return arguments.length?(b=e,A):b},A.tooltips=function(e){return arguments.length?(y=e,A):y},A.tooltipContent=function(e){return arguments.length?(b=e,A):b},A.state=function(e){return arguments.length?(S=e,A):S},A.defaultState=function(e){return arguments.length?(x=e,A):x},A.noData=function(e){return arguments.length?(T=e,A):T},A.transitionDuration=function(e){return arguments.length?(k=e,A):k},A},e.models.multiBarHorizontal=function(){"use strict";function C(e){return e.each(function(e){var i=n-t.left-t.right,y=r-t.top-t.bottom,C=d3.select(this);p&&(e=d3.layout.stack().offset("zero").values(function(e){return e.values}).y(a)(e)),e.forEach(function(e,t){e.values.forEach(function(e){e.series=t})}),p&&e[0].values.map(function(t,n){var r=0,i=0;e.map(function(e){var t=e.values[n];t.size=Math.abs(t.y),t.y<0?(t.y1=i-t.size,i-=t.size):(t.y1=r,r+=t.size)})});var k=b&&w?[]:e.map(function(e){return e.values.map(function(e,t){return{x:u(e,t),y:a(e,t),y0:e.y0,y1:e.y1}})});s.domain(b||d3.merge(k).map(function(e){return e.x})).rangeBands(E||[0,y],.1),o.domain(w||d3.extent(d3.merge(k).map(function(e){return p?e.y>0?e.y1+e.y:e.y1:e.y}).concat(f))),d&&!p?o.range(S||[o.domain()[0]<0?m:0,i-(o.domain()[1]>0?m:0)]):o.range(S||[0,i]),T=T||s,N=N||d3.scale.linear().domain(o.domain()).range([o(0),o(0)]);var L=d3.select(this).selectAll("g.nv-wrap.nv-multibarHorizontal").data([e]),A=L.enter().append("g").attr("class","nvd3 nv-wrap nv-multibarHorizontal"),O=A.append("defs"),M=A.append("g"),_=L.select("g");M.append("g").attr("class","nv-groups"),L.attr("transform","translate("+t.left+","+t.top+")");var D=L.select(".nv-groups").selectAll(".nv-group").data(function(e){return e},function(e,t){return t});D.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),D.exit().transition().style("stroke-opacity",1e-6).style("fill-opacity",1e-6).remove(),D.attr("class",function(e,t){return"nv-group nv-series-"+t}).classed("hover",function(e){return e.hover}).style("fill",function(e,t){return l(e,t)}).style("stroke",function(e,t){return l(e,t)}),D.transition().style("stroke-opacity",1).style("fill-opacity",.75);var P=D.selectAll("g.nv-bar").data(function(e){return e.values});P.exit().remove();var H=P.enter().append("g").attr("transform",function(t,n,r){return"translate("+N(p?t.y0:0)+","+(p?0:r*s.rangeBand()/e.length+s(u(t,n)))+")"});H.append("rect").attr("width",0).attr("height",s.rangeBand()/(p?1:e.length)),P.on("mouseover",function(t,n){d3.select(this).classed("hover",!0),x.elementMouseover({value:a(t,n),point:t,series:e[t.series],pos:[o(a(t,n)+(p?t.y0:0)),s(u(t,n))+s.rangeBand()*(p?e.length/2:t.series+.5)/e.length],pointIndex:n,seriesIndex:t.series,e:d3.event})}).on("mouseout",function(t,n){d3.select(this).classed("hover",!1),x.elementMouseout({value:a(t,n),point:t,series:e[t.series],pointIndex:n,seriesIndex:t.series,e:d3.event})}).on("click",function(t,n){x.elementClick({value:a(t,n),point:t,series:e[t.series],pos:[s(u(t,n))+s.rangeBand()*(p?e.length/2:t.series+.5)/e.length,o(a(t,n)+(p?t.y0:0))],pointIndex:n,seriesIndex:t.series,e:d3.event}),d3.event.stopPropagation()}).on("dblclick",function(t,n){x.elementDblClick({value:a(t,n),point:t,series:e[t.series],pos:[s(u(t,n))+s.rangeBand()*(p?e.length/2:t.series+.5)/e.length,o(a(t,n)+(p?t.y0:0))],pointIndex:n,seriesIndex:t.series,e:d3.event}),d3.event.stopPropagation()}),H.append("text"),d&&!p?(P.select("text").attr("text-anchor",function(e,t){return a(e,t)<0?"end":"start"}).attr("y",s.rangeBand()/(e.length*2)).attr("dy",".32em").text(function(e,t){return g(a(e,t))}),P.transition().select("text").attr("x",function(e,t){return a(e,t)<0?-4:o(a(e,t))-o(0)+4})):P.selectAll("text").text(""),v&&!p?(H.append("text").classed("nv-bar-label",!0),P.select("text.nv-bar-label").attr("text-anchor",function(e,t){return a(e,t)<0?"start":"end"}).attr("y",s.rangeBand()/(e.length*2)).attr("dy",".32em").text(function(e,t){return u(e,t)}),P.transition().select("text.nv-bar-label").attr("x",function(e,t){return a(e,t)<0?o(0)-o(a(e,t))+4:-4})):P.selectAll("text.nv-bar-label").text(""),P.attr("class",function(e,t){return a(e,t)<0?"nv-bar negative":"nv-bar positive"}),c&&(h||(h=e.map(function(){return!0})),P.style("fill",function(e,t,n){return d3.rgb(c(e,t)).darker(h.map(function(e,t){return t}).filter(function(e,t){return!h[t]})[n]).toString()}).style("stroke",function(e,t,n){return d3.rgb(c(e,t)).darker(h.map(function(e,t){return t}).filter(function(e,t){return!h[t]})[n]).toString()})),p?P.transition().attr("transform",function(e,t){return"translate("+o(e.y1)+","+s(u(e,t))+")"}).select("rect").attr("width",function(e,t){return Math.abs(o(a(e,t)+e.y0)-o(e.y0))}).attr("height",s.rangeBand()):P.transition().attr("transform",function(t,n){return"translate("+(a(t,n)<0?o(a(t,n)):o(0))+","+(t.series*s.rangeBand()/e.length+s(u(t,n)))+")"}).select("rect").attr("height",s.rangeBand()/e.length).attr("width",function(e,t){return Math.max(Math.abs(o(a(e,t))-o(0)),1)}),T=s.copy(),N=o.copy()}),C}var t={top:0,right:0,bottom:0,left:0},n=960,r=500,i=Math.floor(Math.random()*1e4),s=d3.scale.ordinal(),o=d3.scale.linear(),u=function(e){return e.x},a=function(e){return e.y},f=[0],l=e.utils.defaultColor(),c=null,h,p=!1,d=!1,v=!1,m=60,g=d3.format(",.2f"),y=1200,b,w,E,S,x=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout"),T,N;return C.dispatch=x,C.options=e.utils.optionsFunc.bind(C),C.x=function(e){return arguments.length?(u=e,C):u},C.y=function(e){return arguments.length?(a=e,C):a},C.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,C):t},C.width=function(e){return arguments.length?(n=e,C):n},C.height=function(e){return arguments.length?(r=e,C):r},C.xScale=function(e){return arguments.length?(s=e,C):s},C.yScale=function(e){return arguments.length?(o=e,C):o},C.xDomain=function(e){return arguments.length?(b=e,C):b},C.yDomain=function(e){return arguments.length?(w=e,C):w},C.xRange=function(e){return arguments.length?(E=e,C):E},C.yRange=function(e){return arguments.length?(S=e,C):S},C.forceY=function(e){return arguments.length?(f=e,C):f},C.stacked=function(e){return arguments.length?(p=e,C):p},C.color=function(t){return arguments.length?(l=e.utils.getColor(t),C):l},C.barColor=function(t){return arguments.length?(c=e.utils.getColor(t),C):c},C.disabled=function(e){return arguments.length?(h=e,C):h},C.id=function(e){return arguments.length?(i=e,C):i},C.delay=function(e){return arguments.length?(y=e,C):y},C.showValues=function(e){return arguments.length?(d=e,C):d},C.showBarLabels=function(e){return arguments.length?(v=e,C):v},C.valueFormat=function(e){return arguments.length?(g=e,C):g},C.valuePadding=function(e){return arguments.length?(m=e,C):m},C},e.models.multiBarHorizontalChart=function(){"use strict";function C(e){return e.each(function(e){var d=d3.select(this),m=this,k=(u||parseInt(d.style("width"))||960)-o.left-o.right,L=(a||parseInt(d.style("height"))||400)-o.top-o.bottom;C.update=function(){d.transition().duration(T).call(C)},C.container=this,b.disabled=e.map(function(e){return!!e.disabled});if(!w){var A;w={};for(A in b)b[A]instanceof Array?w[A]=b[A].slice(0):w[A]=b[A]}if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var O=d.selectAll(".nv-noData").data([E]);return O.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),O.attr("x",o.left+k/2).attr("y",o.top+L/2).text(function(e){return e}),C}d.selectAll(".nv-noData").remove(),g=t.xScale(),y=t.yScale();var M=d.selectAll("g.nv-wrap.nv-multiBarHorizontalChart").data([e]),_=M.enter().append("g").attr("class","nvd3 nv-wrap nv-multiBarHorizontalChart").append("g"),D=M.select("g");_.append("g").attr("class","nv-x nv-axis"),_.append("g").attr("class","nv-y nv-axis").append("g").attr("class","nv-zeroLine").append("line"),_.append("g").attr("class","nv-barsWrap"),_.append("g").attr("class","nv-legendWrap"),_.append("g").attr("class","nv-controlsWrap"),c&&(i.width(k-x()),t.barColor()&&e.forEach(function(e,t){e.color=d3.rgb("#ccc").darker(t*1.5).toString()}),D.select(".nv-legendWrap").datum(e).call(i),o.top!=i.height()&&(o.top=i.height(),L=(a||parseInt(d.style("height"))||400)-o.top-o.bottom),D.select(".nv-legendWrap").attr("transform","translate("+x()+","+ -o.top+")"));if(l){var P=[{key:"Grouped",disabled:t.stacked()},{key:"Stacked",disabled:!t.stacked()}];s.width(x()).color(["#444","#444","#444"]),D.select(".nv-controlsWrap").datum(P).attr("transform","translate(0,"+ -o.top+")").call(s)}M.attr("transform","translate("+o.left+","+o.top+")"),t.disabled(e.map(function(e){return e.disabled})).width(k).height(L).color(e.map(function(e,t){return e.color||f(e,t)}).filter(function(t,n){return!e[n].disabled}));var H=D.select(".nv-barsWrap").datum(e.filter(function(e){return!e.disabled}));H.transition().call(t);if(h){n.scale(g).ticks(L/24).tickSize(-k,0),D.select(".nv-x.nv-axis").transition().call(n);var B=D.select(".nv-x.nv-axis").selectAll("g");B.selectAll("line, text")}p&&(r.scale(y).ticks(k/100).tickSize(-L,0),D.select(".nv-y.nv-axis").attr("transform","translate(0,"+L+")"),D.select(".nv-y.nv-axis").transition().call(r)),D.select(".nv-zeroLine line").attr("x1",y(0)).attr("x2",y(0)).attr("y1",0).attr("y2",-L),i.dispatch.on("stateChange",function(e){b=e,S.stateChange(b),C.update()}),s.dispatch.on("legendClick",function(e,n){if(!e.disabled)return;P=P.map(function(e){return e.disabled=!0,e}),e.disabled=!1;switch(e.key){case"Grouped":t.stacked(!1);break;case"Stacked":t.stacked(!0)}b.stacked=t.stacked(),S.stateChange(b),C.update()}),S.on("tooltipShow",function(e){v&&N(e,m.parentNode)}),S.on("changeState",function(n){typeof n.disabled!="undefined"&&(e.forEach(function(e,t){e.disabled=n.disabled[t]}),b.disabled=n.disabled),typeof n.stacked!="undefined"&&(t.stacked(n.stacked),b.stacked=n.stacked),C.update()})}),C}var t=e.models.multiBarHorizontal(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend().height(30),s=e.models.legend().height(30),o={top:30,right:20,bottom:50,left:60},u=null,a=null,f=e.utils.defaultColor(),l=!0,c=!0,h=!0,p=!0,d=!1,v=!0,m=function(e,t,n,r,i){return"<h3>"+e+" - "+t+"</h3>"+"<p>"+n+"</p>"},g,y,b={stacked:d},w=null,E="No Data Available.",S=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),x=function(){return l?180:0},T=250;t.stacked(d),n.orient("left").tickPadding(5).highlightZero(!1).showMaxMin(!1).tickFormat(function(e){return e}),r.orient("bottom").tickFormat(d3.format(",.1f")),s.updateState(!1);var N=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),a=n.tickFormat()(t.x()(i.point,i.pointIndex)),f=r.tickFormat()(t.y()(i.point,i.pointIndex)),l=m(i.series.key,a,f,i,C);e.tooltip.show([o,u],l,i.value<0?"e":"w",null,s)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+o.left,e.pos[1]+o.top],S.tooltipShow(e)}),t.dispatch.on("elementMouseout.tooltip",function(e){S.tooltipHide(e)}),S.on("tooltipHide",function(){v&&e.tooltip.cleanup()}),C.dispatch=S,C.multibar=t,C.legend=i,C.xAxis=n,C.yAxis=r,d3.rebind(C,t,"x","y","xDomain","yDomain","xRange","yRange","forceX","forceY","clipEdge","id","delay","showValues","showBarLabels","valueFormat","stacked","barColor"),C.options=e.utils.optionsFunc.bind(C),C.margin=function(e){return arguments.length?(o.top=typeof e.top!="undefined"?e.top:o.top,o.right=typeof e.right!="undefined"?e.right:o.right,o.bottom=typeof e.bottom!="undefined"?e.bottom:o.bottom,o.left=typeof e.left!="undefined"?e.left:o.left,C):o},C.width=function(e){return arguments.length?(u=e,C):u},C.height=function(e){return arguments.length?(a=e,C):a},C.color=function(t){return arguments.length?(f=e.utils.getColor(t),i.color(f),C):f},C.showControls=function(e){return arguments.length?(l=e,C):l},C.showLegend=function(e){return arguments.length?(c=e,C):c},C.showXAxis=function(e){return arguments.length?(h=e,C):h},C.showYAxis=function(e){return arguments.length?(p=e,C):p},C.tooltip=function(e){return arguments.length?(m=e,C):m},C.tooltips=function(e){return arguments.length?(v=e,C):v},C.tooltipContent=function(e){return arguments.length?(m=e,C):m},C.state=function(e){return arguments.length?(b=e,C):b},C.defaultState=function(e){return arguments.length?(w=e,C):w},C.noData=function(e){return arguments.length?(E=e,C):E},C.transitionDuration=function(e){return arguments.length?(T=e,C):T},C},e.models.multiChart=function(){"use strict";function C(e){return e.each(function(e){var u=d3.select(this),f=this;C.update=function(){u.transition().call(C)},C.container=this;var k=(r||parseInt(u.style("width"))||960)-t.left-t.right,L=(i||parseInt(u.style("height"))||400)-t.top-t.bottom,A=e.filter(function(e){return!e.disabled&&e.type=="line"&&e.yAxis==1}),O=e.filter(function(e){return!e.disabled&&e.type=="line"&&e.yAxis==2}),M=e.filter(function(e){return!e.disabled&&e.type=="bar"&&e.yAxis==1}),_=e.filter(function(e){return!e.disabled&&e.type=="bar"&&e.yAxis==2}),D=e.filter(function(e){return!e.disabled&&e.type=="area"&&e.yAxis==1}),P=e.filter(function(e){return!e.disabled&&e.type=="area"&&e.yAxis==2}),H=e.filter(function(e){return!e.disabled&&e.yAxis==1}).map(function(e){return e.values.map(function(e,t){return{x:e.x,y:e.y}})}),B=e.filter(function(e){return!e.disabled&&e.yAxis==2}).map(function(e){return e.values.map(function(e,t){return{x:e.x,y:e.y}})});a.domain(d3.extent(d3.merge(H.concat(B)),function(e){return e.x})).range([0,k]);var j=u.selectAll("g.wrap.multiChart").data([e]),F=j.enter().append("g").attr("class","wrap nvd3 multiChart").append("g");F.append("g").attr("class","x axis"),F.append("g").attr("class","y1 axis"),F.append("g").attr("class","y2 axis"),F.append("g").attr("class","lines1Wrap"),F.append("g").attr("class","lines2Wrap"),F.append("g").attr("class","bars1Wrap"),F.append("g").attr("class","bars2Wrap"),F.append("g").attr("class","stack1Wrap"),F.append("g").attr("class","stack2Wrap"),F.append("g").attr("class","legendWrap");var I=j.select("g");s&&(x.width(k/2),I.select(".legendWrap").datum(e.map(function(e){return e.originalKey=e.originalKey===undefined?e.key:e.originalKey,e.key=e.originalKey+(e.yAxis==1?"":" (right axis)"),e})).call(x),t.top!=x.height()&&(t.top=x.height(),L=(i||parseInt(u.style("height"))||400)-t.top-t.bottom),I.select(".legendWrap").attr("transform","translate("+k/2+","+ -t.top+")")),d.width(k).height(L).interpolate("monotone").color(e.map(function(e,t){return e.color||n[t%n.length]}).filter(function(t,n){return!e[n].disabled&&e[n].yAxis==1&&e[n].type=="line"})),v.width(k).height(L).interpolate("monotone").color(e.map(function(e,t){return e.color||n[t%n.length]}).filter(function(t,n){return!e[n].disabled&&e[n].yAxis==2&&e[n].type=="line"})),m.width(k).height(L).color(e.map(function(e,t){return e.color||n[t%n.length]}).filter(function(t,n){return!e[n].disabled&&e[n].yAxis==1&&e[n].type=="bar"})),g.width(k).height(L).color(e.map(function(e,t){return e.color||n[t%n.length]}).filter(function(t,n){return!e[n].disabled&&e[n].yAxis==2&&e[n].type=="bar"})),y.width(k).height(L).color(e.map(function(e,t){return e.color||n[t%n.length]}).filter(function(t,n){return!e[n].disabled&&e[n].yAxis==1&&e[n].type=="area"})),b.width(k).height(L).color(e.map(function(e,t){return e.color||n[t%n.length]}).filter(function(t,n){return!e[n].disabled&&e[n].yAxis==2&&e[n].type=="area"})),I.attr("transform","translate("+t.left+","+t.top+")");var q=I.select(".lines1Wrap").datum(A),R=I.select(".bars1Wrap").datum(M),U=I.select(".stack1Wrap").datum(D),z=I.select(".lines2Wrap").datum(O),W=I.select(".bars2Wrap").datum(_),X=I.select(".stack2Wrap").datum(P),V=D.length?D.map(function(e){return e.values}).reduce(function(e,t){return e.map(function(e,n){return{x:e.x,y:e.y+t[n].y}})}).concat([{x:0,y:0}]):[],$=P.length?P.map(function(e){return e.values}).reduce(function(e,t){return e.map(function(e,n){return{x:e.x,y:e.y+t[n].y}})}).concat([{x:0,y:0}]):[];h.domain(l||d3.extent(d3.merge(H).concat(V),function(e){return e.y})).range([0,L]),p.domain(c||d3.extent(d3.merge(B).concat($),function(e){return e.y})).range([0,L]),d.yDomain(h.domain()),m.yDomain(h.domain()),y.yDomain(h.domain()),v.yDomain(p.domain()),g.yDomain(p.domain()),b.yDomain(p.domain()),D.length&&d3.transition(U).call(y),P.length&&d3.transition(X).call(b),M.length&&d3.transition(R).call(m),_.length&&d3.transition(W).call(g),A.length&&d3.transition(q).call(d),O.length&&d3.transition(z).call(v),w.ticks(k/100).tickSize(-L,0),I.select(".x.axis").attr("transform","translate(0,"+L+")"),d3.transition(I.select(".x.axis")).call(w),E.ticks(L/36).tickSize(-k,0),d3.transition(I.select(".y1.axis")).call(E),S.ticks(L/36).tickSize(-k,0),d3.transition(I.select(".y2.axis")).call(S),I.select(".y2.axis").style("opacity",B.length?1:0).attr("transform","translate("+a.range()[1]+",0)"),x.dispatch.on("stateChange",function(e){C.update()}),T.on("tooltipShow",function(e){o&&N(e,f.parentNode)})}),C}var t={top:30,right:20,bottom:50,left:60},n=d3.scale.category20().range(),r=null,i=null,s=!0,o=!0,u=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" at "+t+"</p>"},a,f,l,c,a=d3.scale.linear(),h=d3.scale.linear(),p=d3.scale.linear(),d=e.models.line().yScale(h),v=e.models.line().yScale(p),m=e.models.multiBar().stacked(!1).yScale(h),g=e.models.multiBar().stacked(!1).yScale(p),y=e.models.stackedArea().yScale(h),b=e.models.stackedArea().yScale(p),w=e.models.axis().scale(a).orient("bottom").tickPadding(5),E=e.models.axis().scale(h).orient("left"),S=e.models.axis().scale(p).orient("right"),x=e.models.legend().height(30),T=d3.dispatch("tooltipShow","tooltipHide"),N=function(t,n){var r=t.pos[0]+(n.offsetLeft||0),i=t.pos[1]+(n.offsetTop||0),s=w.tickFormat()(d.x()(t.point,t.pointIndex)),o=(t.series.yAxis==2?S:E).tickFormat()(d.y()(t.point,t.pointIndex)),a=u(t.series.key,s,o,t,C);e.tooltip.show([r,i],a,undefined,undefined,n.offsetParent)};return d.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),d.dispatch.on("elementMouseout.tooltip",function(e){T.tooltipHide(e)}),v.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),v.dispatch.on("elementMouseout.tooltip",function(e){T.tooltipHide(e)}),m.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),m.dispatch.on("elementMouseout.tooltip",function(e){T.tooltipHide(e)}),g.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),g.dispatch.on("elementMouseout.tooltip",function(e){T.tooltipHide(e)}),y.dispatch.on("tooltipShow",function(e){if(!Math.round(y.y()(e.point)*100))return setTimeout(function(){d3.selectAll(".point.hover").classed("hover",!1)},0),!1;e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),y.dispatch.on("tooltipHide",function(e){T.tooltipHide(e)}),b.dispatch.on("tooltipShow",function(e){if(!Math.round(b.y()(e.point)*100))return setTimeout(function(){d3.selectAll(".point.hover").classed("hover",!1)},0),!1;e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),b.dispatch.on("tooltipHide",function(e){T.tooltipHide(e)}),d.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),d.dispatch.on("elementMouseout.tooltip",function(e){T.tooltipHide(e)}),v.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],T.tooltipShow(e)}),v.dispatch.on("elementMouseout.tooltip",function(e){T.tooltipHide(e)}),T.on("tooltipHide",function(){o&&e.tooltip.cleanup()}),C.dispatch=T,C.lines1=d,C.lines2=v,C.bars1=m,C.bars2=g,C.stack1=y,C.stack2=b,C.xAxis=w,C.yAxis1=E,C.yAxis2=S,C.options=e.utils.optionsFunc.bind(C),C.x=function(e){return arguments.length?(getX=e,d.x(e),m.x(e),C):getX},C.y=function(e){return arguments.length?(getY=e,d.y(e),m.y(e),C):getY},C.yDomain1=function(e){return arguments.length?(l=e,C):l},C.yDomain2=function(e){return arguments.length?(c=e,C):c},C.margin=function(e){return arguments.length?(t=e,C):t},C.width=function(e){return arguments.length?(r=e,C):r},C.height=function(e){return arguments.length?(i=e,C):i},C.color=function(e){return arguments.length?(n=e,x.color(e),C):n},C.showLegend=function(e){return arguments.length?(s=e,C):s},C.tooltips=function(e){return arguments.length?(o=e,C):o},C.tooltipContent=function(e){return arguments.length?(u=e,C):u},C},e.models.ohlcBar=function(){"use strict";function x(e){return e.each(function(e){var g=n-t.left-t.right,x=r-t.top-t.bottom,T=d3.select(this);s.domain(y||d3.extent(e[0].values.map(u).concat(p))),v?s.range(w||[g*.5/e[0].values.length,g*(e[0].values.length-.5)/e[0].values.length]):s.range(w||[0,g]),o.domain(b||[d3.min(e[0].values.map(h).concat(d)),d3.max(e[0].values.map(c).concat(d))]).range(E||[x,0]),s.domain()[0]===s.domain()[1]&&(s.domain()[0]?s.domain([s.domain()[0]-s.domain()[0]*.01,s.domain()[1]+s.domain()[1]*.01]):s.domain([-1,1])),o.domain()[0]===o.domain()[1]&&(o.domain()[0]?o.domain([o.domain()[0]+o.domain()[0]*.01,o.domain()[1]-o.domain()[1]*.01]):o.domain([-1,1]));var N=d3.select(this).selectAll("g.nv-wrap.nv-ohlcBar").data([e[0].values]),C=N.enter().append("g").attr("class","nvd3 nv-wrap nv-ohlcBar"),k=C.append("defs"),L=C.append("g"),A=N.select("g");L.append("g").attr("class","nv-ticks"),N.attr("transform","translate("+t.left+","+t.top+")"),T.on("click",function(e,t){S.chartClick({data:e,index:t,pos:d3.event,id:i})}),k.append("clipPath").attr("id","nv-chart-clip-path-"+i).append("rect"),N.select("#nv-chart-clip-path-"+i+" rect").attr("width",g).attr("height",x),A.attr("clip-path",m?"url(#nv-chart-clip-path-"+i+")":"");var O=N.select(".nv-ticks").selectAll(".nv-tick").data(function(e){return e});O.exit().remove();var M=O.enter().append("path").attr("class",function(e,t,n){return(f(e,t)>l(e,t)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+t}).attr("d",function(t,n){var r=g/e[0].values.length*.9;return"m0,0l0,"+(o(f(t,n))-o(c(t,n)))+"l"+ -r/2+",0l"+r/2+",0l0,"+(o(h(t,n))-o(f(t,n)))+"l0,"+(o(l(t,n))-o(h(t,n)))+"l"+r/2+",0l"+ -r/2+",0z"}).attr("transform",function(e,t){return"translate("+s(u(e,t))+","+o(c(e,t))+")"}).on("mouseover",function(t,n){d3.select(this).classed("hover",!0),S.elementMouseover({point:t,series:e[0],pos:[s(u(t,n)),o(a(t,n))],pointIndex:n,seriesIndex:0,e:d3.event})}).on("mouseout",function(t,n){d3.select(this).classed("hover",!1),S.elementMouseout({point:t,series:e[0],pointIndex:n,seriesIndex:0,e:d3.event})}).on("click",function(e,t){S.elementClick({value:a(e,t),data:e,index:t,pos:[s(u(e,t)),o(a(e,t))],e:d3.event,id:i}),d3.event.stopPropagation()}).on("dblclick",function(e,t){S.elementDblClick({value:a(e,t),data:e,index:t,pos:[s(u(e,t)),o(a(e,t))],e:d3.event,id:i}),d3.event.stopPropagation()});O.attr("class",function(e,t,n){return(f(e,t)>l(e,t)?"nv-tick negative":"nv-tick positive")+" nv-tick-"+n+"-"+t}),d3.transition(O).attr("transform",function(e,t){return"translate("+s(u(e,t))+","+o(c(e,t))+")"}).attr("d",function(t,n){var r=g/e[0].values.length*.9;return"m0,0l0,"+(o(f(t,n))-o(c(t,n)))+"l"+ -r/2+",0l"+r/2+",0l0,"+(o(h(t,n))-o(f(t,n)))+"l0,"+(o(l(t,n))-o(h(t,n)))+"l"+r/2+",0l"+ -r/2+",0z"})}),x}var t={top:0 | |
,right:0,bottom:0,left:0},n=960,r=500,i=Math.floor(Math.random()*1e4),s=d3.scale.linear(),o=d3.scale.linear(),u=function(e){return e.x},a=function(e){return e.y},f=function(e){return e.open},l=function(e){return e.close},c=function(e){return e.high},h=function(e){return e.low},p=[],d=[],v=!1,m=!0,g=e.utils.defaultColor(),y,b,w,E,S=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout");return x.dispatch=S,x.options=e.utils.optionsFunc.bind(x),x.x=function(e){return arguments.length?(u=e,x):u},x.y=function(e){return arguments.length?(a=e,x):a},x.open=function(e){return arguments.length?(f=e,x):f},x.close=function(e){return arguments.length?(l=e,x):l},x.high=function(e){return arguments.length?(c=e,x):c},x.low=function(e){return arguments.length?(h=e,x):h},x.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,x):t},x.width=function(e){return arguments.length?(n=e,x):n},x.height=function(e){return arguments.length?(r=e,x):r},x.xScale=function(e){return arguments.length?(s=e,x):s},x.yScale=function(e){return arguments.length?(o=e,x):o},x.xDomain=function(e){return arguments.length?(y=e,x):y},x.yDomain=function(e){return arguments.length?(b=e,x):b},x.xRange=function(e){return arguments.length?(w=e,x):w},x.yRange=function(e){return arguments.length?(E=e,x):E},x.forceX=function(e){return arguments.length?(p=e,x):p},x.forceY=function(e){return arguments.length?(d=e,x):d},x.padData=function(e){return arguments.length?(v=e,x):v},x.clipEdge=function(e){return arguments.length?(m=e,x):m},x.color=function(t){return arguments.length?(g=e.utils.getColor(t),x):g},x.id=function(e){return arguments.length?(i=e,x):i},x},e.models.pie=function(){"use strict";function S(e){return e.each(function(e){function q(e){var t=(e.startAngle+e.endAngle)*90/Math.PI-90;return t>90?t-180:t}function R(e){e.endAngle=isNaN(e.endAngle)?0:e.endAngle,e.startAngle=isNaN(e.startAngle)?0:e.startAngle,m||(e.innerRadius=0);var t=d3.interpolate(this._current,e);return this._current=t(0),function(e){return A(t(e))}}function U(e){e.innerRadius=0;var t=d3.interpolate({startAngle:0,endAngle:0},e);return function(e){return A(t(e))}}var o=n-t.left-t.right,f=r-t.top-t.bottom,S=Math.min(o,f)/2,x=S-S/5,T=d3.select(this),N=T.selectAll(".nv-wrap.nv-pie").data(e),C=N.enter().append("g").attr("class","nvd3 nv-wrap nv-pie nv-chart-"+u),k=C.append("g"),L=N.select("g");k.append("g").attr("class","nv-pie"),k.append("g").attr("class","nv-pieLabels"),N.attr("transform","translate("+t.left+","+t.top+")"),L.select(".nv-pie").attr("transform","translate("+o/2+","+f/2+")"),L.select(".nv-pieLabels").attr("transform","translate("+o/2+","+f/2+")"),T.on("click",function(e,t){E.chartClick({data:e,index:t,pos:d3.event,id:u})});var A=d3.svg.arc().outerRadius(x);y&&A.startAngle(y),b&&A.endAngle(b),m&&A.innerRadius(S*w);var O=d3.layout.pie().sort(null).value(function(e){return e.disabled?0:s(e)}),M=N.select(".nv-pie").selectAll(".nv-slice").data(O),_=N.select(".nv-pieLabels").selectAll(".nv-label").data(O);M.exit().remove(),_.exit().remove();var D=M.enter().append("g").attr("class","nv-slice").on("mouseover",function(e,t){d3.select(this).classed("hover",!0),E.elementMouseover({label:i(e.data),value:s(e.data),point:e.data,pointIndex:t,pos:[d3.event.pageX,d3.event.pageY],id:u})}).on("mouseout",function(e,t){d3.select(this).classed("hover",!1),E.elementMouseout({label:i(e.data),value:s(e.data),point:e.data,index:t,id:u})}).on("click",function(e,t){E.elementClick({label:i(e.data),value:s(e.data),point:e.data,index:t,pos:d3.event,id:u}),d3.event.stopPropagation()}).on("dblclick",function(e,t){E.elementDblClick({label:i(e.data),value:s(e.data),point:e.data,index:t,pos:d3.event,id:u}),d3.event.stopPropagation()});M.attr("fill",function(e,t){return a(e,t)}).attr("stroke",function(e,t){return a(e,t)});var P=D.append("path").each(function(e){this._current=e});M.select("path").transition().attr("d",A).attrTween("d",R);if(l){var H=d3.svg.arc().innerRadius(0);c&&(H=A),h&&(H=d3.svg.arc().outerRadius(A.outerRadius())),_.enter().append("g").classed("nv-label",!0).each(function(e,t){var n=d3.select(this);n.attr("transform",function(e){if(g){e.outerRadius=x+10,e.innerRadius=x+15;var t=(e.startAngle+e.endAngle)/2*(180/Math.PI);return(e.startAngle+e.endAngle)/2<Math.PI?t-=90:t+=90,"translate("+H.centroid(e)+") rotate("+t+")"}return e.outerRadius=S+10,e.innerRadius=S+15,"translate("+H.centroid(e)+")"}),n.append("rect").style("stroke","#fff").style("fill","#fff").attr("rx",3).attr("ry",3),n.append("text").style("text-anchor",g?(e.startAngle+e.endAngle)/2<Math.PI?"start":"end":"middle").style("fill","#000")});var B={},j=14,F=140,I=function(e){return Math.floor(e[0]/F)*F+","+Math.floor(e[1]/j)*j};_.transition().attr("transform",function(e){if(g){e.outerRadius=x+10,e.innerRadius=x+15;var t=(e.startAngle+e.endAngle)/2*(180/Math.PI);return(e.startAngle+e.endAngle)/2<Math.PI?t-=90:t+=90,"translate("+H.centroid(e)+") rotate("+t+")"}e.outerRadius=S+10,e.innerRadius=S+15;var n=H.centroid(e),r=I(n);return B[r]&&(n[1]-=j),B[I(n)]=!0,"translate("+n+")"}),_.select(".nv-label text").style("text-anchor",g?(d.startAngle+d.endAngle)/2<Math.PI?"start":"end":"middle").text(function(e,t){var n=(e.endAngle-e.startAngle)/(2*Math.PI),r={key:i(e.data),value:s(e.data),percent:d3.format("%")(n)};return e.value&&n>v?r[p]:""})}}),S}var t={top:0,right:0,bottom:0,left:0},n=500,r=500,i=function(e){return e.x},s=function(e){return e.y},o=function(e){return e.description},u=Math.floor(Math.random()*1e4),a=e.utils.defaultColor(),f=d3.format(",.2f"),l=!0,c=!0,h=!1,p="key",v=.02,m=!1,g=!1,y=!1,b=!1,w=.5,E=d3.dispatch("chartClick","elementClick","elementDblClick","elementMouseover","elementMouseout");return S.dispatch=E,S.options=e.utils.optionsFunc.bind(S),S.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,S):t},S.width=function(e){return arguments.length?(n=e,S):n},S.height=function(e){return arguments.length?(r=e,S):r},S.values=function(t){return e.log("pie.values() is no longer supported."),S},S.x=function(e){return arguments.length?(i=e,S):i},S.y=function(e){return arguments.length?(s=d3.functor(e),S):s},S.description=function(e){return arguments.length?(o=e,S):o},S.showLabels=function(e){return arguments.length?(l=e,S):l},S.labelSunbeamLayout=function(e){return arguments.length?(g=e,S):g},S.donutLabelsOutside=function(e){return arguments.length?(h=e,S):h},S.pieLabelsOutside=function(e){return arguments.length?(c=e,S):c},S.labelType=function(e){return arguments.length?(p=e,p=p||"key",S):p},S.donut=function(e){return arguments.length?(m=e,S):m},S.donutRatio=function(e){return arguments.length?(w=e,S):w},S.startAngle=function(e){return arguments.length?(y=e,S):y},S.endAngle=function(e){return arguments.length?(b=e,S):b},S.id=function(e){return arguments.length?(u=e,S):u},S.color=function(t){return arguments.length?(a=e.utils.getColor(t),S):a},S.valueFormat=function(e){return arguments.length?(f=e,S):f},S.labelThreshold=function(e){return arguments.length?(v=e,S):v},S},e.models.pieChart=function(){"use strict";function v(e){return e.each(function(e){var u=d3.select(this),a=this,f=(i||parseInt(u.style("width"))||960)-r.left-r.right,d=(s||parseInt(u.style("height"))||400)-r.top-r.bottom;v.update=function(){u.transition().call(v)},v.container=this,l.disabled=e.map(function(e){return!!e.disabled});if(!c){var m;c={};for(m in l)l[m]instanceof Array?c[m]=l[m].slice(0):c[m]=l[m]}if(!e||!e.length){var g=u.selectAll(".nv-noData").data([h]);return g.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),g.attr("x",r.left+f/2).attr("y",r.top+d/2).text(function(e){return e}),v}u.selectAll(".nv-noData").remove();var y=u.selectAll("g.nv-wrap.nv-pieChart").data([e]),b=y.enter().append("g").attr("class","nvd3 nv-wrap nv-pieChart").append("g"),w=y.select("g");b.append("g").attr("class","nv-pieWrap"),b.append("g").attr("class","nv-legendWrap"),o&&(n.width(f).key(t.x()),y.select(".nv-legendWrap").datum(e).call(n),r.top!=n.height()&&(r.top=n.height(),d=(s||parseInt(u.style("height"))||400)-r.top-r.bottom),y.select(".nv-legendWrap").attr("transform","translate(0,"+ -r.top+")")),y.attr("transform","translate("+r.left+","+r.top+")"),t.width(f).height(d);var E=w.select(".nv-pieWrap").datum([e]);d3.transition(E).call(t),n.dispatch.on("stateChange",function(e){l=e,p.stateChange(l),v.update()}),t.dispatch.on("elementMouseout.tooltip",function(e){p.tooltipHide(e)}),p.on("changeState",function(t){typeof t.disabled!="undefined"&&(e.forEach(function(e,n){e.disabled=t.disabled[n]}),l.disabled=t.disabled),v.update()})}),v}var t=e.models.pie(),n=e.models.legend(),r={top:30,right:20,bottom:20,left:20},i=null,s=null,o=!0,u=e.utils.defaultColor(),a=!0,f=function(e,t,n,r){return"<h3>"+e+"</h3>"+"<p>"+t+"</p>"},l={},c=null,h="No Data Available.",p=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),d=function(n,r){var i=t.description()(n.point)||t.x()(n.point),s=n.pos[0]+(r&&r.offsetLeft||0),o=n.pos[1]+(r&&r.offsetTop||0),u=t.valueFormat()(t.y()(n.point)),a=f(i,u,n,v);e.tooltip.show([s,o],a,n.value<0?"n":"s",null,r)};return t.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+r.left,e.pos[1]+r.top],p.tooltipShow(e)}),p.on("tooltipShow",function(e){a&&d(e)}),p.on("tooltipHide",function(){a&&e.tooltip.cleanup()}),v.legend=n,v.dispatch=p,v.pie=t,d3.rebind(v,t,"valueFormat","values","x","y","description","id","showLabels","donutLabelsOutside","pieLabelsOutside","labelType","donut","donutRatio","labelThreshold"),v.options=e.utils.optionsFunc.bind(v),v.margin=function(e){return arguments.length?(r.top=typeof e.top!="undefined"?e.top:r.top,r.right=typeof e.right!="undefined"?e.right:r.right,r.bottom=typeof e.bottom!="undefined"?e.bottom:r.bottom,r.left=typeof e.left!="undefined"?e.left:r.left,v):r},v.width=function(e){return arguments.length?(i=e,v):i},v.height=function(e){return arguments.length?(s=e,v):s},v.color=function(r){return arguments.length?(u=e.utils.getColor(r),n.color(u),t.color(u),v):u},v.showLegend=function(e){return arguments.length?(o=e,v):o},v.tooltips=function(e){return arguments.length?(a=e,v):a},v.tooltipContent=function(e){return arguments.length?(f=e,v):f},v.state=function(e){return arguments.length?(l=e,v):l},v.defaultState=function(e){return arguments.length?(c=e,v):c},v.noData=function(e){return arguments.length?(h=e,v):h},v},e.models.scatter=function(){"use strict";function I(q){return q.each(function(I){function Q(){if(!g)return!1;var e,i=d3.merge(I.map(function(e,t){return e.values.map(function(e,n){var r=f(e,n),i=l(e,n);return[o(r)+Math.random()*1e-7,u(i)+Math.random()*1e-7,t,n,e]}).filter(function(e,t){return b(e[4],t)})}));if(D===!0){if(x){var a=X.select("defs").selectAll(".nv-point-clips").data([s]).enter();a.append("clipPath").attr("class","nv-point-clips").attr("id","nv-points-clip-"+s);var c=X.select("#nv-points-clip-"+s).selectAll("circle").data(i);c.enter().append("circle").attr("r",T),c.exit().remove(),c.attr("cx",function(e){return e[0]}).attr("cy",function(e){return e[1]}),X.select(".nv-point-paths").attr("clip-path","url(#nv-points-clip-"+s+")")}i.length&&(i.push([o.range()[0]-20,u.range()[0]-20,null,null]),i.push([o.range()[1]+20,u.range()[1]+20,null,null]),i.push([o.range()[0]-20,u.range()[0]+20,null,null]),i.push([o.range()[1]+20,u.range()[1]-20,null,null]));var h=d3.geom.polygon([[-10,-10],[-10,r+10],[n+10,r+10],[n+10,-10]]),p=d3.geom.voronoi(i).map(function(e,t){return{data:h.clip(e),series:i[t][2],point:i[t][3]}}),d=X.select(".nv-point-paths").selectAll("path").data(p);d.enter().append("path").attr("class",function(e,t){return"nv-path-"+t}),d.exit().remove(),d.attr("d",function(e){return e.data.length===0?"M 0 0":"M"+e.data.join("L")+"Z"});var v=function(e,n){if(F)return 0;var r=I[e.series];if(typeof r=="undefined")return;var i=r.values[e.point];n({point:i,series:r,pos:[o(f(i,e.point))+t.left,u(l(i,e.point))+t.top],seriesIndex:e.series,pointIndex:e.point})};d.on("click",function(e){v(e,_.elementClick)}).on("mouseover",function(e){v(e,_.elementMouseover)}).on("mouseout",function(e,t){v(e,_.elementMouseout)})}else X.select(".nv-groups").selectAll(".nv-group").selectAll(".nv-point").on("click",function(e,n){if(F||!I[e.series])return 0;var r=I[e.series],i=r.values[n];_.elementClick({point:i,series:r,pos:[o(f(i,n))+t.left,u(l(i,n))+t.top],seriesIndex:e.series,pointIndex:n})}).on("mouseover",function(e,n){if(F||!I[e.series])return 0;var r=I[e.series],i=r.values[n];_.elementMouseover({point:i,series:r,pos:[o(f(i,n))+t.left,u(l(i,n))+t.top],seriesIndex:e.series,pointIndex:n})}).on("mouseout",function(e,t){if(F||!I[e.series])return 0;var n=I[e.series],r=n.values[t];_.elementMouseout({point:r,series:n,seriesIndex:e.series,pointIndex:t})});F=!1}var q=n-t.left-t.right,R=r-t.top-t.bottom,U=d3.select(this);I.forEach(function(e,t){e.values.forEach(function(e){e.series=t})});var W=N&&C&&A?[]:d3.merge(I.map(function(e){return e.values.map(function(e,t){return{x:f(e,t),y:l(e,t),size:c(e,t)}})}));o.domain(N||d3.extent(W.map(function(e){return e.x}).concat(d))),w&&I[0]?o.range(k||[(q*E+q)/(2*I[0].values.length),q-q*(1+E)/(2*I[0].values.length)]):o.range(k||[0,q]),u.domain(C||d3.extent(W.map(function(e){return e.y}).concat(v))).range(L||[R,0]),a.domain(A||d3.extent(W.map(function(e){return e.size}).concat(m))).range(O||[16,256]);if(o.domain()[0]===o.domain()[1]||u.domain()[0]===u.domain()[1])M=!0;o.domain()[0]===o.domain()[1]&&(o.domain()[0]?o.domain([o.domain()[0]-o.domain()[0]*.01,o.domain()[1]+o.domain()[1]*.01]):o.domain([-1,1])),u.domain()[0]===u.domain()[1]&&(u.domain()[0]?u.domain([u.domain()[0]-u.domain()[0]*.01,u.domain()[1]+u.domain()[1]*.01]):u.domain([-1,1])),isNaN(o.domain()[0])&&o.domain([-1,1]),isNaN(u.domain()[0])&&u.domain([-1,1]),P=P||o,H=H||u,B=B||a;var X=U.selectAll("g.nv-wrap.nv-scatter").data([I]),V=X.enter().append("g").attr("class","nvd3 nv-wrap nv-scatter nv-chart-"+s+(M?" nv-single-point":"")),$=V.append("defs"),J=V.append("g"),K=X.select("g");J.append("g").attr("class","nv-groups"),J.append("g").attr("class","nv-point-paths"),X.attr("transform","translate("+t.left+","+t.top+")"),$.append("clipPath").attr("id","nv-edge-clip-"+s).append("rect"),X.select("#nv-edge-clip-"+s+" rect").attr("width",q).attr("height",R>0?R:0),K.attr("clip-path",S?"url(#nv-edge-clip-"+s+")":""),F=!0;var G=X.select(".nv-groups").selectAll(".nv-group").data(function(e){return e},function(e){return e.key});G.enter().append("g").style("stroke-opacity",1e-6).style("fill-opacity",1e-6),G.exit().remove(),G.attr("class",function(e,t){return"nv-group nv-series-"+t}).classed("hover",function(e){return e.hover}),G.transition().style("fill",function(e,t){return i(e,t)}).style("stroke",function(e,t){return i(e,t)}).style("stroke-opacity",1).style("fill-opacity",.5);if(p){var Y=G.selectAll("circle.nv-point").data(function(e){return e.values},y);Y.enter().append("circle").style("fill",function(e,t){return e.color}).style("stroke",function(e,t){return e.color}).attr("cx",function(t,n){return e.utils.NaNtoZero(P(f(t,n)))}).attr("cy",function(t,n){return e.utils.NaNtoZero(H(l(t,n)))}).attr("r",function(e,t){return Math.sqrt(a(c(e,t))/Math.PI)}),Y.exit().remove(),G.exit().selectAll("path.nv-point").transition().attr("cx",function(t,n){return e.utils.NaNtoZero(o(f(t,n)))}).attr("cy",function(t,n){return e.utils.NaNtoZero(u(l(t,n)))}).remove(),Y.each(function(e,t){d3.select(this).classed("nv-point",!0).classed("nv-point-"+t,!0).classed("hover",!1)}),Y.transition().attr("cx",function(t,n){return e.utils.NaNtoZero(o(f(t,n)))}).attr("cy",function(t,n){return e.utils.NaNtoZero(u(l(t,n)))}).attr("r",function(e,t){return Math.sqrt(a(c(e,t))/Math.PI)})}else{var Y=G.selectAll("path.nv-point").data(function(e){return e.values});Y.enter().append("path").style("fill",function(e,t){return e.color}).style("stroke",function(e,t){return e.color}).attr("transform",function(e,t){return"translate("+P(f(e,t))+","+H(l(e,t))+")"}).attr("d",d3.svg.symbol().type(h).size(function(e,t){return a(c(e,t))})),Y.exit().remove(),G.exit().selectAll("path.nv-point").transition().attr("transform",function(e,t){return"translate("+o(f(e,t))+","+u(l(e,t))+")"}).remove(),Y.each(function(e,t){d3.select(this).classed("nv-point",!0).classed("nv-point-"+t,!0).classed("hover",!1)}),Y.transition().attr("transform",function(e,t){return"translate("+o(f(e,t))+","+u(l(e,t))+")"}).attr("d",d3.svg.symbol().type(h).size(function(e,t){return a(c(e,t))}))}clearTimeout(j),j=setTimeout(Q,300),P=o.copy(),H=u.copy(),B=a.copy()}),I}var t={top:0,right:0,bottom:0,left:0},n=960,r=500,i=e.utils.defaultColor(),s=Math.floor(Math.random()*1e5),o=d3.scale.linear(),u=d3.scale.linear(),a=d3.scale.linear(),f=function(e){return e.x},l=function(e){return e.y},c=function(e){return e.size||1},h=function(e){return e.shape||"circle"},p=!0,d=[],v=[],m=[],g=!0,y=null,b=function(e){return!e.notActive},w=!1,E=.1,S=!1,x=!0,T=function(){return 25},N=null,C=null,k=null,L=null,A=null,O=null,M=!1,_=d3.dispatch("elementClick","elementMouseover","elementMouseout"),D=!0,P,H,B,j,F=!1;return I.clearHighlights=function(){d3.selectAll(".nv-chart-"+s+" .nv-point.hover").classed("hover",!1)},I.highlightPoint=function(e,t,n){d3.select(".nv-chart-"+s+" .nv-series-"+e+" .nv-point-"+t).classed("hover",n)},_.on("elementMouseover.point",function(e){g&&I.highlightPoint(e.seriesIndex,e.pointIndex,!0)}),_.on("elementMouseout.point",function(e){g&&I.highlightPoint(e.seriesIndex,e.pointIndex,!1)}),I.dispatch=_,I.options=e.utils.optionsFunc.bind(I),I.x=function(e){return arguments.length?(f=d3.functor(e),I):f},I.y=function(e){return arguments.length?(l=d3.functor(e),I):l},I.size=function(e){return arguments.length?(c=d3.functor(e),I):c},I.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,I):t},I.width=function(e){return arguments.length?(n=e,I):n},I.height=function(e){return arguments.length?(r=e,I):r},I.xScale=function(e){return arguments.length?(o=e,I):o},I.yScale=function(e){return arguments.length?(u=e,I):u},I.zScale=function(e){return arguments.length?(a=e,I):a},I.xDomain=function(e){return arguments.length?(N=e,I):N},I.yDomain=function(e){return arguments.length?(C=e,I):C},I.sizeDomain=function(e){return arguments.length?(A=e,I):A},I.xRange=function(e){return arguments.length?(k=e,I):k},I.yRange=function(e){return arguments.length?(L=e,I):L},I.sizeRange=function(e){return arguments.length?(O=e,I):O},I.forceX=function(e){return arguments.length?(d=e,I):d},I.forceY=function(e){return arguments.length?(v=e,I):v},I.forceSize=function(e){return arguments.length?(m=e,I):m},I.interactive=function(e){return arguments.length?(g=e,I):g},I.pointKey=function(e){return arguments.length?(y=e,I):y},I.pointActive=function(e){return arguments.length?(b=e,I):b},I.padData=function(e){return arguments.length?(w=e,I):w},I.padDataOuter=function(e){return arguments.length?(E=e,I):E},I.clipEdge=function(e){return arguments.length?(S=e,I):S},I.clipVoronoi=function(e){return arguments.length?(x=e,I):x},I.useVoronoi=function(e){return arguments.length?(D=e,D===!1&&(x=!1),I):D},I.clipRadius=function(e){return arguments.length?(T=e,I):T},I.color=function(t){return arguments.length?(i=e.utils.getColor(t),I):i},I.shape=function(e){return arguments.length?(h=e,I):h},I.onlyCircles=function(e){return arguments.length?(p=e,I):p},I.id=function(e){return arguments.length?(s=e,I):s},I.singlePoint=function(e){return arguments.length?(M=e,I):M},I},e.models.scatterChart=function(){"use strict";function F(e){return e.each(function(e){function K(){if(T)return X.select(".nv-point-paths").style("pointer-events","all"),!1;X.select(".nv-point-paths").style("pointer-events","none");var i=d3.mouse(this);h.distortion(x).focus(i[0]),p.distortion(x).focus(i[1]),X.select(".nv-scatterWrap").call(t),b&&X.select(".nv-x.nv-axis").call(n),w&&X.select(".nv-y.nv-axis").call(r),X.select(".nv-distributionX").datum(e.filter(function(e){return!e.disabled})).call(o),X.select(".nv-distributionY").datum(e.filter(function(e){return!e.disabled})).call(u)}var C=d3.select(this),k=this,L=(f||parseInt(C.style("width"))||960)-a.left-a.right,I=(l||parseInt(C.style("height"))||400)-a.top-a.bottom;F.update=function(){C.transition().duration(D).call(F)},F.container=this,A.disabled=e.map(function(e){return!!e.disabled});if(!O){var q;O={};for(q in A)A[q]instanceof Array?O[q]=A[q].slice(0):O[q]=A[q]}if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var R=C.selectAll(".nv-noData").data([_]);return R.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),R.attr("x",a.left+L/2).attr("y",a.top+I/2).text(function(e){return e}),F}C.selectAll(".nv-noData").remove(),P=P||h,H=H||p;var U=C.selectAll("g.nv-wrap.nv-scatterChart").data([e]),z=U.enter().append("g").attr("class","nvd3 nv-wrap nv-scatterChart nv-chart-"+t.id()),W=z.append("g"),X=U.select("g");W.append("rect").attr("class","nvd3 nv-background"),W.append("g").attr("class","nv-x nv-axis"),W.append("g").attr("class","nv-y nv-axis"),W.append("g").attr("class","nv-scatterWrap"),W.append("g").attr("class","nv-distWrap"),W.append("g").attr("class","nv-legendWrap"),W.append("g").attr("class","nv-controlsWrap");if(y){var V=S?L/2:L;i.width(V),U.select(".nv-legendWrap").datum(e).call(i),a.top!=i.height()&&(a.top=i.height(),I=(l||parseInt(C.style("height"))||400)-a.top-a.bottom),U.select(".nv-legendWrap").attr("transform","translate("+(L-V)+","+ -a.top+")")}S&&(s.width(180).color(["#444"]),X.select(".nv-controlsWrap").datum(j).attr("transform","translate(0,"+ -a.top+")").call(s)),U.attr("transform","translate("+a.left+","+a.top+")"),E&&X.select(".nv-y.nv-axis").attr("transform","translate("+L+",0)"),t.width(L).height(I).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),d!==0&&t.xDomain(null),v!==0&&t.yDomain(null),U.select(".nv-scatterWrap").datum(e.filter(function(e){return!e.disabled})).call(t);if(d!==0){var $=h.domain()[1]-h.domain()[0];t.xDomain([h.domain()[0]-d*$,h.domain()[1]+d*$])}if(v!==0){var J=p.domain()[1]-p.domain()[0];t.yDomain([p.domain()[0]-v*J,p.domain()[1]+v*J])}(v!==0||d!==0)&&U.select(".nv-scatterWrap").datum(e.filter(function(e){return!e.disabled})).call(t),b&&(n.scale(h).ticks(n.ticks()&&n.ticks().length?n.ticks():L/100).tickSize(-I,0),X.select(".nv-x.nv-axis").attr("transform","translate(0,"+p.range()[0]+")").call(n)),w&&(r.scale(p).ticks(r.ticks()&&r.ticks().length?r.ticks():I/36).tickSize(-L,0),X.select(".nv-y.nv-axis").call(r)),m&&(o.getData(t.x()).scale(h).width(L).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),W.select(".nv-distWrap").append("g").attr("class","nv-distributionX"),X.select(".nv-distributionX").attr("transform","translate(0,"+p.range()[0]+")").datum(e.filter(function(e){return!e.disabled})).call(o)),g&&(u.getData(t.y()).scale(p).width(I).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),W.select(".nv-distWrap").append("g").attr("class","nv-distributionY"),X.select(".nv-distributionY").attr("transform","translate("+(E?L:-u.size())+",0)").datum(e.filter(function(e){return!e.disabled})).call(u)),d3.fisheye&&(X.select(".nv-background").attr("width",L).attr("height",I),X.select(".nv-background").on("mousemove",K),X.select(".nv-background").on("click",function(){T=!T}),t.dispatch.on("elementClick.freezeFisheye",function(){T=!T})),s.dispatch.on("legendClick",function(e,i){e.disabled=!e.disabled,x=e.disabled?0:2.5,X.select(".nv-background").style("pointer-events",e.disabled?"none":"all"),X.select(".nv-point-paths").style("pointer-events",e.disabled?"all":"none"),e.disabled?(h.distortion(x).focus(0),p.distortion(x).focus(0),X.select(".nv-scatterWrap").call(t),X.select(".nv-x.nv-axis").call(n),X.select(".nv-y.nv-axis").call(r)):T=!1,F.update()}),i.dispatch.on("stateChange",function(e){A.disabled=e.disabled,M.stateChange(A),F.update()}),t.dispatch.on("elementMouseover.tooltip",function(e){d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-distx-"+e.pointIndex).attr("y1",function(t,n){return e.pos[1]-I}),d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-disty-"+e.pointIndex).attr("x2",e.pos[0]+o.size()),e.pos=[e.pos[0]+a.left,e.pos[1]+a.top],M.tooltipShow(e)}),M.on("tooltipShow",function(e){N&&B(e,k.parentNode)}),M.on("changeState",function(t){typeof t.disabled!="undefined"&&(e.forEach(function(e,n){e.disabled=t.disabled[n]}),A.disabled=t.disabled),F.update()}),P=h.copy(),H=p.copy()}),F}var t=e.models.scatter(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),s=e.models.legend(),o=e.models.distribution(),u=e.models.distribution(),a={top:30,right:20,bottom:50,left:75},f=null,l=null,c=e.utils.defaultColor(),h=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):t.xScale(),p=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):t.yScale(),d=0,v=0,m=!1,g=!1,y=!0,b=!0,w=!0,E=!1,S=!!d3.fisheye,x=0,T=!1,N=!0,C=function(e,t,n){return"<strong>"+t+"</strong>"},k=function(e,t,n){return"<strong>"+n+"</strong>"},L=null,A={},O=null,M=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),_="No Data Available.",D=250;t.xScale(h).yScale(p),n.orient("bottom").tickPadding(10),r.orient(E?"right":"left").tickPadding(10),o.axis("x"),u.axis("y"),s.updateState(!1);var P,H,B=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),f=i.pos[0]+(s.offsetLeft||0),l=p.range()[0]+a.top+(s.offsetTop||0),c=h.range()[0]+a.left+(s.offsetLeft||0),d=i.pos[1]+(s.offsetTop||0),v=n.tickFormat()(t.x()(i.point,i.pointIndex)),m=r.tickFormat()(t.y()(i.point,i.pointIndex));C!=null&&e.tooltip.show([f,l],C(i.series.key,v,m,i,F),"n",1,s,"x-nvtooltip"),k!=null&&e.tooltip.show([c,d],k(i.series.key,v,m,i,F),"e",1,s,"y-nvtooltip"),L!=null&&e.tooltip.show([o,u],L(i.series.key,v,m,i,F),i.value<0?"n":"s",null,s)},j=[{key:"Magnify",disabled:!0}];return t.dispatch.on("elementMouseout.tooltip",function(e){M.tooltipHide(e),d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-distx-"+e.pointIndex).attr("y1",0),d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-disty-"+e.pointIndex).attr("x2",u.size())}),M.on("tooltipHide",function(){N&&e.tooltip.cleanup()}),F.dispatch=M,F.scatter=t,F.legend=i,F.controls=s,F.xAxis=n,F.yAxis=r,F.distX=o,F.distY=u,d3.rebind(F,t,"id","interactive","pointActive","x","y","shape","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","sizeRange","forceX","forceY","forceSize","clipVoronoi","clipRadius","useVoronoi"),F.options=e.utils.optionsFunc.bind(F),F.margin=function(e){return arguments.length?(a.top=typeof e.top!="undefined"?e.top:a.top,a.right=typeof e.right!="undefined"?e.right:a.right,a.bottom=typeof e.bottom!="undefined"?e.bottom:a.bottom,a.left=typeof e.left!="undefined"?e.left:a.left,F):a},F.width=function(e){return arguments.length?(f=e,F):f},F.height=function(e){return arguments.length?(l=e,F):l},F.color=function(t){return arguments.length?(c=e.utils.getColor(t),i.color(c),o.color(c),u.color(c),F):c},F.showDistX=function(e){return arguments.length?(m=e,F):m},F.showDistY=function(e){return arguments.length?(g=e,F):g},F.showControls=function(e){return arguments.length?(S=e,F):S},F.showLegend=function(e){return arguments.length?(y=e,F):y},F.showXAxis=function(e){return arguments.length?(b=e,F):b},F.showYAxis=function(e){return arguments.length?(w=e,F):w},F.rightAlignYAxis=function(e){return arguments.length?(E=e,r.orient(e?"right":"left"),F):E},F.fisheye=function(e){return arguments.length?(x=e,F):x},F.xPadding=function(e){return arguments.length?(d=e,F):d},F.yPadding=function(e){return arguments.length?(v=e,F):v},F.tooltips=function(e){return arguments.length?(N=e,F):N},F.tooltipContent=function(e){return arguments.length?(L=e,F):L},F.tooltipXContent=function(e){return arguments.length?(C=e,F):C},F.tooltipYContent=function(e){return arguments.length?(k=e,F):k},F.state=function(e){return arguments.length?(A=e,F):A},F.defaultState=function(e){return arguments.length?(O=e,F):O},F.noData=function(e){return arguments.length?(_=e,F):_},F.transitionDuration=function(e){return arguments.length?(D=e,F):D},F},e.models.scatterPlusLineChart=function(){"use strict";function B(e){return e.each(function(e){function $(){if(S)return z.select(".nv-point-paths").style("pointer-events","all"),!1;z.select(".nv-point-paths").style("pointer-events","none");var i=d3.mouse(this);h.distortion(E).focus(i[0]),p.distortion(E).focus(i[1]),z.select(".nv-scatterWrap").datum(e.filter(function(e){return!e.disabled})).call(t),g&&z.select(".nv-x.nv-axis").call(n),y&&z.select(".nv-y.nv-axis").call(r),z.select(".nv-distributionX").datum(e.filter(function(e){return!e.disabled})).call(o),z.select(".nv-distributionY").datum(e.filter(function(e){return!e.disabled})).call(u)}var T=d3.select(this),N=this,C=(f||parseInt(T.style("width"))||960)-a.left-a.right,j=(l||parseInt(T.style("height"))||400)-a.top-a.bottom;B.update=function(){T.transition().duration(M).call(B)},B.container=this,k.disabled=e.map(function(e){return!!e.disabled});if(!L){var F;L={};for(F in k)k[F]instanceof Array?L[F]=k[F].slice(0):L[F]=k[F]}if(!e||!e.length||!e.filter(function(e){return e.values.length}).length){var I=T.selectAll(".nv-noData").data([O]);return I.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),I.attr("x",a.left+C/2).attr("y",a.top+j/2).text(function(e){return e}),B}T.selectAll(".nv-noData").remove(),h=t.xScale(),p=t.yScale(),_=_||h,D=D||p;var q=T.selectAll("g.nv-wrap.nv-scatterChart").data([e]),R=q.enter().append("g").attr("class","nvd3 nv-wrap nv-scatterChart nv-chart-"+t.id()),U=R.append("g"),z=q.select("g");U.append("rect").attr("class","nvd3 nv-background").style("pointer-events","none"),U.append("g").attr("class","nv-x nv-axis"),U.append("g").attr("class","nv-y nv-axis"),U.append("g").attr("class","nv-scatterWrap"),U.append("g").attr("class","nv-regressionLinesWrap"),U.append("g").attr("class","nv-distWrap"),U.append("g").attr("class","nv-legendWrap"),U.append("g").attr("class","nv-controlsWrap"),q.attr("transform","translate("+a.left+","+a.top+")"),b&&z.select(".nv-y.nv-axis").attr("transform","translate("+C+",0)"),m&&(i.width(C/2),q.select(".nv-legendWrap").datum(e).call(i),a.top!=i.height()&&(a.top=i.height(),j=(l||parseInt(T.style("height"))||400)-a.top-a.bottom),q.select(".nv-legendWrap").attr("transform","translate("+C/2+","+ -a.top+")")),w&&(s.width(180).color(["#444"]),z.select(".nv-controlsWrap").datum(H).attr("transform","translate(0,"+ -a.top+")").call(s)),t.width(C).height(j).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),q.select(".nv-scatterWrap").datum(e.filter(function(e){return!e.disabled})).call(t),q.select(".nv-regressionLinesWrap").attr("clip-path","url(#nv-edge-clip-"+t.id()+")");var W=q.select(".nv-regressionLinesWrap").selectAll(".nv-regLines").data(function(e){return e});W.enter().append("g").attr("class","nv-regLines");var X=W.selectAll(".nv-regLine").data(function(e){return[e]}),V=X.enter().append("line").attr("class","nv-regLine").style("stroke-opacity",0);X.transition().attr("x1",h.range()[0]).attr("x2",h.range()[1]).attr("y1",function(e,t){return p(h.domain()[0]*e.slope+e.intercept)}).attr("y2",function(e,t){return p(h.domain()[1]*e.slope+e.intercept)}).style("stroke",function(e,t,n){return c(e,n)}).style("stroke-opacity",function(e,t){return e.disabled||typeof e.slope=="undefined"||typeof e.intercept=="undefined"?0:1}),g&&(n.scale(h).ticks(n.ticks()?n.ticks():C/100).tickSize(-j,0),z.select(".nv-x.nv-axis").attr("transform","translate(0,"+p.range()[0]+")").call(n)),y&&(r.scale(p).ticks(r.ticks()?r.ticks():j/36).tickSize(-C,0),z.select(".nv-y.nv-axis").call(r)),d&&(o.getData(t.x()).scale(h).width(C).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),U.select(".nv-distWrap").append("g").attr("class","nv-distributionX"),z.select(".nv-distributionX").attr("transform","translate(0,"+p.range()[0]+")").datum(e.filter(function(e){return!e.disabled})).call(o)),v&&(u.getData(t.y()).scale(p).width( | |
j).color(e.map(function(e,t){return e.color||c(e,t)}).filter(function(t,n){return!e[n].disabled})),U.select(".nv-distWrap").append("g").attr("class","nv-distributionY"),z.select(".nv-distributionY").attr("transform","translate("+(b?C:-u.size())+",0)").datum(e.filter(function(e){return!e.disabled})).call(u)),d3.fisheye&&(z.select(".nv-background").attr("width",C).attr("height",j),z.select(".nv-background").on("mousemove",$),z.select(".nv-background").on("click",function(){S=!S}),t.dispatch.on("elementClick.freezeFisheye",function(){S=!S})),s.dispatch.on("legendClick",function(e,i){e.disabled=!e.disabled,E=e.disabled?0:2.5,z.select(".nv-background").style("pointer-events",e.disabled?"none":"all"),z.select(".nv-point-paths").style("pointer-events",e.disabled?"all":"none"),e.disabled?(h.distortion(E).focus(0),p.distortion(E).focus(0),z.select(".nv-scatterWrap").call(t),z.select(".nv-x.nv-axis").call(n),z.select(".nv-y.nv-axis").call(r)):S=!1,B.update()}),i.dispatch.on("stateChange",function(e){k=e,A.stateChange(k),B.update()}),t.dispatch.on("elementMouseover.tooltip",function(e){d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-distx-"+e.pointIndex).attr("y1",e.pos[1]-j),d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-disty-"+e.pointIndex).attr("x2",e.pos[0]+o.size()),e.pos=[e.pos[0]+a.left,e.pos[1]+a.top],A.tooltipShow(e)}),A.on("tooltipShow",function(e){x&&P(e,N.parentNode)}),A.on("changeState",function(t){typeof t.disabled!="undefined"&&(e.forEach(function(e,n){e.disabled=t.disabled[n]}),k.disabled=t.disabled),B.update()}),_=h.copy(),D=p.copy()}),B}var t=e.models.scatter(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),s=e.models.legend(),o=e.models.distribution(),u=e.models.distribution(),a={top:30,right:20,bottom:50,left:75},f=null,l=null,c=e.utils.defaultColor(),h=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):t.xScale(),p=d3.fisheye?d3.fisheye.scale(d3.scale.linear).distortion(0):t.yScale(),d=!1,v=!1,m=!0,g=!0,y=!0,b=!1,w=!!d3.fisheye,E=0,S=!1,x=!0,T=function(e,t,n){return"<strong>"+t+"</strong>"},N=function(e,t,n){return"<strong>"+n+"</strong>"},C=function(e,t,n,r){return"<h3>"+e+"</h3>"+"<p>"+r+"</p>"},k={},L=null,A=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),O="No Data Available.",M=250;t.xScale(h).yScale(p),n.orient("bottom").tickPadding(10),r.orient(b?"right":"left").tickPadding(10),o.axis("x"),u.axis("y"),s.updateState(!1);var _,D,P=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),f=i.pos[0]+(s.offsetLeft||0),l=p.range()[0]+a.top+(s.offsetTop||0),c=h.range()[0]+a.left+(s.offsetLeft||0),d=i.pos[1]+(s.offsetTop||0),v=n.tickFormat()(t.x()(i.point,i.pointIndex)),m=r.tickFormat()(t.y()(i.point,i.pointIndex));T!=null&&e.tooltip.show([f,l],T(i.series.key,v,m,i,B),"n",1,s,"x-nvtooltip"),N!=null&&e.tooltip.show([c,d],N(i.series.key,v,m,i,B),"e",1,s,"y-nvtooltip"),C!=null&&e.tooltip.show([o,u],C(i.series.key,v,m,i.point.tooltip,i,B),i.value<0?"n":"s",null,s)},H=[{key:"Magnify",disabled:!0}];return t.dispatch.on("elementMouseout.tooltip",function(e){A.tooltipHide(e),d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-distx-"+e.pointIndex).attr("y1",0),d3.select(".nv-chart-"+t.id()+" .nv-series-"+e.seriesIndex+" .nv-disty-"+e.pointIndex).attr("x2",u.size())}),A.on("tooltipHide",function(){x&&e.tooltip.cleanup()}),B.dispatch=A,B.scatter=t,B.legend=i,B.controls=s,B.xAxis=n,B.yAxis=r,B.distX=o,B.distY=u,d3.rebind(B,t,"id","interactive","pointActive","x","y","shape","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","sizeRange","forceX","forceY","forceSize","clipVoronoi","clipRadius","useVoronoi"),B.options=e.utils.optionsFunc.bind(B),B.margin=function(e){return arguments.length?(a.top=typeof e.top!="undefined"?e.top:a.top,a.right=typeof e.right!="undefined"?e.right:a.right,a.bottom=typeof e.bottom!="undefined"?e.bottom:a.bottom,a.left=typeof e.left!="undefined"?e.left:a.left,B):a},B.width=function(e){return arguments.length?(f=e,B):f},B.height=function(e){return arguments.length?(l=e,B):l},B.color=function(t){return arguments.length?(c=e.utils.getColor(t),i.color(c),o.color(c),u.color(c),B):c},B.showDistX=function(e){return arguments.length?(d=e,B):d},B.showDistY=function(e){return arguments.length?(v=e,B):v},B.showControls=function(e){return arguments.length?(w=e,B):w},B.showLegend=function(e){return arguments.length?(m=e,B):m},B.showXAxis=function(e){return arguments.length?(g=e,B):g},B.showYAxis=function(e){return arguments.length?(y=e,B):y},B.rightAlignYAxis=function(e){return arguments.length?(b=e,r.orient(e?"right":"left"),B):b},B.fisheye=function(e){return arguments.length?(E=e,B):E},B.tooltips=function(e){return arguments.length?(x=e,B):x},B.tooltipContent=function(e){return arguments.length?(C=e,B):C},B.tooltipXContent=function(e){return arguments.length?(T=e,B):T},B.tooltipYContent=function(e){return arguments.length?(N=e,B):N},B.state=function(e){return arguments.length?(k=e,B):k},B.defaultState=function(e){return arguments.length?(L=e,B):L},B.noData=function(e){return arguments.length?(O=e,B):O},B.transitionDuration=function(e){return arguments.length?(M=e,B):M},B},e.models.sparkline=function(){"use strict";function d(e){return e.each(function(e){var i=n-t.left-t.right,d=r-t.top-t.bottom,v=d3.select(this);s.domain(l||d3.extent(e,u)).range(h||[0,i]),o.domain(c||d3.extent(e,a)).range(p||[d,0]);var m=v.selectAll("g.nv-wrap.nv-sparkline").data([e]),g=m.enter().append("g").attr("class","nvd3 nv-wrap nv-sparkline"),b=g.append("g"),w=m.select("g");m.attr("transform","translate("+t.left+","+t.top+")");var E=m.selectAll("path").data(function(e){return[e]});E.enter().append("path"),E.exit().remove(),E.style("stroke",function(e,t){return e.color||f(e,t)}).attr("d",d3.svg.line().x(function(e,t){return s(u(e,t))}).y(function(e,t){return o(a(e,t))}));var S=m.selectAll("circle.nv-point").data(function(e){function n(t){if(t!=-1){var n=e[t];return n.pointIndex=t,n}return null}var t=e.map(function(e,t){return a(e,t)}),r=n(t.lastIndexOf(o.domain()[1])),i=n(t.indexOf(o.domain()[0])),s=n(t.length-1);return[i,r,s].filter(function(e){return e!=null})});S.enter().append("circle"),S.exit().remove(),S.attr("cx",function(e,t){return s(u(e,e.pointIndex))}).attr("cy",function(e,t){return o(a(e,e.pointIndex))}).attr("r",2).attr("class",function(e,t){return u(e,e.pointIndex)==s.domain()[1]?"nv-point nv-currentValue":a(e,e.pointIndex)==o.domain()[0]?"nv-point nv-minValue":"nv-point nv-maxValue"})}),d}var t={top:2,right:0,bottom:2,left:0},n=400,r=32,i=!0,s=d3.scale.linear(),o=d3.scale.linear(),u=function(e){return e.x},a=function(e){return e.y},f=e.utils.getColor(["#000"]),l,c,h,p;return d.options=e.utils.optionsFunc.bind(d),d.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,d):t},d.width=function(e){return arguments.length?(n=e,d):n},d.height=function(e){return arguments.length?(r=e,d):r},d.x=function(e){return arguments.length?(u=d3.functor(e),d):u},d.y=function(e){return arguments.length?(a=d3.functor(e),d):a},d.xScale=function(e){return arguments.length?(s=e,d):s},d.yScale=function(e){return arguments.length?(o=e,d):o},d.xDomain=function(e){return arguments.length?(l=e,d):l},d.yDomain=function(e){return arguments.length?(c=e,d):c},d.xRange=function(e){return arguments.length?(h=e,d):h},d.yRange=function(e){return arguments.length?(p=e,d):p},d.animate=function(e){return arguments.length?(i=e,d):i},d.color=function(t){return arguments.length?(f=e.utils.getColor(t),d):f},d},e.models.sparklinePlus=function(){"use strict";function v(e){return e.each(function(c){function O(){if(a)return;var e=C.selectAll(".nv-hoverValue").data(u),r=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("+s(t.x()(c[e],e))+",0)"}).transition().duration(250).style("stroke-opacity",1).style("fill-opacity",1);if(!u.length)return;r.append("line").attr("x1",0).attr("y1",-n.top).attr("x2",0).attr("y2",b),r.append("text").attr("class","nv-xValue").attr("x",-6).attr("y",-n.top).attr("text-anchor","end").attr("dy",".9em"),C.select(".nv-hoverValue .nv-xValue").text(f(t.x()(c[u[0]],u[0]))),r.append("text").attr("class","nv-yValue").attr("x",6).attr("y",-n.top).attr("text-anchor","start").attr("dy",".9em"),C.select(".nv-hoverValue .nv-yValue").text(l(t.y()(c[u[0]],u[0])))}function M(){function r(e,n){var r=Math.abs(t.x()(e[0],0)-n),i=0;for(var s=0;s<e.length;s++)Math.abs(t.x()(e[s],s)-n)<r&&(r=Math.abs(t.x()(e[s],s)-n),i=s);return i}if(a)return;var e=d3.mouse(this)[0]-n.left;u=[r(c,Math.round(s.invert(e)))],O()}var m=d3.select(this),g=(r||parseInt(m.style("width"))||960)-n.left-n.right,b=(i||parseInt(m.style("height"))||400)-n.top-n.bottom;v.update=function(){v(e)},v.container=this;if(!c||!c.length){var w=m.selectAll(".nv-noData").data([d]);return w.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),w.attr("x",n.left+g/2).attr("y",n.top+b/2).text(function(e){return e}),v}m.selectAll(".nv-noData").remove();var E=t.y()(c[c.length-1],c.length-1);s=t.xScale(),o=t.yScale();var S=m.selectAll("g.nv-wrap.nv-sparklineplus").data([c]),T=S.enter().append("g").attr("class","nvd3 nv-wrap nv-sparklineplus"),N=T.append("g"),C=S.select("g");N.append("g").attr("class","nv-sparklineWrap"),N.append("g").attr("class","nv-valueWrap"),N.append("g").attr("class","nv-hoverArea"),S.attr("transform","translate("+n.left+","+n.top+")");var k=C.select(".nv-sparklineWrap");t.width(g).height(b),k.call(t);var L=C.select(".nv-valueWrap"),A=L.selectAll(".nv-currentValue").data([E]);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",g+(p?n.right:0)).attr("y",h?function(e){return o(e)}:0).style("fill",t.color()(c[c.length-1],c.length-1)).text(l(E)),N.select(".nv-hoverArea").append("rect").on("mousemove",M).on("click",function(){a=!a}).on("mouseout",function(){u=[],O()}),C.select(".nv-hoverArea rect").attr("transform",function(e){return"translate("+ -n.left+","+ -n.top+")"}).attr("width",g+n.left+n.right).attr("height",b+n.top)}),v}var t=e.models.sparkline(),n={top:15,right:100,bottom:10,left:50},r=null,i=null,s,o,u=[],a=!1,f=d3.format(",r"),l=d3.format(",.2f"),c=!0,h=!0,p=!1,d="No Data Available.";return v.sparkline=t,d3.rebind(v,t,"x","y","xScale","yScale","color"),v.options=e.utils.optionsFunc.bind(v),v.margin=function(e){return arguments.length?(n.top=typeof e.top!="undefined"?e.top:n.top,n.right=typeof e.right!="undefined"?e.right:n.right,n.bottom=typeof e.bottom!="undefined"?e.bottom:n.bottom,n.left=typeof e.left!="undefined"?e.left:n.left,v):n},v.width=function(e){return arguments.length?(r=e,v):r},v.height=function(e){return arguments.length?(i=e,v):i},v.xTickFormat=function(e){return arguments.length?(f=e,v):f},v.yTickFormat=function(e){return arguments.length?(l=e,v):l},v.showValue=function(e){return arguments.length?(c=e,v):c},v.alignValue=function(e){return arguments.length?(h=e,v):h},v.rightAlignValue=function(e){return arguments.length?(p=e,v):p},v.noData=function(e){return arguments.length?(d=e,v):d},v},e.models.stackedArea=function(){"use strict";function g(e){return e.each(function(e){var a=n-t.left-t.right,b=r-t.top-t.bottom,w=d3.select(this);p=v.xScale(),d=v.yScale();var E=e;e.forEach(function(e,t){e.seriesIndex=t,e.values=e.values.map(function(e,n){return e.index=n,e.seriesIndex=t,e})});var S=e.filter(function(e){return!e.disabled});e=d3.layout.stack().order(l).offset(f).values(function(e){return e.values}).x(o).y(u).out(function(e,t,n){var r=u(e)===0?0:n;e.display={y:r,y0:t}})(S);var T=w.selectAll("g.nv-wrap.nv-stackedarea").data([e]),N=T.enter().append("g").attr("class","nvd3 nv-wrap nv-stackedarea"),C=N.append("defs"),k=N.append("g"),L=T.select("g");k.append("g").attr("class","nv-areaWrap"),k.append("g").attr("class","nv-scatterWrap"),T.attr("transform","translate("+t.left+","+t.top+")"),v.width(a).height(b).x(o).y(function(e){return e.display.y+e.display.y0}).forceY([0]).color(e.map(function(e,t){return e.color||i(e,e.seriesIndex)}));var A=L.select(".nv-scatterWrap").datum(e);A.call(v),C.append("clipPath").attr("id","nv-edge-clip-"+s).append("rect"),T.select("#nv-edge-clip-"+s+" rect").attr("width",a).attr("height",b),L.attr("clip-path",h?"url(#nv-edge-clip-"+s+")":"");var O=d3.svg.area().x(function(e,t){return p(o(e,t))}).y0(function(e){return d(e.display.y0)}).y1(function(e){return d(e.display.y+e.display.y0)}).interpolate(c),M=d3.svg.area().x(function(e,t){return p(o(e,t))}).y0(function(e){return d(e.display.y0)}).y1(function(e){return d(e.display.y0)}),_=L.select(".nv-areaWrap").selectAll("path.nv-area").data(function(e){return e});_.enter().append("path").attr("class",function(e,t){return"nv-area nv-area-"+t}).attr("d",function(e,t){return M(e.values,e.seriesIndex)}).on("mouseover",function(e,t){d3.select(this).classed("hover",!0),m.areaMouseover({point:e,series:e.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:e.seriesIndex})}).on("mouseout",function(e,t){d3.select(this).classed("hover",!1),m.areaMouseout({point:e,series:e.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:e.seriesIndex})}).on("click",function(e,t){d3.select(this).classed("hover",!1),m.areaClick({point:e,series:e.key,pos:[d3.event.pageX,d3.event.pageY],seriesIndex:e.seriesIndex})}),_.exit().remove(),_.style("fill",function(e,t){return e.color||i(e,e.seriesIndex)}).style("stroke",function(e,t){return e.color||i(e,e.seriesIndex)}),_.transition().attr("d",function(e,t){return O(e.values,t)}),v.dispatch.on("elementMouseover.area",function(e){L.select(".nv-chart-"+s+" .nv-area-"+e.seriesIndex).classed("hover",!0)}),v.dispatch.on("elementMouseout.area",function(e){L.select(".nv-chart-"+s+" .nv-area-"+e.seriesIndex).classed("hover",!1)}),g.d3_stackedOffset_stackPercent=function(e){var t=e.length,n=e[0].length,r=1/t,i,s,o,a=[];for(s=0;s<n;++s){for(i=0,o=0;i<E.length;i++)o+=u(E[i].values[s]);if(o)for(i=0;i<t;i++)e[i][s][1]/=o;else for(i=0;i<t;i++)e[i][s][1]=r}for(s=0;s<n;++s)a[s]=0;return a}}),g}var t={top:0,right:0,bottom:0,left:0},n=960,r=500,i=e.utils.defaultColor(),s=Math.floor(Math.random()*1e5),o=function(e){return e.x},u=function(e){return e.y},a="stack",f="zero",l="default",c="linear",h=!1,p,d,v=e.models.scatter(),m=d3.dispatch("tooltipShow","tooltipHide","areaClick","areaMouseover","areaMouseout");return v.size(2.2).sizeDomain([2.2,2.2]),v.dispatch.on("elementClick.area",function(e){m.areaClick(e)}),v.dispatch.on("elementMouseover.tooltip",function(e){e.pos=[e.pos[0]+t.left,e.pos[1]+t.top],m.tooltipShow(e)}),v.dispatch.on("elementMouseout.tooltip",function(e){m.tooltipHide(e)}),g.dispatch=m,g.scatter=v,d3.rebind(g,v,"interactive","size","xScale","yScale","zScale","xDomain","yDomain","xRange","yRange","sizeDomain","forceX","forceY","forceSize","clipVoronoi","useVoronoi","clipRadius","highlightPoint","clearHighlights"),g.options=e.utils.optionsFunc.bind(g),g.x=function(e){return arguments.length?(o=d3.functor(e),g):o},g.y=function(e){return arguments.length?(u=d3.functor(e),g):u},g.margin=function(e){return arguments.length?(t.top=typeof e.top!="undefined"?e.top:t.top,t.right=typeof e.right!="undefined"?e.right:t.right,t.bottom=typeof e.bottom!="undefined"?e.bottom:t.bottom,t.left=typeof e.left!="undefined"?e.left:t.left,g):t},g.width=function(e){return arguments.length?(n=e,g):n},g.height=function(e){return arguments.length?(r=e,g):r},g.clipEdge=function(e){return arguments.length?(h=e,g):h},g.color=function(t){return arguments.length?(i=e.utils.getColor(t),g):i},g.offset=function(e){return arguments.length?(f=e,g):f},g.order=function(e){return arguments.length?(l=e,g):l},g.style=function(e){if(!arguments.length)return a;a=e;switch(a){case"stack":g.offset("zero"),g.order("default");break;case"stream":g.offset("wiggle"),g.order("inside-out");break;case"stream-center":g.offset("silhouette"),g.order("inside-out");break;case"expand":g.offset("expand"),g.order("default");break;case"stack_percent":g.offset(g.d3_stackedOffset_stackPercent),g.order("default")}return g},g.interpolate=function(e){return arguments.length?(c=e,g):c},g},e.models.stackedAreaChart=function(){"use strict";function M(y){return y.each(function(y){var _=d3.select(this),D=this,P=(a||parseInt(_.style("width"))||960)-u.left-u.right,H=(f||parseInt(_.style("height"))||400)-u.top-u.bottom;M.update=function(){_.transition().duration(A).call(M)},M.container=this,S.disabled=y.map(function(e){return!!e.disabled});if(!x){var B;x={};for(B in S)S[B]instanceof Array?x[B]=S[B].slice(0):x[B]=S[B]}if(!y||!y.length||!y.filter(function(e){return e.values.length}).length){var j=_.selectAll(".nv-noData").data([T]);return j.enter().append("text").attr("class","nvd3 nv-noData").attr("dy","-.7em").style("text-anchor","middle"),j.attr("x",u.left+P/2).attr("y",u.top+H/2).text(function(e){return e}),M}_.selectAll(".nv-noData").remove(),b=t.xScale(),w=t.yScale();var F=_.selectAll("g.nv-wrap.nv-stackedAreaChart").data([y]),I=F.enter().append("g").attr("class","nvd3 nv-wrap nv-stackedAreaChart").append("g"),q=F.select("g");I.append("rect").style("opacity",0),I.append("g").attr("class","nv-x nv-axis"),I.append("g").attr("class","nv-y nv-axis"),I.append("g").attr("class","nv-stackedWrap"),I.append("g").attr("class","nv-legendWrap"),I.append("g").attr("class","nv-controlsWrap"),I.append("g").attr("class","nv-interactive"),q.select("rect").attr("width",P).attr("height",H);if(h){var R=c?P-C:P;i.width(R),q.select(".nv-legendWrap").datum(y).call(i),u.top!=i.height()&&(u.top=i.height(),H=(f||parseInt(_.style("height"))||400)-u.top-u.bottom),q.select(".nv-legendWrap").attr("transform","translate("+(P-R)+","+ -u.top+")")}if(c){var U=[{key:L.stacked||"Stacked",metaKey:"Stacked",disabled:t.style()!="stack",style:"stack"},{key:L.stream||"Stream",metaKey:"Stream",disabled:t.style()!="stream",style:"stream"},{key:L.expanded||"Expanded",metaKey:"Expanded",disabled:t.style()!="expand",style:"expand"},{key:L.stack_percent||"Stack %",metaKey:"Stack_Percent",disabled:t.style()!="stack_percent",style:"stack_percent"}];C=k.length/3*260,U=U.filter(function(e){return k.indexOf(e.metaKey)!==-1}),s.width(C).color(["#444","#444","#444"]),q.select(".nv-controlsWrap").datum(U).call(s),u.top!=Math.max(s.height(),i.height())&&(u.top=Math.max(s.height(),i.height()),H=(f||parseInt(_.style("height"))||400)-u.top-u.bottom),q.select(".nv-controlsWrap").attr("transform","translate(0,"+ -u.top+")")}F.attr("transform","translate("+u.left+","+u.top+")"),v&&q.select(".nv-y.nv-axis").attr("transform","translate("+P+",0)"),m&&(o.width(P).height(H).margin({left:u.left,top:u.top}).svgContainer(_).xScale(b),F.select(".nv-interactive").call(o)),t.width(P).height(H);var z=q.select(".nv-stackedWrap").datum(y);z.transition().call(t),p&&(n.scale(b).ticks(P/100).tickSize(-H,0),q.select(".nv-x.nv-axis").attr("transform","translate(0,"+H+")"),q.select(".nv-x.nv-axis").transition().duration(0).call(n)),d&&(r.scale(w).ticks(t.offset()=="wiggle"?0:H/36).tickSize(-P,0).setTickFormat(t.style()=="expand"||t.style()=="stack_percent"?d3.format("%"):E),q.select(".nv-y.nv-axis").transition().duration(0).call(r)),t.dispatch.on("areaClick.toggle",function(e){y.filter(function(e){return!e.disabled}).length===1?y.forEach(function(e){e.disabled=!1}):y.forEach(function(t,n){t.disabled=n!=e.seriesIndex}),S.disabled=y.map(function(e){return!!e.disabled}),N.stateChange(S),M.update()}),i.dispatch.on("stateChange",function(e){S.disabled=e.disabled,N.stateChange(S),M.update()}),s.dispatch.on("legendClick",function(e,n){if(!e.disabled)return;U=U.map(function(e){return e.disabled=!0,e}),e.disabled=!1,t.style(e.style),S.style=t.style(),N.stateChange(S),M.update()}),o.dispatch.on("elementMousemove",function(i){t.clearHighlights();var s,a,f,c=[];y.filter(function(e,t){return e.seriesIndex=t,!e.disabled}).forEach(function(n,r){a=e.interactiveBisect(n.values,i.pointXValue,M.x()),t.highlightPoint(r,a,!0);var o=n.values[a];if(typeof o=="undefined")return;typeof s=="undefined"&&(s=o),typeof f=="undefined"&&(f=M.xScale()(M.x()(o,a)));var u=t.style()=="expand"?o.display.y:M.y()(o,a);c.push({key:n.key,value:u,color:l(n,n.seriesIndex),stackedValue:o.display})}),c.reverse();if(c.length>2){var h=M.yScale().invert(i.mouseY),p=Infinity,d=null;c.forEach(function(e,t){h=Math.abs(h);var n=Math.abs(e.stackedValue.y0),r=Math.abs(e.stackedValue.y);if(h>=n&&h<=r+n){d=t;return}}),d!=null&&(c[d].highlight=!0)}var v=n.tickFormat()(M.x()(s,a)),m=t.style()=="expand"?function(e,t){return d3.format(".1%")(e)}:function(e,t){return r.tickFormat()(e)};o.tooltip.position({left:f+u.left,top:i.mouseY+u.top}).chartContainer(D.parentNode).enabled(g).valueFormatter(m).data({value:v,series:c})(),o.renderGuideLine(f)}),o.dispatch.on("elementMouseout",function(e){N.tooltipHide(),t.clearHighlights()}),N.on("tooltipShow",function(e){g&&O(e,D.parentNode)}),N.on("changeState",function(e){typeof e.disabled!="undefined"&&y.length===e.disabled.length&&(y.forEach(function(t,n){t.disabled=e.disabled[n]}),S.disabled=e.disabled),typeof e.style!="undefined"&&t.style(e.style),M.update()})}),M}var t=e.models.stackedArea(),n=e.models.axis(),r=e.models.axis(),i=e.models.legend(),s=e.models.legend(),o=e.interactiveGuideline(),u={top:30,right:25,bottom:50,left:60},a=null,f=null,l=e.utils.defaultColor(),c=!0,h=!0,p=!0,d=!0,v=!1,m=!1,g=!0,y=function(e,t,n,r,i){return"<h3>"+e+"</h3>"+"<p>"+n+" on "+t+"</p>"},b,w,E=d3.format(",.2f"),S={style:t.style()},x=null,T="No Data Available.",N=d3.dispatch("tooltipShow","tooltipHide","stateChange","changeState"),C=250,k=["Stacked","Stream","Expanded"],L={},A=250;n.orient("bottom").tickPadding(7),r.orient(v?"right":"left"),s.updateState(!1);var O=function(i,s){var o=i.pos[0]+(s.offsetLeft||0),u=i.pos[1]+(s.offsetTop||0),a=n.tickFormat()(t.x()(i.point,i.pointIndex)),f=r.tickFormat()(t.y()(i.point,i.pointIndex)),l=y(i.series.key,a,f,i,M);e.tooltip.show([o,u],l,i.value<0?"n":"s",null,s)};return t.dispatch.on("tooltipShow",function(e){e.pos=[e.pos[0]+u.left,e.pos[1]+u.top],N.tooltipShow(e)}),t.dispatch.on("tooltipHide",function(e){N.tooltipHide(e)}),N.on("tooltipHide",function(){g&&e.tooltip.cleanup()}),M.dispatch=N,M.stacked=t,M.legend=i,M.controls=s,M.xAxis=n,M.yAxis=r,M.interactiveLayer=o,d3.rebind(M,t,"x","y","size","xScale","yScale","xDomain","yDomain","xRange","yRange","sizeDomain","interactive","useVoronoi","offset","order","style","clipEdge","forceX","forceY","forceSize","interpolate"),M.options=e.utils.optionsFunc.bind(M),M.margin=function(e){return arguments.length?(u.top=typeof e.top!="undefined"?e.top:u.top,u.right=typeof e.right!="undefined"?e.right:u.right,u.bottom=typeof e.bottom!="undefined"?e.bottom:u.bottom,u.left=typeof e.left!="undefined"?e.left:u.left,M):u},M.width=function(e){return arguments.length?(a=e,M):a},M.height=function(e){return arguments.length?(f=e,M):f},M.color=function(n){return arguments.length?(l=e.utils.getColor(n),i.color(l),t.color(l),M):l},M.showControls=function(e){return arguments.length?(c=e,M):c},M.showLegend=function(e){return arguments.length?(h=e,M):h},M.showXAxis=function(e){return arguments.length?(p=e,M):p},M.showYAxis=function(e){return arguments.length?(d=e,M):d},M.rightAlignYAxis=function(e){return arguments.length?(v=e,r.orient(e?"right":"left"),M):v},M.useInteractiveGuideline=function(e){return arguments.length?(m=e,e===!0&&(M.interactive(!1),M.useVoronoi(!1)),M):m},M.tooltip=function(e){return arguments.length?(y=e,M):y},M.tooltips=function(e){return arguments.length?(g=e,M):g},M.tooltipContent=function(e){return arguments.length?(y=e,M):y},M.state=function(e){return arguments.length?(S=e,M):S},M.defaultState=function(e){return arguments.length?(x=e,M):x},M.noData=function(e){return arguments.length?(T=e,M):T},M.transitionDuration=function(e){return arguments.length?(A=e,M):A},M.controlsData=function(e){return arguments.length?(k=e,M):k},M.controlLabels=function(e){return arguments.length?typeof e!="object"?L:(L=e,M):L},r.setTickFormat=r.tickFormat,r.tickFormat=function(e){return arguments.length?(E=e,r):E},M}})(); | |
</script><script type="text/javascript"> | |
var RadarChart={defaultConfig:{containerClass:"radar-chart",w:600,h:600,factor:.95,factorLegend:1,levels:3,levelTick:!1,TickLength:10,maxValue:0,radians:2*Math.PI,color:d3.scale.category10(),axisLine:!0,axisText:!0,circles:!0,radius:5,axisJoin:function(a,b){return a.className||b},transitionDuration:300},chart:function(){function b(b){b.each(function(b){function h(b,c,d,e){return d="undefined"!=typeof d?d:1,c*(1-d*e(b*a.radians/f))}function i(a,b,c){return h(a,b,c,Math.sin)}function j(a,b,c){return h(a,b,c,Math.cos)}var c=d3.select(this);b=b.map(function(a){return a instanceof Array&&(a={axes:a}),a});var d=Math.max(a.maxValue,d3.max(b,function(a){return d3.max(a.axes,function(a){return a.value})})),e=b[0].axes.map(function(a){return a.axis}),f=e.length,g=a.factor*Math.min(a.w/2,a.h/2);c.classed(a.containerClass,1);var k=d3.range(0,a.levels).map(function(b){return g*((b+1)/a.levels)}),l=c.selectAll("g.level-group").data(k);l.enter().append("g"),l.exit().remove(),l.attr("class",function(a,b){return"level-group level-group-"+b});var m=l.selectAll(".level").data(function(a){return d3.range(0,f).map(function(){return a})});if(m.enter().append("line"),m.exit().remove(),a.levelTick?m.attr("class","level").attr("x1",function(b,c){return g==b?i(c,b):i(c,b)+a.TickLength/2*Math.cos(c*a.radians/f)}).attr("y1",function(b,c){return g==b?j(c,b):j(c,b)-a.TickLength/2*Math.sin(c*a.radians/f)}).attr("x2",function(b,c){return g==b?i(c+1,b):i(c,b)-a.TickLength/2*Math.cos(c*a.radians/f)}).attr("y2",function(b,c){return g==b?j(c+1,b):j(c,b)+a.TickLength/2*Math.sin(c*a.radians/f)}).attr("transform",function(b){return"translate("+(a.w/2-b)+", "+(a.h/2-b)+")"}):m.attr("class","level").attr("x1",function(a,b){return i(b,a)}).attr("y1",function(a,b){return j(b,a)}).attr("x2",function(a,b){return i(b+1,a)}).attr("y2",function(a,b){return j(b+1,a)}).attr("transform",function(b){return"translate("+(a.w/2-b)+", "+(a.h/2-b)+")"}),a.axisLine||a.axisText){var n=c.selectAll(".axis").data(e),o=n.enter().append("g");a.axisLine&&o.append("line"),a.axisText&&o.append("text"),n.exit().remove(),n.attr("class","axis"),a.axisLine&&n.select("line").attr("x1",a.w/2).attr("y1",a.h/2).attr("x2",function(b,c){return i(c,a.w/2,a.factor)}).attr("y2",function(b,c){return j(c,a.h/2,a.factor)}),a.axisText&&n.select("text").attr("class",function(a,b){var c=i(b,.5);return"legend "+(.4>c?"left":c>.6?"right":"middle")}).attr("dy",function(a,b){var c=j(b,.5);return.1>c?"1em":c>.9?"0":"0.5em"}).text(function(a){return a}).attr("x",function(b,c){return i(c,a.w/2,a.factorLegend)}).attr("y",function(b,c){return j(c,a.h/2,a.factorLegend)})}b.forEach(function(b){b.axes.forEach(function(b,c){b.x=i(c,a.w/2,parseFloat(Math.max(b.value,0))/d*a.factor),b.y=j(c,a.h/2,parseFloat(Math.max(b.value,0))/d*a.factor)})});var p=c.selectAll(".area").data(b,a.axisJoin);if(p.enter().append("polygon").classed({area:1,"d3-enter":1}).on("mouseover",function(){c.classed("focus",1),d3.select(this).classed("focused",1)}).on("mouseout",function(){c.classed("focus",0),d3.select(this).classed("focused",0)}),p.exit().classed("d3-exit",1).transition().duration(a.transitionDuration).remove(),p.each(function(a,b){var c={"d3-exit":0};c["radar-chart-serie"+b]=1,a.className&&(c[a.className]=1),d3.select(this).classed(c)}).style("stroke",function(b,c){return a.color(c)}).style("fill",function(b,c){return a.color(c)}).transition().duration(a.transitionDuration).attr("points",function(a){return a.axes.map(function(a){return[a.x,a.y].join(",")}).join(" ")}).each("start",function(){d3.select(this).classed("d3-enter",0)}),a.circles&&a.radius){var q=c.selectAll(".tooltip").data([1]);q.enter().append("text").attr("class","tooltip");var r=c.selectAll("g.circle-group").data(b,a.axisJoin);r.enter().append("g").classed({"circle-group":1,"d3-enter":1}),r.exit().classed("d3-exit",1).transition().duration(a.transitionDuration).remove(),r.each(function(a){var b={"d3-exit":0};a.className&&(b[a.className]=1),d3.select(this).classed(b)}).transition().duration(a.transitionDuration).each("start",function(){d3.select(this).classed("d3-enter",0)});var s=r.selectAll(".circle").data(function(a,b){return a.axes.map(function(a){return[a,b]})});s.enter().append("circle").classed({circle:1,"d3-enter":1}).on("mouseover",function(a){q.attr("x",a[0].x-10).attr("y",a[0].y-5).text(a[0].value).classed("visible",1),c.classed("focus",1),c.select(".area.radar-chart-serie"+a[1]).classed("focused",1)}).on("mouseout",function(a){q.classed("visible",0),c.classed("focus",0),c.select(".area.radar-chart-serie"+a[1]).classed("focused",0)}),s.exit().classed("d3-exit",1).transition().duration(a.transitionDuration).remove(),s.each(function(a){var b={"d3-exit":0};b["radar-chart-serie"+a[1]]=1,d3.select(this).classed(b)}).style("fill",function(b){return a.color(b[1])}).transition().duration(a.transitionDuration).attr("r",a.radius).attr("cx",function(a){return a[0].x}).attr("cy",function(a){return a[0].y}).each("start",function(){d3.select(this).classed("d3-enter",0)});var t=q.node();t.parentNode.appendChild(t)}})}var a=Object.create(RadarChart.defaultConfig);return b.config=function(c){return arguments.length?(arguments.length>1?a[arguments[0]]=arguments[1]:d3.entries(c||{}).forEach(function(b){a[b.key]=b.value}),b):a},b},draw:function(a,b,c){var d=RadarChart.chart().config(c),e=d.config();d3.select(a).select("svg").remove(),d3.select(a).append("svg").attr("width",e.w).attr("height",e.h).datum(b).call(d)}}; | |
</script> | |
<script type="text/javascript"> | |
function updateScoreChart() { | |
if(updateScoreChart.initiazed) return; | |
updateScoreChart.initiazed = true; | |
var score = [ | |
{ | |
className: 'score', | |
axes: [ | |
{axis: "Maintainability", value: 79 }, | |
{axis: "Accessibility for new developers", value: 43 }, | |
{axis: "Simplicity of algorithms", value: 10 }, | |
{axis: "Volume", value: 48 }, | |
{axis: "Reducing bug's probability", value: 52 }, | |
] | |
} | |
]; | |
var chart = RadarChart.chart(); | |
chart.config({maxValue: 100}) | |
var svg = d3.select('#chart-score').append('svg') | |
.attr('width', 500) | |
.attr('height', 500); | |
// darw one | |
svg.append('g').classed('focus', 1).datum(score).call(chart); | |
} | |
</script> | |
<script type="text/javascript"> | |
function updateTableView() { | |
if(updateTableView.initiazed) return; | |
updateTableView.initiazed = true; | |
/** | |
* Get column header | |
* | |
* @param label | |
* @param key | |
* @param type [average|sum|min|max] | |
* @returns object | |
*/ | |
function getCol(label, key, type, help, doValidate) { | |
type = type || false; | |
if(doValidate == undefined) { | |
doValidate = true; | |
} | |
return { | |
format: function(d) { | |
if(type) { | |
return d[type] ? d[type][key] : d[key]; | |
} | |
return d[key]; | |
}, | |
label: '<abbr title="' + help + '">' + label + '</abbr>', | |
type: type, | |
classes: | |
( doValidate | |
? function(d) { return validateIn(d,key, type); } | |
: '' | |
) | |
}; | |
} | |
nv.addGraph(function() { | |
var chart = nv.models.indentedTree() | |
.tableClass('table table-striped') //for bootstrap styling | |
.columns([ | |
{ | |
key: 'name', | |
label: 'Name', | |
showCount: true, | |
type: 'text', | |
classes: function(d) { | |
return 'name ' | |
+ (d.childs ? 'clickable ' : '') | |
+ 'depth-' + d._depth; | |
} | |
}, | |
getCol('loc' , 'loc' , 'sum' , 'Number of lines of code' , false), | |
getCol('lloc' , 'logicalLoc' , 'sum' , 'Number of logical lines of code' ,false), | |
getCol('CommW' , 'commentWeight' , 'average' , 'Comment Weight'), | |
getCol('Length' , 'length' , 'sum' , 'Halstead length'), | |
getCol('Volume' , 'volume' , 'average' , 'Halstead Volume'), | |
getCol('Vocabulary' , 'vocabulary' , 'average' , 'Halstead Vocabulary'), | |
getCol('Eff.' , 'effort' , 'average' , 'Halstead effort'), | |
getCol('MI' , 'maintenabilityIndex' , 'average' , 'Maintainability Index (mi < 65: low ; 65 < mi < 85: correct; 85 < mi: good)'), | |
getCol('MIwC' , 'maintenabilityIndexWithoutComment' , 'average', 'Maintainability index without comments'), | |
getCol('Diff' , 'difficulty' , 'average' , 'Halstead difficulty (average)'), | |
getCol('Bugs' , 'bugs' , 'average' , 'Estimated number of bugs (average by file)'), | |
getCol('IC' , 'intelligentContent' , 'average' , 'Intteligent content'), | |
getCol('CC' , 'cyclomaticComplexity' , 'average' , "Cyclomatic complexity"), | |
getCol('Dist.' , 'myerDistance' , 'average' , "Myer's distance"), | |
getCol('Oper.' , 'operators' , 'sum' , 'Number of operators' , false), | |
getCol('lcom' , 'lcom' , 'average' , 'Lack of cohesion of methods (LCOM4)'), | |
getCol('rsysc' , 'rsysc' , 'average' , 'Relative System complexity'), | |
getCol('rdc' , 'rdc' , 'average' , 'Relative Data complexity'), | |
getCol('rsc' , 'rsc' , 'average' , 'Relative Structural complexity'), | |
getCol('Abstr.' , 'abstractness' , false , 'Abstractness'), | |
getCol('Inst.' , 'instability' , false , 'Instability'), | |
getCol('EC' , 'efferentCoupling' , 'average' , 'Efferent coupling'), | |
getCol('AC' , 'afferentCoupling' , 'average' , 'Afferent coupling'), | |
getCol('noc' , 'noc' , 'sum' , 'Number of classes' , false), | |
getCol('noca' , 'noca' , 'sum' , 'Numner of abstract classes and interfaces' , false), | |
getCol('nocc' , 'nocc' , 'sum' , 'Number of concrete classes' , false), | |
getCol('noi' , 'noi' , 'sum' , 'Number of interfaces' , false) | |
]); | |
d3.select('#chart-tableview') | |
.datum(tabularize(groupedData)) | |
.call(chart); | |
return chart; | |
}); | |
} | |
function tabularize(root) { | |
var result = root; | |
var i, len = root.length; | |
for(i = 0; i < len; i++) { | |
result[i]._values = root[i].childs; | |
delete result[i].childs; | |
result[i]._depth = result[i].depth; | |
} | |
// we want to display results in a tree | |
var parents = [ | |
{ name: "temporary", _values: []} | |
]; | |
var final, e, level, separator; | |
separator = "/"; | |
for(i = 0; i < len; i++) { | |
if (result[i].name.indexOf("\\") !== -1) { | |
separator = "\\"; | |
break; | |
} | |
} | |
for(i = 0; i < len; i++) { | |
e = result[i]; | |
level = (e.name.split(separator).length - 1); | |
if(!e.name.match(/\.php$/)) { | |
parents[level + 1] = e; | |
parents[level]._values.push(e); | |
} else { | |
parents[level]._values.push(e); | |
} | |
} | |
final = parents[1]; | |
return [final]; | |
} | |
</script> | |
<script type="text/javascript"> | |
function updateMaintenablityChart() { | |
chartMaintenability(); | |
}; | |
function chartMaintenability() { | |
var maxHeight = document.getElementById('svg-maintainability').offsetHeight, | |
maxWidth = document.getElementById('svg-maintainability').offsetWidth, | |
format = d3.format(",d"), | |
color = d3.scale.category20c(); | |
var bubble = d3.layout.pack() | |
.sort(null) | |
.size([maxWidth, maxHeight]) | |
.padding(1.5); | |
var r = d3.scale.linear().range([1, maxWidth / 4]).domain([1, 100]); | |
var x = d3.scale.linear().range([1, maxWidth]); | |
var y = d3.scale.linear().range([1, maxHeight]); | |
d3.select("#svg-maintainability").html("<svg></svg>"); | |
var svg = d3.select("#svg-maintainability").select("svg") | |
.attr("width", maxWidth) | |
.attr("height", maxHeight) | |
.attr("class", "bubble"); | |
// accessibility for colorblind | |
var defs= svg.append('defs'); | |
defs.append('pattern') | |
.attr('id', 'hash-warning') | |
.attr('patternUnits', 'userSpaceOnUse') | |
.attr('width', 4) | |
.attr('height', 4) | |
.append('path') | |
.attr('d', 'M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2') | |
.attr('stroke', '#000000') | |
.attr('stroke-width', 1); | |
defs.append('pattern') | |
.attr('id', 'hash-critical') | |
.attr('patternUnits', 'userSpaceOnUse') | |
.attr('width', 4) | |
.attr('height', 4) | |
.append('path') | |
.attr('d', 'M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2') | |
.attr('stroke', '#000000') | |
.attr('stroke-width', 3); | |
defs.append('pattern') | |
.attr('id', 'hash-good') | |
.attr('patternUnits', 'userSpaceOnUse') | |
.attr('width', 5) | |
.attr('height', 5) | |
.append('circle') | |
.attr('cx', 2) | |
.attr('cy', 2) | |
.attr('r', 2) | |
.attr('style', "stroke:none;fill:#eee"); | |
// initialization | |
d3 | |
.select('#svg-maintainability') | |
.datum(data) | |
.call(bubble) | |
; | |
var node = svg.selectAll(".node") | |
.data( | |
bubble.nodes(mapDatas(data)) | |
.filter(function(d) { return !d.children; }) | |
) | |
.enter().append("g") | |
.attr("class", "node"); | |
node | |
.append('circle') | |
// uncomment following line if you want fixed size for your bubble (cyclo=1 => size=1) | |
//.attr("r", function(d) { return r(d.value);}) | |
.attr("r", function(d) { return d.r; }) | |
.attr("x", function(d) { return x(d.x)}) | |
.attr("y", function(d) { return y(d.y)}) | |
.attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; }) | |
// events | |
.on('mouseover', function(d) { | |
var text = '<strong>' + d.name + '</strong>' | |
+ "<br />Cyclomatic Complexity : " + format(d.cyclomaticComplexity) | |
+ "<br />Maintainability Index: " + format(d.maintenabilityIndex); | |
d3.select('.tooltip').html(text); | |
d3.select(".tooltip").style("opacity", 1); | |
}) | |
.on('mousemove', function() { | |
d3.select(".tooltip") | |
.style("left", (d3.event.pageX + 5) + "px") | |
.style("top", (d3.event.pageY + 5) + "px"); | |
}) | |
.on('mouseout', function() { | |
d3.select(".tooltip").style("opacity", 0); | |
}) | |
// for colorblinds | |
.style("fill", function(d) { | |
if(accessibilityEnabled) { | |
return 'url(#hash-'+ validate('maintenabilityIndex', d.maintenabilityIndex) +')' | |
} | |
switch(validate('maintenabilityIndex', d.maintenabilityIndex)) { | |
case 'good': | |
return '#78BA00'; | |
case 'warning': | |
return '#F4B300'; | |
case 'critical': | |
return '#FF2E12'; | |
default: | |
return '#CCCCCC'; | |
} | |
}) | |
.style('stroke-width', function(d) { | |
return accessibilityEnabled ? 1 : 0; | |
}) | |
.style('stroke', '#000') | |
; | |
// tooltip | |
d3.select("body") | |
.append("div") | |
.attr("class", "tooltip") | |
.style("opacity", 0); | |
// Save as | |
function mapDatas(root) { | |
var datas = []; | |
var i, color; | |
for(i in root) { | |
var e = root[i]; | |
datas.push({ | |
"value": parseFloat(e.cyclomaticComplexity) + 1 | |
, "name": e.filename | |
, "cyclomaticComplexity": parseFloat(e.cyclomaticComplexity) | |
, "maintenabilityIndex": parseInt(e.maintenabilityIndex) | |
}); | |
} | |
return {"children":datas}; | |
} | |
d3.select(self.frameElement).style("height", maxWidth + "px"); | |
// Save as | |
document.getElementById('btn-save-maintainability').onmouseover = function() { | |
var e = this; | |
if(e.className != 'initialized') { | |
var svgc = document.getElementById('svg-maintainability').childNodes[0] | |
, xml = new XMLSerializer().serializeToString(svgc) | |
, xmldata = btoa(xml); | |
e.href = 'data:application/octet-stream;base64,' + xmldata; | |
e.className = 'initialized'; | |
} | |
}; | |
} | |
</script> | |
<script type="text/javascript"> | |
function updateCustomChart() { | |
chartCustom(xAxis, yAxis, rAxis); | |
document.getElementById('title-custom').innerHTML = textify(xAxis) + ' / ' + textify(yAxis); | |
}; | |
function chartCustom(xData, yData, rData) { | |
var chart; | |
nv.addGraph(function() { | |
chart = nv.models.scatterChart() | |
.showDistX(true) | |
.showDistY(true) | |
.showLegend(false) | |
.useVoronoi(false) | |
.color(d3.scale.category10().range()) | |
.transitionDuration(300) | |
; | |
chart.xAxis.tickFormat(d3.format('.02f')).axisLabel(textify(xData)); | |
chart.yAxis.tickFormat(d3.format('.02f')).axisLabel(textify(yData)); | |
chart.tooltipContent(function(key, x, y, e, graph) { | |
return '<h2>' + e.point.title + '</h2>'; | |
}); | |
chart.scatter.useVoronoi(false); | |
d3.select("#svg-custom").select("svg") | |
.attr("width",380) | |
.attr("height",300) | |
.datum(mapDatas(data)) | |
.call(chart); | |
nv.utils.windowResize(chart.update); | |
chart.dispatch.on('stateChange', function(e) { ('New State:', JSON.stringify(e)); }); | |
// Save as | |
var svg = document.getElementById('svg-custom').childNodes[0], | |
xml = new XMLSerializer().serializeToString(svg), | |
xmldata = btoa(xml), | |
img = new Image(); | |
document.getElementById('btn-save-custom').href = 'data:application/octet-stream;base64,' + xmldata; | |
return chart; | |
}); | |
function mapDatas(root) { | |
var results = [ | |
{ key: textify(xData) + " / " + textify(yData) + " chart", "values": [] } | |
]; | |
var i; | |
for(i in root) { | |
var e = root[i]; | |
results[0].values.push({ | |
"title": e.filename | |
, "x": Math.max(0,parseFloat(e[xData])) | |
, "y": Math.max(0,parseFloat(e[yData])) | |
, size: Math.max(0,parseFloat(e[rData])) | |
, shape: 'round' | |
}); | |
} | |
return results; | |
} | |
} | |
</script> | |
<script type="text/javascript"> | |
function updateAbstractnessChart() { | |
chartAbstractness(); | |
}; | |
function chartAbstractness() { | |
if(chartAbstractness.initiazed) return; | |
chartAbstractness.initiazed = true; | |
var xData = 'abstractness'; | |
var yData = 'instability'; | |
var rData = 'loc'; | |
var chart; | |
nv.addGraph(function() { | |
chart = nv.models.scatterChart() | |
.showDistX(true) | |
.showDistY(true) | |
.useVoronoi(false) | |
.showLegend(false) | |
.color(d3.scale.category10().range()) | |
.transitionDuration(300) | |
.forceY([0, 1]) | |
.forceX([0, 1]) | |
; | |
chart.xAxis.tickFormat(d3.format('.02f')) | |
.axisLabel('Abstractness'); | |
chart.yAxis.tickFormat(d3.format('.02f')) | |
.axisLabel('Instability') | |
chart.tooltipContent(function(key, x, y, e, graph) { | |
return '<h2>' + e.point.name + '</h2>'; | |
}); | |
chart.scatter.useVoronoi(false); | |
d3.select("#svg-abstractness").select("svg") | |
.attr("width",380) | |
.attr("height",300) | |
.attr("class",'svg') | |
.datum(mapDatas(groupedData)) | |
.call(chart); | |
nv.utils.windowResize(chart.update); | |
chart.dispatch.on('stateChange', function(e) { ('New State:', JSON.stringify(e)); }); | |
// line (legend) | |
chart = nv.models.lineChart() | |
.options({ | |
margin: {left: 75, bottom: 50}, | |
x: function(d,i) { return i}, | |
showXAxis: false, | |
showYAxis: false, | |
showLegend: false, | |
transitionDuration: 300 | |
}) | |
.forceY([0, 1]) | |
.forceX([0, 1]) | |
; | |
d3.select("#svg-abstractness").select("svg") | |
.datum([{key:" ", values:[ {x:0, y:1}, {x:1, y:0} ] , color: '#EEE' }]) | |
.attr("width",380) | |
.attr("height",300) | |
.call(chart); | |
// btn save as | |
var svg = document.getElementById('svg-abstractness').childNodes[0], | |
xml = new XMLSerializer().serializeToString(svg), | |
xmldata = btoa(xml); | |
document.getElementById('btn-save-abstractness').href = 'data:application/octet-stream;base64,' + xmldata; | |
return chart; | |
}); | |
function mapDatas(root) { | |
var results = [ | |
{ key: textify(xData) + " / " + textify(yData) + " chart", "values": [] } | |
]; | |
var i; | |
for(i in root) { | |
var e = root[i]; | |
results[0].values.push({ | |
"name": e.name | |
, "x": Math.max(0,parseFloat(e[xData])) | |
, "y": Math.max(0,parseFloat(e[yData])) | |
, size: Math.max(0,parseFloat([rData])) | |
, shape: 'round' | |
}); | |
} | |
return results; | |
} | |
} | |
</script> | |
<script type="text/javascript"> | |
/** | |
* Thank's to http://bl.ocks.org/mbostock/raw/7607999/ | |
*/ | |
var relations = [{"name":"MessageDataCollector","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"PropelFactory","size":3000,"relations":["\\Symfony\\Bridge\\Propel1\\DependencyInjection\\Security\\UserProvider\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"CollectionToArrayTransformer","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Form\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException","Doctrine\\Common\\Collections\\ArrayCollection"]},{"name":"TranslationFormListener","size":3000,"relations":["\\Symfony\\Bridge\\Propel1\\Form\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\FormEvent"]},{"name":"TranslationCollectionFormListener","size":3000,"relations":["\\Symfony\\Bridge\\Propel1\\Form\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","\\$this->i18nClass","Symfony\\Component\\Form\\FormEvent"]},{"name":"TranslationType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Bridge\\Propel1\\Form\\EventListener\\TranslationFormListener","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"ModelType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\PropertyAccess\\PropertyAccess","Symfony\\Bridge\\Propel1\\Form\\DataTransformer\\CollectionToArrayTransformer","Symfony\\Bridge\\Propel1\\Form\\ChoiceList\\ModelChoiceList","Symfony\\Component\\PropertyAccess\\PropertyAccessorInterface","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"TranslationCollectionType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\OptionsResolver\\Exception\\MissingOptionsException","Symfony\\Bridge\\Propel1\\Form\\EventListener\\TranslationCollectionFormListener","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"PropelExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","\\Type\\ModelType","Symfony\\Component\\PropertyAccess\\PropertyAccess","\\Type\\TranslationCollectionType","\\Type\\TranslationType","\\PropelTypeGuesser"]},{"name":"PropelTypeGuesser","size":3000,"relations":["\\Symfony\\Bridge\\Propel1\\Form\\","Symfony\\Component\\Form\\Guess\\TypeGuess","Symfony\\Component\\Form\\Guess\\Guess","\\RelationMap","\\PropelColumnTypes","Symfony\\Component\\Form\\Guess\\ValueGuess","\\$queryClass"]},{"name":"ModelChoiceList","size":3000,"relations":["Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ObjectChoiceList","Symfony\\Component\\OptionsResolver\\Exception\\MissingOptionsException","Symfony\\Component\\OptionsResolver\\Exception\\InvalidOptionsException","\\$queryClass","\\parent","Symfony\\Component\\Form\\Exception\\StringCastException","\\PDO","\\ColumnMap"]},{"name":"PropelDataCollector","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Bridge\\Propel1\\Logger\\PropelLogger","\\PropelConfiguration","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"PropelLogger","size":3000,"relations":["\\Symfony\\Bridge\\Propel1\\Logger\\","Psr\\Log\\LoggerInterface","Symfony\\Component\\Stopwatch\\Stopwatch"]},{"name":"PropelUserProvider","size":3000,"relations":["\\Symfony\\Bridge\\Propel1\\Security\\User\\","\\$queryClass","Symfony\\Component\\Security\\Core\\Exception\\UsernameNotFoundException","Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"ProxyDumper","size":3000,"relations":["\\Symfony\\Bridge\\ProxyManager\\LazyProxy\\PhpDumper\\","ProxyManager\\ProxyGenerator\\LazyLoadingValueHolderGenerator","ProxyManager\\GeneratorStrategy\\BaseGeneratorStrategy","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Container","ProxyManager\\Generator\\ClassGenerator","\\ReflectionClass","Symfony\\Component\\DependencyInjection\\Definition"]},{"name":"RuntimeInstantiator","size":3000,"relations":["\\Symfony\\Bridge\\ProxyManager\\LazyProxy\\Instantiator\\","ProxyManager\\Configuration","ProxyManager\\GeneratorStrategy\\EvaluatingGeneratorStrategy","ProxyManager\\Factory\\LazyLoadingValueHolderFactory","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Definition","ProxyManager\\Proxy\\LazyLoadingInterface"]},{"name":"Logger","size":3000,"relations":["Monolog\\Logger","\\parent","\\Symfony\\Bridge\\Monolog\\Monolog\\Logger"]},{"name":"ConsoleFormatter","size":3000,"relations":["Monolog\\Formatter\\LineFormatter","\\parent","Monolog\\Logger"]},{"name":"WebProcessor","size":3000,"relations":["Monolog\\Processor\\WebProcessor","\\parent","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"ConsoleHandler","size":3000,"relations":["Monolog\\Handler\\AbstractProcessingHandler","\\parent","Monolog\\Logger","Symfony\\Component\\Console\\ConsoleEvents","Symfony\\Bridge\\Monolog\\Formatter\\ConsoleFormatter","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\Console\\Event\\ConsoleCommandEvent","Symfony\\Component\\Console\\Event\\ConsoleTerminateEvent"]},{"name":"ChromePhpHandler","size":3000,"relations":["Monolog\\Handler\\ChromePHPHandler","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent"]},{"name":"DebugHandler","size":3000,"relations":["Monolog\\Handler\\TestHandler","Monolog\\Logger"]},{"name":"NotFoundActivationStrategy","size":3000,"relations":["Monolog\\Handler\\FingersCrossed\\ErrorLevelActivationStrategy","\\parent","Symfony\\Component\\HttpFoundation\\RequestStack"]},{"name":"FirePHPHandler","size":3000,"relations":["Monolog\\Handler\\FirePHPHandler","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent"]},{"name":"SwiftMailerHandler","size":3000,"relations":["Monolog\\Handler\\SwiftMailerHandler","\\parent","\\Exception","\\Swift_Transport","Symfony\\Component\\HttpKernel\\Event\\PostResponseEvent","Symfony\\Component\\Console\\Event\\ConsoleTerminateEvent"]},{"name":"TwigEngine","size":3000,"relations":["Symfony\\Bridge\\Twig\\TwigEngine","\\parent","\\TwigDefaultEscapingStrategy","Symfony\\Component\\HttpFoundation\\Response","\\Twig_Environment","Symfony\\Component\\Templating\\TemplateNameParserInterface","Symfony\\Component\\Config\\FileLocatorInterface"]},{"name":"TwigRendererInterface","size":3000,"relations":["Symfony\\Component\\Form\\FormRendererInterface","\\Twig_Environment"]},{"name":"TwigRendererEngineInterface","size":3000,"relations":["Symfony\\Component\\Form\\FormRendererEngineInterface","\\Twig_Environment"]},{"name":"TwigRendererEngine","size":3000,"relations":["Symfony\\Component\\Form\\AbstractRendererEngine","\\self","\\Twig_Environment","Symfony\\Component\\Form\\FormView"]},{"name":"TwigRenderer","size":3000,"relations":["Symfony\\Component\\Form\\FormRenderer","\\parent","\\TwigRendererEngineInterface","\\Twig_Environment"]},{"name":"TransDefaultDomainNode","size":3000,"relations":["\\Twig_Node","\\parent","\\Twig_Node_Expression","\\Twig_Compiler"]},{"name":"StopwatchNode","size":3000,"relations":["\\Twig_Node","\\parent","\\Twig_NodeInterface","\\Twig_Node_Expression_AssignName","\\Twig_Compiler"]},{"name":"RenderBlockNode","size":3000,"relations":["\\Twig_Node_Expression_Function","\\Twig_Compiler"]},{"name":"TransNode","size":3000,"relations":["\\Twig_Node","\\parent","\\Twig_Node_Expression_Array","\\Twig_Node_Expression_Constant","\\Twig_Node_Expression_Name","\\Twig_NodeInterface","\\Twig_Node_Expression","\\Twig_Compiler"]},{"name":"SearchAndRenderBlockNode","size":3000,"relations":["\\Twig_Node_Expression_Function","\\Twig_Node_Expression_Array","\\Twig_Node_Expression_Constant","\\Twig_Compiler"]},{"name":"DumpNode","size":3000,"relations":["\\Twig_Node","\\parent","\\Twig_NodeInterface","\\Twig_Compiler"]},{"name":"FormThemeNode","size":3000,"relations":["\\Twig_Node","\\parent","\\Twig_NodeInterface","\\Twig_Compiler"]},{"name":"FormEnctypeNode","size":3000,"relations":["\\Symfony\\Bridge\\Twig\\Node\\SearchAndRenderBlockNode","\\parent","\\Twig_Compiler"]},{"name":"LintCommand","size":3000,"relations":["Symfony\\Bridge\\Twig\\Command\\LintCommand","\\parent","Symfony\\Component\\Finder\\Finder","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"TranslationDefaultDomainNodeVisitor","size":3000,"relations":["\\Symfony\\Bridge\\Twig\\NodeVisitor\\","\\Scope","\\Twig_Node_Expression_AssignName","\\Twig_Node_Expression_Name","\\Twig_Node_Set","\\Twig_Node","\\Twig_Node_Expression_Array","\\Twig_NodeInterface","\\Twig_Environment"]},{"name":"TranslationNodeVisitor","size":3000,"relations":["\\Symfony\\Bridge\\Twig\\NodeVisitor\\","\\self","\\Twig_NodeInterface","\\Twig_Environment","\\Twig_Node"]},{"name":"Scope","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\"]},{"name":"TransChoiceTokenParser","size":3000,"relations":["\\Symfony\\Bridge\\Twig\\TokenParser\\TransTokenParser","\\Twig_Node_Expression_Array","\\Twig_Token","\\Twig_Error_Syntax","Symfony\\Bridge\\Twig\\Node\\TransNode"]},{"name":"TransDefaultDomainTokenParser","size":3000,"relations":["\\Twig_TokenParser","\\Twig_Token","Symfony\\Bridge\\Twig\\Node\\TransDefaultDomainNode"]},{"name":"StopwatchTokenParser","size":3000,"relations":["\\Twig_TokenParser","\\Twig_Token","Symfony\\Bridge\\Twig\\Node\\StopwatchNode","\\Twig_Node_Expression_AssignName"]},{"name":"FormThemeTokenParser","size":3000,"relations":["\\Twig_TokenParser","\\Twig_Token","\\Twig_Node_Expression_Array","Symfony\\Bridge\\Twig\\Node\\FormThemeNode"]},{"name":"DumpTokenParser","size":3000,"relations":["\\Twig_TokenParser","\\Twig_Token","Symfony\\Bridge\\Twig\\Node\\DumpNode"]},{"name":"TransTokenParser","size":3000,"relations":["\\Twig_TokenParser","\\Twig_Node_Expression_Array","\\Twig_Token","\\Twig_Error_Syntax","Symfony\\Bridge\\Twig\\Node\\TransNode"]},{"name":"TwigExtractor","size":3000,"relations":["\\Symfony\\Bridge\\Twig\\Translation\\","Symfony\\Component\\Finder\\Finder","\\Twig_Environment","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"HttpKernelExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFunction","Symfony\\Component\\HttpKernel\\Controller\\ControllerReference","Symfony\\Component\\HttpKernel\\Fragment\\FragmentHandler"]},{"name":"TranslationExtension","size":3000,"relations":["\\Twig_Extension","Symfony\\Bridge\\Twig\\NodeVisitor\\TranslationNodeVisitor","\\Twig_SimpleFilter","Symfony\\Bridge\\Twig\\TokenParser\\TransTokenParser","Symfony\\Bridge\\Twig\\TokenParser\\TransChoiceTokenParser","Symfony\\Bridge\\Twig\\TokenParser\\TransDefaultDomainTokenParser","Symfony\\Bridge\\Twig\\NodeVisitor\\TranslationDefaultDomainNodeVisitor","Symfony\\Component\\Translation\\TranslatorInterface","\\Twig_NodeVisitorInterface"]},{"name":"ExpressionExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFunction","Symfony\\Component\\ExpressionLanguage\\Expression"]},{"name":"CodeExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFilter","\\self"]},{"name":"FormExtension","size":3000,"relations":["\\Twig_Extension","Symfony\\Bridge\\Twig\\TokenParser\\FormThemeTokenParser","\\Twig_SimpleFunction","\\Twig_SimpleFilter","\\Twig_SimpleTest","Symfony\\Bridge\\Twig\\Form\\TwigRendererInterface","\\Twig_Environment","Symfony\\Component\\Form\\Extension\\Core\\View\\ChoiceView"]},{"name":"StopwatchExtension","size":3000,"relations":["\\Twig_Extension","Symfony\\Bridge\\Twig\\TokenParser\\StopwatchTokenParser","Symfony\\Component\\Stopwatch\\Stopwatch"]},{"name":"RoutingExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFunction","Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface","\\Twig_Node"]},{"name":"YamlExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFilter","\\Symfony\\Bridge\\Twig\\Extension\\Symfony\\Component\\Yaml\\Dumper"]},{"name":"SecurityExtension","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","Symfony\\Component\\DependencyInjection\\Loader\\XmlFileLoader","Symfony\\Component\\Config\\FileLocator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException","Symfony\\Component\\DependencyInjection\\Parameter","Symfony\\Component\\DependencyInjection\\Alias","\\MainConfiguration","\\RuntimeException","Symfony\\Component\\Security\\Core\\Authorization\\ExpressionLanguage","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\SecurityFactoryInterface","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\UserProvider\\UserProviderFactoryInterface"]},{"name":"DumpExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFunction","Symfony\\Bridge\\Twig\\TokenParser\\DumpTokenParser","Symfony\\Component\\VarDumper\\Dumper\\HtmlDumper","Symfony\\Component\\VarDumper\\Cloner\\ClonerInterface","\\Twig_Environment"]},{"name":"DoctrineValidationPass","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\DependencyInjection\\CompilerPass\\","\\ReflectionClass","Symfony\\Component\\Config\\Resource\\FileResource","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"RegisterEventListenersAndSubscribersPass","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\DependencyInjection\\CompilerPass\\","\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Reference","\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"RegisterMappingsPass","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\DependencyInjection\\CompilerPass\\","\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Exception\\ParameterNotFoundException","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"EntityFactory","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\DependencyInjection\\Security\\UserProvider\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"AbstractDoctrineExtension","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","\\ReflectionClass","\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Definition","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\Config\\Resource\\FileResource","Symfony\\Component\\DependencyInjection\\Alias","\\LogicException","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ManagerRegistry","size":3000,"relations":["Doctrine\\Common\\Persistence\\AbstractManagerRegistry","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"DoctrineParserCache","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\ExpressionLanguage\\","Doctrine\\Common\\Cache\\Cache","Symfony\\Component\\ExpressionLanguage\\ParsedExpression"]},{"name":"MergeDoctrineCollectionListener","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Form\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\FormEvent"]},{"name":"DoctrineOrmTypeGuesser","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Form\\","Symfony\\Component\\Form\\Guess\\TypeGuess","Symfony\\Component\\Form\\Guess\\Guess","Symfony\\Component\\Form\\Guess\\ValueGuess","Doctrine\\Common\\Util\\ClassUtils","Doctrine\\Common\\Persistence\\ManagerRegistry"]},{"name":"EntityType","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Form\\Type\\DoctrineType","Symfony\\Bridge\\Doctrine\\Form\\ChoiceList\\ORMQueryBuilderLoader","Doctrine\\Common\\Persistence\\ObjectManager"]},{"name":"DoctrineType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\PropertyAccess\\PropertyAccess","Symfony\\Bridge\\Doctrine\\Form\\EventListener\\MergeDoctrineCollectionListener","Symfony\\Bridge\\Doctrine\\Form\\DataTransformer\\CollectionToArrayTransformer","Symfony\\Bridge\\Doctrine\\Form\\ChoiceList\\EntityChoiceList","Symfony\\Component\\Form\\Exception\\RuntimeException","Doctrine\\Common\\Persistence\\ManagerRegistry","Symfony\\Component\\PropertyAccess\\PropertyAccessorInterface","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options","Doctrine\\Common\\Persistence\\ObjectManager"]},{"name":"DoctrineOrmExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","Symfony\\Bridge\\Doctrine\\Form\\Type\\EntityType","Symfony\\Component\\PropertyAccess\\PropertyAccess","\\DoctrineOrmTypeGuesser","Doctrine\\Common\\Persistence\\ManagerRegistry"]},{"name":"EntityLoaderInterface","size":3000,"relations":["\\"]},{"name":"ORMQueryBuilderLoader","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Form\\ChoiceList\\","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Doctrine\\DBAL\\Connection"]},{"name":"EntityChoiceList","size":3000,"relations":["Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ObjectChoiceList","\\parent","Symfony\\Component\\Form\\Exception\\StringCastException","Symfony\\Component\\Form\\Exception\\RuntimeException"]},{"name":"DoctrineDataCollector","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Doctrine\\DBAL\\Types\\Type","Doctrine\\Common\\Persistence\\ManagerRegistry","Doctrine\\DBAL\\Logging\\DebugStack","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"ProxyCacheWarmer","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\CacheWarmer\\","\\RuntimeException","Doctrine\\Common\\Persistence\\ManagerRegistry"]},{"name":"RegistryInterface","size":3000,"relations":["Doctrine\\Common\\Persistence\\ManagerRegistry"]},{"name":"DbalLogger","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Logger\\","\\self","Psr\\Log\\LoggerInterface","Symfony\\Component\\Stopwatch\\Stopwatch"]},{"name":"DoctrineInitializer","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Validator\\","Doctrine\\Common\\Persistence\\ManagerRegistry"]},{"name":"UniqueEntityValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","Doctrine\\Common\\Persistence\\ManagerRegistry","Symfony\\Component\\Validator\\Constraint"]},{"name":"UniqueEntity","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\self"]},{"name":"EntityUserProvider","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Security\\User\\","\\InvalidArgumentException","Symfony\\Component\\Security\\Core\\Exception\\UsernameNotFoundException","Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException","Doctrine\\Common\\Persistence\\ManagerRegistry","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"DoctrineTokenProvider","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Security\\RememberMe\\","\\PDO","Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\PersistentToken","\\DateTime","Symfony\\Component\\Security\\Core\\Exception\\TokenNotFoundException","\\Symfony\\Bridge\\Doctrine\\Security\\RememberMe\\Doctrine\\DBAL\\Types\\Type","Doctrine\\DBAL\\Connection","Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\PersistentTokenInterface"]},{"name":"ContainerAwareLoader","size":3000,"relations":["Doctrine\\Common\\DataFixtures\\Loader","\\parent","Symfony\\Component\\DependencyInjection\\ContainerInterface","Doctrine\\Common\\DataFixtures\\FixtureInterface"]},{"name":"ContainerAwareEventManager","size":3000,"relations":["Doctrine\\Common\\EventManager","Doctrine\\Common\\EventArgs","\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"DbalSessionHandler","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\HttpFoundation\\","\\PDO","\\RuntimeException","Doctrine\\DBAL\\Connection"]},{"name":"DbalSessionHandlerSchema","size":3000,"relations":["Doctrine\\DBAL\\Schema\\Schema","\\parent","Doctrine\\DBAL\\Schema\\Schema"]},{"name":"DoctrineTestHelper","size":3000,"relations":["\\Symfony\\Bridge\\Doctrine\\Test\\","\\PDO","\\PHPUnit_Framework_TestCase","\\Doctrine\\ORM\\Configuration","Doctrine\\ORM\\Mapping\\Driver\\AnnotationDriver","Doctrine\\Common\\Annotations\\AnnotationReader","\\Doctrine\\Common\\Cache\\ArrayCache","Doctrine\\ORM\\EntityManager"]},{"name":"WebProfilerExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFunction","Symfony\\Component\\HttpKernel\\DataCollector\\Util\\ValueExporter"]},{"name":"Configuration","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\","Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder","Symfony\\Component\\Config\\Definition\\Builder\\ArrayNodeDefinition"]},{"name":"WebDebugToolbarListener","size":3000,"relations":["\\Symfony\\Bundle\\WebProfilerBundle\\EventListener\\","\\self","Symfony\\Component\\HttpKernel\\KernelEvents","\\Twig_Environment","Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"ImportCommand","size":3000,"relations":["Symfony\\Component\\Console\\Command\\Command","\\parent","Symfony\\Component\\Console\\Input\\InputArgument","\\RuntimeException","\\LogicException","Symfony\\Component\\HttpKernel\\Profiler\\Profiler","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ExportCommand","size":3000,"relations":["Symfony\\Component\\Console\\Command\\Command","\\parent","Symfony\\Component\\Console\\Input\\InputArgument","\\LogicException","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\HttpKernel\\Profiler\\Profiler","Symfony\\Component\\Console\\Input\\InputInterface"]},{"name":"ProfilerController","size":3000,"relations":["\\Symfony\\Bundle\\WebProfilerBundle\\Controller\\","Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException","Symfony\\Component\\HttpFoundation\\RedirectResponse","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Bundle\\WebProfilerBundle\\Profiler\\TemplateManager","Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface","Symfony\\Component\\HttpKernel\\Profiler\\Profiler","\\Twig_Environment","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"ExceptionController","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\Controller\\","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Bundle\\FrameworkBundle\\Templating\\TemplateReference","\\Twig_Environment","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpKernel\\Exception\\FlattenException","Symfony\\Component\\HttpKernel\\Log\\DebugLoggerInterface"]},{"name":"RouterController","size":3000,"relations":["\\Symfony\\Bundle\\WebProfilerBundle\\Controller\\","Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Routing\\Matcher\\TraceableUrlMatcher","Symfony\\Component\\HttpKernel\\Profiler\\Profiler","\\Twig_Environment","Symfony\\Component\\Routing\\Matcher\\UrlMatcherInterface","Symfony\\Component\\Routing\\RouteCollection"]},{"name":"TemplateManager","size":3000,"relations":["\\Symfony\\Bundle\\WebProfilerBundle\\Profiler\\","Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException","\\UnexpectedValueException","Symfony\\Component\\HttpKernel\\Profiler\\Profiler","\\Twig_Environment","Symfony\\Component\\HttpKernel\\Profiler\\Profile"]},{"name":"WebProfilerBundle","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Bundle\\Bundle"]},{"name":"TwigExtension","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","Symfony\\Component\\DependencyInjection\\Loader\\XmlFileLoader","Symfony\\Component\\Config\\FileLocator","\\ReflectionClass","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ExceptionListenerPass","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TwigEnvironmentPass","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TwigLoaderPass","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Exception\\LogicException","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ExtensionPass","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\","\\ReflectionClass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TwigDefaultEscapingStrategy","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\"]},{"name":"TemplateCacheCacheWarmer","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\CacheWarmer\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Bundle\\FrameworkBundle\\CacheWarmer\\TemplateFinderInterface"]},{"name":"FilesystemLoader","size":3000,"relations":["\\Symfony\\Component\\Templating\\Loader\\Loader","\\self","Symfony\\Component\\Templating\\Storage\\FileStorage","Symfony\\Component\\Templating\\TemplateReferenceInterface"]},{"name":"RenderNode","size":3000,"relations":["\\Twig_Node","\\parent","\\Twig_Node_Expression","\\Twig_Compiler"]},{"name":"DebugCommand","size":3000,"relations":["Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","\\ReflectionMethod","\\ReflectionFunction","\\UnexpectedValueException","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"TwigBundle","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Bundle\\Bundle","\\parent","Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\ExtensionPass","Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\TwigEnvironmentPass","Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\TwigLoaderPass","Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\ExceptionListenerPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"PreviewErrorController","size":3000,"relations":["\\Symfony\\Bundle\\TwigBundle\\Controller\\","Symfony\\Component\\HttpKernel\\Exception\\FlattenException","\\Exception","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"RenderTokenParser","size":3000,"relations":["\\Twig_TokenParser","\\Twig_Token","\\Twig_Node_Expression_Array","Symfony\\Bundle\\TwigBundle\\Node\\RenderNode"]},{"name":"TimedTwigEngine","size":3000,"relations":["Symfony\\Bundle\\TwigBundle\\TwigEngine","\\parent","\\Twig_Environment","Symfony\\Component\\Templating\\TemplateNameParserInterface","Symfony\\Component\\Config\\FileLocatorInterface","Symfony\\Component\\Stopwatch\\Stopwatch"]},{"name":"ActionsExtension","size":3000,"relations":["\\Twig_Extension","Symfony\\Bundle\\TwigBundle\\TokenParser\\RenderTokenParser","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"AssetsExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFunction","\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\Routing\\RequestContext"]},{"name":"DumpDataCollectorPass","size":3000,"relations":["\\Symfony\\Bundle\\DebugBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"DebugExtension","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","\\Configuration","Symfony\\Component\\DependencyInjection\\Loader\\XmlFileLoader","Symfony\\Component\\Config\\FileLocator","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"DebugBundle","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Bundle\\Bundle","Symfony\\Component\\VarDumper\\VarDumper","Symfony\\Component\\VarDumper\\Dumper\\CliDumper","\\parent","Symfony\\Bundle\\DebugBundle\\DependencyInjection\\Compiler\\DumpDataCollectorPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AddSecurityVotersPass","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Compiler\\","\\SplPriorityQueue","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"InMemoryFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\UserProvider\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"UserProviderFactoryInterface","size":3000,"relations":["\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"SimpleFormFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\FormLoginFactory","\\parent","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AbstractFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"SecurityFactoryInterface","size":3000,"relations":["\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"SimplePreAuthenticationFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"HttpBasicFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"RememberMeFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"HttpDigestFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"X509Factory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"RemoteUserFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition"]},{"name":"FormLoginFactory","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\AbstractFactory","\\parent","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"MainConfiguration","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\","Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder","Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManager","\\LogicException","Symfony\\Component\\Config\\Definition\\Builder\\ArrayNodeDefinition"]},{"name":"SecurityBundle","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Bundle\\Bundle","\\parent","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\FormLoginFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\HttpBasicFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\HttpDigestFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\RememberMeFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\X509Factory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\RemoteUserFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\SimplePreAuthenticationFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\SimpleFormFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\UserProvider\\InMemoryFactory","Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Compiler\\AddSecurityVotersPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AclSchemaListener","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\EventListener\\","Symfony\\Component\\Security\\Acl\\Dbal\\Schema","Doctrine\\ORM\\Tools\\Event\\GenerateSchemaEventArgs"]},{"name":"LogoutUrlHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","\\InvalidArgumentException","Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"SecurityHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","Symfony\\Component\\Security\\Acl\\Voter\\FieldVote","Symfony\\Component\\Security\\Core\\SecurityContextInterface"]},{"name":"SecurityDataCollector","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\TokenStorageInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception","Symfony\\Component\\Security\\Core\\Role\\RoleInterface"]},{"name":"SetAclCommand","size":3000,"relations":["Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","\\parent","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Security\\Acl\\Domain\\ObjectIdentity","\\InvalidArgumentException","Symfony\\Component\\Security\\Acl\\Domain\\UserSecurityIdentity","Symfony\\Component\\Security\\Acl\\Domain\\RoleSecurityIdentity","Symfony\\Component\\Security\\Acl\\Permission\\MaskBuilder","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"InitAclCommand","size":3000,"relations":["Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"FirewallContext","size":3000,"relations":["\\Symfony\\Bundle\\SecurityBundle\\Security\\","Symfony\\Component\\Security\\Http\\Firewall\\ExceptionListener"]},{"name":"FirewallMap","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"LogoutUrlExtension","size":3000,"relations":["\\Twig_Extension","\\Twig_SimpleFunction","Symfony\\Bundle\\SecurityBundle\\Templating\\Helper\\LogoutUrlHelper"]},{"name":"SerializerPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","\\RuntimeException","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ProfilerPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","\\SplPriorityQueue","\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"FormPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TemplatingPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AddConstraintValidatorsPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"CompilerDebugDumpPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","\\self","Symfony\\Component\\Filesystem\\Filesystem","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"ContainerBuilderDebugDumpPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Dumper\\XmlDumper","Symfony\\Component\\Filesystem\\Filesystem","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AddCacheWarmerPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"LoggingTranslatorPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","\\ReflectionClass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"FragmentRendererPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","\\ReflectionClass","\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TemplatingAssetHelperPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TranslationExtractorPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","\\RuntimeException","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AddConsoleCommandPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","\\InvalidArgumentException","\\ReflectionClass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TranslationDumperPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TranslatorPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"RoutingResolverPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AddCacheClearerPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AddExpressionLanguageProvidersPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AddValidatorInitializersPass","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"FrameworkExtension","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","Symfony\\Component\\DependencyInjection\\Loader\\XmlFileLoader","Symfony\\Component\\Config\\FileLocator","Symfony\\Component\\DependencyInjection\\Exception\\LogicException","Symfony\\Component\\DependencyInjection\\Reference","\\Configuration","\\LogicException","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\DefinitionDecorator","\\ReflectionClass","Symfony\\Component\\Config\\Resource\\DirectoryResource","Symfony\\Component\\Finder\\Finder","Symfony\\Component\\Validator\\Validation","Symfony\\Component\\Config\\Resource\\FileResource","\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","\\SplFileInfo"]},{"name":"SessionListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"TestSessionListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpFoundation\\Cookie","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent"]},{"name":"PathPackage","size":3000,"relations":["\\Symfony\\Component\\Templating\\Asset\\Package","\\parent"]},{"name":"PackageFactory","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Templating\\Asset\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"TemplateReference","size":3000,"relations":["\\Symfony\\Component\\Templating\\","\\InvalidArgumentException"]},{"name":"Debugger","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Templating\\","Psr\\Log\\LoggerInterface"]},{"name":"DelegatingEngine","size":3000,"relations":["\\Symfony\\Component\\Templating\\","\\LogicException","\\RuntimeException","\\EngineInterface"]},{"name":"TemplateLocator","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Templating\\Loader\\","\\InvalidArgumentException","Symfony\\Component\\Config\\FileLocatorInterface"]},{"name":"TimedPhpEngine","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Templating\\PhpEngine","\\parent","Symfony\\Component\\Templating\\TemplateNameParserInterface","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\Templating\\Loader\\LoaderInterface","Symfony\\Component\\Stopwatch\\Stopwatch","\\GlobalVariables"]},{"name":"EngineInterface","size":3000,"relations":["\\"]},{"name":"GlobalVariables","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Templating\\","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"PhpEngine","size":3000,"relations":["\\Symfony\\Component\\Templating\\","\\RuntimeException","\\InvalidArgumentException","\\LogicException","\\self","Symfony\\Component\\Templating\\Helper\\HelperInterface"]},{"name":"TemplateFilenameParser","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Templating\\","\\TemplateReference"]},{"name":"ActionsHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","Symfony\\Component\\HttpKernel\\Controller\\ControllerReference","Symfony\\Component\\HttpKernel\\Fragment\\FragmentHandler"]},{"name":"RouterHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface"]},{"name":"TranslatorHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","Symfony\\Component\\Translation\\TranslatorInterface"]},{"name":"StopwatchHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","\\BadMethodCallException","Symfony\\Component\\Stopwatch\\Stopwatch"]},{"name":"CodeHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","\\Finfo","\\self"]},{"name":"RequestHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","\\InvalidArgumentException","\\LogicException"]},{"name":"FormHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","Symfony\\Component\\Form\\FormRendererInterface","Symfony\\Component\\Form\\FormView"]},{"name":"SessionHelper","size":3000,"relations":["Symfony\\Component\\Templating\\Helper\\Helper","\\InvalidArgumentException","\\LogicException"]},{"name":"TemplateNameParser","size":3000,"relations":["\\Symfony\\Component\\Templating\\","\\TemplateReference"]},{"name":"HttpCache","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\HttpCache\\","\\LogicException","Symfony\\Component\\HttpKernel\\HttpKernelInterface","\\DateTime","\\DateTimeZone","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"RouterDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","\\SplObjectStorage","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception","Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent"]},{"name":"AjaxDataCollector","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"RouterCacheWarmer","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\CacheWarmer\\","Symfony\\Component\\Routing\\RouterInterface"]},{"name":"TemplatePathsCacheWarmer","size":3000,"relations":["Symfony\\Component\\HttpKernel\\CacheWarmer\\CacheWarmer","\\TemplateFinderInterface","Symfony\\Bundle\\FrameworkBundle\\Templating\\Loader\\TemplateLocator"]},{"name":"TemplateFinder","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\CacheWarmer\\","Symfony\\Component\\Finder\\Finder","Symfony\\Component\\HttpKernel\\KernelInterface","Symfony\\Component\\Templating\\TemplateNameParserInterface","Symfony\\Component\\HttpKernel\\Bundle\\BundleInterface"]},{"name":"TemplateFinderInterface","size":3000,"relations":["\\"]},{"name":"YamlLintCommand","size":3000,"relations":["Symfony\\Component\\Console\\Command\\Command","Symfony\\Component\\Console\\Input\\InputOption","\\RuntimeException","Symfony\\Component\\Finder\\Finder","Symfony\\Component\\Yaml\\Parser","\\InvalidArgumentException","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"RouterDebugCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","\\parent","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Bundle\\FrameworkBundle\\Console\\Helper\\DescriptorHelper","\\InvalidArgumentException","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\Routing\\Route"]},{"name":"ServerStatusCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ServerCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ConfigDebugCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\AbstractConfigCommand","Symfony\\Component\\Console\\Input\\InputArgument","\\ReflectionMethod","Symfony\\Component\\Config\\Definition\\Processor","Symfony\\Component\\Yaml\\Yaml","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ServerRunCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","\\parent","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\Process\\PhpExecutableFinder","Symfony\\Component\\Process\\ProcessBuilder","Symfony\\Component\\Console\\Input\\InputInterface"]},{"name":"CacheClearCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputOption","\\RuntimeException","\\ReflectionObject","Symfony\\Component\\Finder\\Finder","\\$class","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\HttpKernel\\KernelInterface"]},{"name":"AssetsInstallCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","\\InvalidArgumentException","Symfony\\Component\\Filesystem\\Exception\\IOException","Symfony\\Component\\Finder\\Finder","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ConfigDumpReferenceCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\AbstractConfigCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Config\\Definition\\Dumper\\YamlReferenceDumper","Symfony\\Component\\Config\\Definition\\Dumper\\XmlReferenceDumper","\\InvalidArgumentException","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ContainerAwareCommand","size":3000,"relations":["Symfony\\Component\\Console\\Command\\Command","\\LogicException","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"RouterApacheDumperCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","\\parent","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Routing\\Matcher\\Dumper\\ApacheMatcherDumper","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\Console\\Input\\InputInterface"]},{"name":"AbstractConfigCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerDebugCommand","\\LogicException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\DependencyInjection\\Extension\\ExtensionInterface"]},{"name":"RouterMatchCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","\\parent","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Routing\\Matcher\\TraceableUrlMatcher","Symfony\\Component\\Console\\Input\\ArrayInput","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ContainerDebugCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Bundle\\FrameworkBundle\\Console\\Helper\\DescriptorHelper","\\InvalidArgumentException","\\LogicException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\Loader\\XmlFileLoader","Symfony\\Component\\Config\\FileLocator","Symfony\\Component\\Console\\Question\\ChoiceQuestion","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"CacheWarmupCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"EventDispatcherDebugCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Bundle\\FrameworkBundle\\Console\\Helper\\DescriptorHelper","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"TranslationDebugCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Translation\\MessageCatalogue","Symfony\\Component\\Translation\\Catalogue\\MergeOperation","Symfony\\Component\\Console\\Helper\\Table","\\self","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"TranslationUpdateCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Translation\\MessageCatalogue","Symfony\\Component\\Translation\\Catalogue\\DiffOperation","Symfony\\Component\\Translation\\Catalogue\\MergeOperation","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ServerStartCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ServerCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Process\\PhpExecutableFinder","Symfony\\Component\\Process\\Process","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ServerCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","\\parent"]},{"name":"ServerStopCommand","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Command\\ServerCommand","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ConstraintValidatorFactory","size":3000,"relations":["\\Symfony\\Component\\Validator\\","Symfony\\Component\\Validator\\Constraints\\ExpressionValidator","\\$className","\\Constraint"]},{"name":"TemplateController","size":3000,"relations":["Symfony\\Component\\DependencyInjection\\ContainerAware"]},{"name":"RedirectController","size":3000,"relations":["Symfony\\Component\\DependencyInjection\\ContainerAware","Symfony\\Component\\HttpKernel\\Exception\\HttpException","Symfony\\Component\\HttpFoundation\\RedirectResponse","Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"Controller","size":3000,"relations":["Symfony\\Component\\DependencyInjection\\ContainerAware","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\RedirectResponse","\\LogicException","Symfony\\Component\\HttpFoundation\\StreamedResponse","Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException","Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException","Symfony\\Component\\Security\\Csrf\\CsrfToken","\\Exception"]},{"name":"ControllerResolver","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Controller\\","\\InvalidArgumentException","\\ReflectionMethod","\\ReflectionObject","\\ReflectionFunction","\\RuntimeException","\\$class","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"ControllerNameParser","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Controller\\","\\InvalidArgumentException","Symfony\\Component\\HttpKernel\\KernelInterface"]},{"name":"Client","size":3000,"relations":["\\Symfony\\Component\\BrowserKit\\","\\History","\\CookieJar","\\RuntimeException","\\Request","Symfony\\Component\\Process\\PhpProcess","\\LogicException","Symfony\\Component\\DomCrawler\\Crawler","Symfony\\Component\\DomCrawler\\Link"]},{"name":"Router","size":3000,"relations":["\\Symfony\\Component\\Routing\\","\\RequestContext","\\InvalidArgumentException","\\self","\\$this->options['matcher_class']","Symfony\\Component\\Config\\ConfigCache","\\$class","\\$this->options['generator_class']","\\$this->options['generator_dumper_class']","\\$this->options['matcher_dumper_class']","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface"]},{"name":"DelegatingLoader","size":3000,"relations":["\\Symfony\\Component\\Config\\Loader\\Loader","Symfony\\Component\\Config\\Exception\\FileLoaderLoadException","\\LoaderResolverInterface"]},{"name":"RedirectableUrlMatcher","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\UrlMatcher","\\parent","\\self","Symfony\\Component\\Routing\\Route"]},{"name":"FrameworkBundle","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Bundle\\Bundle","Symfony\\Component\\Debug\\ErrorHandler","Symfony\\Component\\HttpFoundation\\Request","\\parent","Symfony\\Component\\DependencyInjection\\Scope","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\RoutingResolverPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\ProfilerPass","Symfony\\Component\\EventDispatcher\\DependencyInjection\\RegisterListenersPass","Symfony\\Component\\DependencyInjection\\Compiler\\PassConfig","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TemplatingPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TemplatingAssetHelperPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddConstraintValidatorsPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddValidatorInitializersPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddConsoleCommandPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\FormPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TranslatorPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\LoggingTranslatorPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddCacheWarmerPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddCacheClearerPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddExpressionLanguageProvidersPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TranslationExtractorPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TranslationDumperPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\FragmentRendererPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\SerializerPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\ContainerBuilderDebugDumpPass","Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\CompilerDebugDumpPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ContainerAwareHIncludeFragmentRenderer","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Fragment\\HIncludeFragmentRenderer","\\parent","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\HttpKernel\\UriSigner"]},{"name":"PhpExtractor","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Translation\\","Symfony\\Component\\Finder\\Finder","\\PhpStringTokenParser","\\ArrayIterator","\\self","Symfony\\Component\\Translation\\MessageCatalogue","\\Iterator"]},{"name":"PhpStringTokenParser","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Translation\\","\\self"]},{"name":"TranslationLoader","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Translation\\","Symfony\\Component\\Finder\\Finder","Symfony\\Component\\Translation\\Loader\\LoaderInterface","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"Translator","size":3000,"relations":["\\Symfony\\Component\\Translation\\","\\MessageSelector","Symfony\\Component\\Config\\ConfigCache","\\MessageCatalogue","\\RuntimeException","\\InvalidArgumentException","Symfony\\Component\\Translation\\Loader\\LoaderInterface"]},{"name":"Descriptor","size":3000,"relations":["\\Symfony\\Component\\Console\\Descriptor\\","\\InvalidArgumentException","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"XmlDescriptor","size":3000,"relations":["\\Symfony\\Component\\Console\\Descriptor\\Descriptor","\\DOMDocument","\\ApplicationDescription","Symfony\\Component\\Console\\Input\\InputDefinition","Symfony\\Component\\Console\\Command\\Command","Symfony\\Component\\Console\\Application","\\DOMNode","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption"]},{"name":"TextDescriptor","size":3000,"relations":["\\Symfony\\Component\\Console\\Descriptor\\Descriptor","\\ApplicationDescription"]},{"name":"MarkdownDescriptor","size":3000,"relations":["\\Symfony\\Component\\Console\\Descriptor\\Descriptor","\\ApplicationDescription"]},{"name":"JsonDescriptor","size":3000,"relations":["\\Symfony\\Component\\Console\\Descriptor\\Descriptor","\\ApplicationDescription","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Console\\Input\\InputDefinition","Symfony\\Component\\Console\\Command\\Command"]},{"name":"Shell","size":3000,"relations":["\\Symfony\\Component\\Console\\","Symfony\\Component\\Console\\Output\\ConsoleOutput","Symfony\\Component\\Process\\PhpExecutableFinder","Symfony\\Component\\Process\\ProcessBuilder","Symfony\\Component\\Console\\Input\\StringInput","\\RuntimeException","\\Application"]},{"name":"DescriptorHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper","Symfony\\Component\\Console\\Descriptor\\TextDescriptor","Symfony\\Component\\Console\\Descriptor\\XmlDescriptor","Symfony\\Component\\Console\\Descriptor\\JsonDescriptor","Symfony\\Component\\Console\\Descriptor\\MarkdownDescriptor","\\InvalidArgumentException","Symfony\\Component\\Console\\Descriptor\\DescriptorInterface"]},{"name":"Application","size":3000,"relations":["\\Symfony\\Component\\Console\\","Symfony\\Component\\Console\\Input\\ArgvInput","Symfony\\Component\\Console\\Output\\ConsoleOutput","Symfony\\Component\\Console\\Input\\ArrayInput","Symfony\\Component\\Console\\Command\\Command","\\LogicException","\\InvalidArgumentException","Symfony\\Component\\Console\\Descriptor\\TextDescriptor","Symfony\\Component\\Console\\Output\\BufferedOutput","Symfony\\Component\\Console\\Descriptor\\XmlDescriptor","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\Console\\Event\\ConsoleCommandEvent","\\ConsoleEvents","Symfony\\Component\\Console\\Event\\ConsoleTerminateEvent","Symfony\\Component\\Console\\Event\\ConsoleExceptionEvent","Symfony\\Component\\Console\\Input\\InputDefinition","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Console\\Command\\HelpCommand","Symfony\\Component\\Console\\Command\\ListCommand","Symfony\\Component\\Console\\Helper\\HelperSet","Symfony\\Component\\Console\\Helper\\FormatterHelper","Symfony\\Component\\Console\\Helper\\DialogHelper","Symfony\\Component\\Console\\Helper\\ProgressHelper","Symfony\\Component\\Console\\Helper\\TableHelper","Symfony\\Component\\Console\\Helper\\DebugFormatterHelper","Symfony\\Component\\Console\\Helper\\ProcessHelper","Symfony\\Component\\Console\\Helper\\QuestionHelper","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\Console\\Input\\InputInterface"]},{"name":"WebTestCase","size":3000,"relations":["\\Symfony\\Bundle\\FrameworkBundle\\Test\\KernelTestCase","\\static"]},{"name":"KernelTestCase","size":3000,"relations":["\\PHPUnit_Framework_TestCase","\\RuntimeException","\\static","Symfony\\Component\\Finder\\Finder","\\static::$class"]},{"name":"FrozenParameterBag","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag","Symfony\\Component\\DependencyInjection\\Exception\\LogicException"]},{"name":"ParameterBagInterface","size":3000,"relations":["\\"]},{"name":"ParameterBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\InvalidArgumentException","\\ArrayIterator"]},{"name":"Definition","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\","\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Exception\\OutOfBoundsException","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException"]},{"name":"ExpressionLanguage","size":3000,"relations":["Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage","\\ExpressionLanguageProvider","\\parent"]},{"name":"Alias","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\"]},{"name":"ParameterNotFoundException","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","\\parent"]},{"name":"OutOfBoundsException","size":3000,"relations":["\\OutOfBoundsException"]},{"name":"LogicException","size":3000,"relations":["\\LogicException"]},{"name":"ExceptionInterface","size":3000,"relations":["\\"]},{"name":"ServiceNotFoundException","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","\\parent"]},{"name":"BadMethodCallException","size":3000,"relations":["\\BadMethodCallException"]},{"name":"ServiceCircularReferenceException","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","\\parent","\\Exception"]},{"name":"ScopeCrossingInjectionException","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","\\parent","\\Exception"]},{"name":"InactiveScopeException","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","\\parent","\\Exception"]},{"name":"ScopeWideningInjectionException","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","\\parent","\\Exception"]},{"name":"ParameterCircularReferenceException","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","\\parent","\\Exception"]},{"name":"RuntimeException","size":3000,"relations":["\\RuntimeException"]},{"name":"InvalidArgumentException","size":3000,"relations":["\\InvalidArgumentException"]},{"name":"DefinitionDecorator","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Definition","\\parent","Symfony\\Component\\DependencyInjection\\Exception\\OutOfBoundsException","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException"]},{"name":"ScopeInterface","size":3000,"relations":["\\"]},{"name":"ContainerAwareInterface","size":3000,"relations":["\\","\\ContainerInterface"]},{"name":"ClosureLoader","size":3000,"relations":["Symfony\\Component\\Config\\Loader\\Loader"]},{"name":"FileLoader","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\AbstractLoader","Symfony\\Component\\Validator\\Exception\\MappingException"]},{"name":"XmlFileLoader","size":3000,"relations":["Symfony\\Component\\Config\\Loader\\FileLoader","Symfony\\Component\\Routing\\RouteCollection","Symfony\\Component\\Config\\Resource\\FileResource","\\self","\\InvalidArgumentException","Symfony\\Component\\Routing\\Route","Symfony\\Component\\Config\\Util\\XmlUtils","\\static","\\DOMElement"]},{"name":"IniFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\parent","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"PhpFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\parent","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"YamlFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\Symfony\\Component\\Translation\\Loader\\Symfony\\Component\\Yaml\\Parser","\\parent","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"ContainerAware","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\","\\ContainerInterface"]},{"name":"XmlDumper","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Dumper\\Dumper","\\DOMDocument","Symfony\\Component\\DependencyInjection\\ContainerInterface","\\self","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","\\DOMElement","Symfony\\Component\\DependencyInjection\\Alias"]},{"name":"PhpDumper","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Dumper\\Dumper","\\parent","\\SplObjectStorage","Symfony\\Component\\DependencyInjection\\LazyProxy\\PhpDumper\\NullDumper","Symfony\\Component\\DependencyInjection\\Variable","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\Exception\\ServiceCircularReferenceException","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\Container","\\self","Symfony\\Component\\DependencyInjection\\ExpressionLanguage","\\Symfony\\Component\\DependencyInjection\\Dumper\\Symfony\\Component\\DependencyInjection\\LazyProxy\\PhpDumper\\DumperInterface","Symfony\\Component\\DependencyInjection\\Definition","Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface"]},{"name":"GraphvizDumper","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Dumper\\Dumper","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Definition","Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\Scope"]},{"name":"DumperInterface","size":3000,"relations":["\\"]},{"name":"Dumper","size":3000,"relations":["\\Symfony\\Component\\Yaml\\","\\Inline"]},{"name":"YamlDumper","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Dumper\\Dumper","\\parent","\\Symfony\\Component\\DependencyInjection\\Dumper\\Symfony\\Component\\Yaml\\Dumper","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\Reference"]},{"name":"Container","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\","Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag","Symfony\\Component\\DependencyInjection\\ParameterBag\\FrozenParameterBag","\\self","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\Exception\\ServiceCircularReferenceException","Symfony\\Component\\DependencyInjection\\Exception\\ServiceNotFoundException","\\ReflectionClass","\\SplStack","Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBagInterface","\\ScopeInterface"]},{"name":"Parameter","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\"]},{"name":"RemoveAbstractDefinitionsPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ResolveDefinitionTemplatesPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\Definition","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\DefinitionDecorator"]},{"name":"PassConfig","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","\\MergeExtensionConfigurationPass","\\ResolveDefinitionTemplatesPass","\\DecoratorServicePass","\\ResolveParameterPlaceHoldersPass","\\CheckDefinitionValidityPass","\\ResolveReferencesToAliasesPass","\\ResolveInvalidReferencesPass","\\AnalyzeServiceReferencesPass","\\CheckCircularReferencesPass","\\CheckReferenceValidityPass","\\RemovePrivateAliasesPass","\\RemoveAbstractDefinitionsPass","\\ReplaceAliasByActualDefinitionPass","\\RepeatedPass","\\InlineServiceDefinitionsPass","\\RemoveUnusedDefinitionsPass","\\CheckExceptionOnInvalidReferenceBehaviorPass","\\self","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","\\CompilerPassInterface"]},{"name":"InlineServiceDefinitionsPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","\\RepeatedPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\Definition"]},{"name":"MergeExtensionConfigurationPass","size":3000,"relations":["Symfony\\Component\\DependencyInjection\\Compiler\\MergeExtensionConfigurationPass","\\parent","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"AnalyzeServiceReferencesPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Reference","\\RepeatedPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"RemoveUnusedDefinitionsPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","\\RepeatedPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"CheckDefinitionValidityPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"CheckExceptionOnInvalidReferenceBehaviorPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Exception\\ServiceNotFoundException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\Definition"]},{"name":"ServiceReferenceGraphEdge","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","\\ServiceReferenceGraphNode"]},{"name":"DecoratorServicePass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Alias","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ResolveReferencesToAliasesPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Alias","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\Exception\\ServiceCircularReferenceException","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ResolveParameterPlaceHoldersPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"CheckCircularReferencesPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Exception\\ServiceCircularReferenceException","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"CompilerPassInterface","size":3000,"relations":["\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"CheckReferenceValidityPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\Exception\\ScopeWideningInjectionException","Symfony\\Component\\DependencyInjection\\Exception\\ScopeCrossingInjectionException","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\Definition"]},{"name":"RemovePrivateAliasesPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"Compiler","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\","\\Node\\Node"]},{"name":"ReplaceAliasByActualDefinitionPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\Reference","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"RepeatedPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"RepeatablePassInterface","size":3000,"relations":["\\CompilerPassInterface","\\RepeatedPass"]},{"name":"ServiceReferenceGraphNode","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","\\ServiceReferenceGraphEdge"]},{"name":"LoggingFormatter","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","\\CompilerPassInterface"]},{"name":"ServiceReferenceGraph","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","\\ServiceReferenceGraphEdge","\\ServiceReferenceGraphNode"]},{"name":"ResolveInvalidReferencesPass","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Compiler\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"TaggedContainerInterface","size":3000,"relations":["\\ContainerInterface"]},{"name":"ExpressionLanguageProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\","Symfony\\Component\\ExpressionLanguage\\ExpressionFunction"]},{"name":"Variable","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\"]},{"name":"ContainerInterface","size":3000,"relations":["\\","\\self","\\ScopeInterface"]},{"name":"NullDumper","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\LazyProxy\\PhpDumper\\","Symfony\\Component\\DependencyInjection\\Definition"]},{"name":"RealServiceInstantiator","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\LazyProxy\\Instantiator\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Definition"]},{"name":"InstantiatorInterface","size":3000,"relations":["\\","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\DependencyInjection\\Definition"]},{"name":"ContainerBuilder","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\Container","Symfony\\Component\\DependencyInjection\\Exception\\LogicException","\\ReflectionClass","Symfony\\Component\\Config\\Resource\\FileResource","Symfony\\Component\\DependencyInjection\\Exception\\BadMethodCallException","Symfony\\Component\\DependencyInjection\\Compiler\\PassConfig","Symfony\\Component\\DependencyInjection\\Compiler\\Compiler","\\self","\\parent","\\ContainerInterface","\\Alias","Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","\\Definition","Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","Symfony\\Component\\DependencyInjection\\LazyProxy\\Instantiator\\RealServiceInstantiator","Symfony\\Component\\DependencyInjection\\Exception\\InactiveScopeException","\\ExpressionLanguage","Symfony\\Component\\DependencyInjection\\LazyProxy\\Instantiator\\InstantiatorInterface","Symfony\\Component\\DependencyInjection\\Extension\\ExtensionInterface","Symfony\\Component\\Config\\Resource\\ResourceInterface","Symfony\\Component\\DependencyInjection\\Compiler\\CompilerPassInterface","\\ContainerBuilder","Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface"]},{"name":"Reference","size":3000,"relations":["\\Symfony\\Component\\DependencyInjection\\"]},{"name":"ConfigurationExtensionInterface","size":3000,"relations":["\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"PrependExtensionInterface","size":3000,"relations":["\\","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ExtensionInterface","size":3000,"relations":["\\"]},{"name":"Extension","size":3000,"relations":["Symfony\\Component\\DependencyInjection\\Extension\\Extension"]},{"name":"SimpleXMLElement","size":3000,"relations":["\\SimpleXMLElement","\\self","\\ContainerInterface","\\Reference","Symfony\\Component\\ExpressionLanguage\\Expression","Symfony\\Component\\Config\\Util\\XmlUtils"]},{"name":"IntrospectableContainerInterface","size":3000,"relations":["\\ContainerInterface"]},{"name":"FormFieldRegistry","size":3000,"relations":["\\Symfony\\Component\\DomCrawler\\","\\InvalidArgumentException","\\self","\\static","Symfony\\Component\\DomCrawler\\Field\\FormField"]},{"name":"Form","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\self"]},{"name":"TextareaFormField","size":3000,"relations":["\\Symfony\\Component\\DomCrawler\\Field\\FormField","\\LogicException"]},{"name":"FormField","size":3000,"relations":["\\Symfony\\Component\\DomCrawler\\Field\\","\\DOMXPath","\\DOMElement"]},{"name":"FileFormField","size":3000,"relations":["\\Symfony\\Component\\DomCrawler\\Field\\FormField","\\InvalidArgumentException","\\parent","\\LogicException"]},{"name":"ChoiceFormField","size":3000,"relations":["\\Symfony\\Component\\DomCrawler\\Field\\FormField","\\LogicException","\\InvalidArgumentException","\\parent","\\DOMElement"]},{"name":"InputFormField","size":3000,"relations":["\\Symfony\\Component\\DomCrawler\\Field\\FormField","\\LogicException"]},{"name":"Link","size":3000,"relations":["\\Symfony\\Component\\DomCrawler\\","\\InvalidArgumentException","\\LogicException","\\DOMElement"]},{"name":"Crawler","size":3000,"relations":["\\SplObjectStorage","\\InvalidArgumentException","\\DOMDocument","\\Link","\\static","\\LimitIterator","\\RuntimeException","Symfony\\Component\\CssSelector\\CssSelector","\\Form","\\DOMXPath","\\DOMNodeList","\\DOMNode","\\Closure"]},{"name":"RegisterListenersPass","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\DependencyInjection\\","\\InvalidArgumentException","\\ReflectionClass","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ConfigurableExtension","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"ContainerAwareHttpKernel","size":3000,"relations":["Symfony\\Component\\HttpKernel\\HttpKernel","\\parent","Symfony\\Component\\DependencyInjection\\Scope","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\DependencyInjection\\ContainerInterface","Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface","Symfony\\Component\\HttpFoundation\\RequestStack","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"AddClassesToCachePass","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DependencyInjection\\","Symfony\\Component\\HttpKernel\\Kernel","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"Kernel","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\","\\HttpKernelInterface","\\InvalidArgumentException","\\RuntimeException","\\ReflectionObject","Symfony\\Component\\ClassLoader\\ClassCollectionLoader","\\LogicException","Symfony\\Component\\Config\\ConfigCache","\\$class","Symfony\\Component\\HttpKernel\\DependencyInjection\\AddClassesToCachePass","Symfony\\Component\\HttpKernel\\Config\\EnvParametersResource","Symfony\\Component\\HttpKernel\\DependencyInjection\\MergeExtensionConfigurationPass","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag","Symfony\\Bridge\\ProxyManager\\LazyProxy\\Instantiator\\RuntimeInstantiator","Symfony\\Component\\DependencyInjection\\Dumper\\PhpDumper","Symfony\\Bridge\\ProxyManager\\LazyProxy\\PhpDumper\\ProxyDumper","\\static","Symfony\\Component\\HttpKernel\\Config\\FileLocator","Symfony\\Component\\Config\\Loader\\LoaderResolver","Symfony\\Component\\DependencyInjection\\Loader\\XmlFileLoader","Symfony\\Component\\DependencyInjection\\Loader\\YamlFileLoader","Symfony\\Component\\DependencyInjection\\Loader\\IniFileLoader","Symfony\\Component\\DependencyInjection\\Loader\\PhpFileLoader","Symfony\\Component\\DependencyInjection\\Loader\\ClosureLoader","Symfony\\Component\\Config\\Loader\\DelegatingLoader","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"TranslatorListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\HttpFoundation\\RequestStack","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpKernel\\Event\\FinishRequestEvent","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"ExceptionListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Exception\\AccessDeniedHttpException","Symfony\\Component\\Security\\Core\\Exception\\InsufficientAuthenticationException","Symfony\\Component\\Security\\Core\\Security","Symfony\\Component\\HttpKernel\\HttpKernelInterface","\\RuntimeException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationTrustResolverInterface","Symfony\\Component\\Security\\Http\\HttpUtils","Symfony\\Component\\Security\\Http\\EntryPoint\\AuthenticationEntryPointInterface","Symfony\\Component\\Security\\Http\\Authorization\\AccessDeniedHandlerInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseForExceptionEvent","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException","Symfony\\Component\\Security\\Core\\Exception\\LogoutException","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"AddRequestFormatsListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"ErrorsLoggerListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\Debug\\ErrorHandler","Symfony\\Component\\HttpKernel\\KernelEvents","Psr\\Log\\LoggerInterface"]},{"name":"ResponseListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\RememberMe\\","\\RememberMeServicesInterface","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent"]},{"name":"FragmentListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\Exception\\AccessDeniedHttpException","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\UriSigner","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"LocaleListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\Routing\\RequestContextAwareInterface","Symfony\\Component\\HttpFoundation\\RequestStack","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpKernel\\Event\\FinishRequestEvent"]},{"name":"ProfilerListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","\\SplObjectStorage","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Profiler\\Profiler","Symfony\\Component\\HttpFoundation\\RequestMatcherInterface","Symfony\\Component\\HttpFoundation\\RequestStack","Symfony\\Component\\HttpKernel\\Event\\GetResponseForExceptionEvent","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent","Symfony\\Component\\HttpKernel\\Event\\PostResponseEvent"]},{"name":"RouterListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","\\InvalidArgumentException","Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException","Symfony\\Component\\HttpKernel\\Exception\\MethodNotAllowedHttpException","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\Routing\\RequestContext","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpFoundation\\RequestStack","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpKernel\\Event\\FinishRequestEvent","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"SurrogateListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\HttpCache\\SurrogateInterface","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent"]},{"name":"SaveSessionListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent"]},{"name":"DebugHandlersListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\Console\\ConsoleEvents","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\Event"]},{"name":"StreamedResponseListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent"]},{"name":"EsiListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\SurrogateListener"]},{"name":"DumpListener","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\EventListener\\","Symfony\\Component\\VarDumper\\VarDumper","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\VarDumper\\Cloner\\ClonerInterface","Symfony\\Component\\VarDumper\\Dumper\\DataDumperInterface"]},{"name":"UriSigner","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\"]},{"name":"Ssi","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\HttpCache\\","\\ResponseCacheStrategy","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpKernel\\HttpKernelInterface","\\RuntimeException","Symfony\\Component\\HttpFoundation\\Response","\\HttpCache"]},{"name":"StoreInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"ResponseCacheStrategy","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\HttpCache\\","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"SurrogateInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\HttpCache"]},{"name":"EsiResponseCacheStrategyInterface","size":3000,"relations":["\\ResponseCacheStrategyInterface"]},{"name":"Store","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\HttpCache\\","\\SplObjectStorage","\\RuntimeException","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"EsiResponseCacheStrategy","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\HttpCache\\ResponseCacheStrategy"]},{"name":"Esi","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\HttpCache\\","\\EsiResponseCacheStrategy","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpKernel\\HttpKernelInterface","\\RuntimeException","Symfony\\Component\\HttpFoundation\\Response","\\HttpCache"]},{"name":"ResponseCacheStrategyInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"MethodNotAllowedHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"ConflictHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"AccessDeniedHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"UnprocessableEntityHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"BadRequestHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"ServiceUnavailableHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"TooManyRequestsHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"NotAcceptableHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"PreconditionFailedHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"NotFoundHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"UnsupportedMediaTypeHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"GoneHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"HttpExceptionInterface","size":3000,"relations":["\\"]},{"name":"PreconditionRequiredHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"HttpException","size":3000,"relations":["\\RuntimeException","\\parent"]},{"name":"UnauthorizedHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"LengthRequiredHttpException","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","\\parent","\\Exception"]},{"name":"MemoryDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"LoggerDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"ValueExporter","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\Util\\","\\DateTime"]},{"name":"EventDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"DumpDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","\\parent","\\self","Symfony\\Component\\VarDumper\\Dumper\\HtmlDumper","\\InvalidArgumentException","Symfony\\Component\\VarDumper\\Dumper\\CliDumper","Symfony\\Component\\VarDumper\\Cloner\\VarCloner","Symfony\\Component\\Stopwatch\\Stopwatch","Symfony\\Component\\VarDumper\\Cloner\\Data","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"ConfigDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\HttpKernel\\Kernel","Symfony\\Component\\HttpKernel\\KernelInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"LateDataCollectorInterface","size":3000,"relations":["\\"]},{"name":"TimeDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\HttpKernel\\KernelInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"DataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\","Symfony\\Component\\HttpKernel\\DataCollector\\Util\\ValueExporter"]},{"name":"RequestDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","\\SplObjectStorage","Symfony\\Component\\HttpFoundation\\Response","\\ReflectionMethod","\\ReflectionFunction","\\ReflectionClass","Symfony\\Component\\HttpFoundation\\ParameterBag","Symfony\\Component\\HttpFoundation\\HeaderBag","Symfony\\Component\\HttpFoundation\\ResponseHeaderBag","Symfony\\Component\\HttpKernel\\KernelEvents","\\InvalidArgumentException","\\DateTime","\\DateTimeZone","Symfony\\Component\\HttpFoundation\\Request","\\Exception","Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent"]},{"name":"DataCollectorInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"ExceptionDataCollector","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","Symfony\\Component\\Debug\\Exception\\FlattenException","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"CacheWarmerAggregate","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\CacheWarmer\\","\\CacheWarmerInterface"]},{"name":"CacheWarmer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\CacheWarmer\\","\\RuntimeException"]},{"name":"CacheWarmerInterface","size":3000,"relations":["\\WarmableInterface"]},{"name":"WarmableInterface","size":3000,"relations":["\\"]},{"name":"GetResponseForControllerResultEvent","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","\\parent","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"PostResponseEvent","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\Event","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"FinishRequestEvent","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Event\\KernelEvent"]},{"name":"FilterControllerEvent","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Event\\KernelEvent","\\parent","\\LogicException","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"FilterResponseEvent","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Event\\KernelEvent","\\parent","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"GetResponseEvent","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Event\\KernelEvent","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"KernelEvent","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\Event","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"GetResponseForExceptionEvent","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","\\parent","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request","\\Exception"]},{"name":"LoggerInterface","size":3000,"relations":["Psr\\Log\\LoggerInterface"]},{"name":"DebugLoggerInterface","size":3000,"relations":["\\"]},{"name":"NullLogger","size":3000,"relations":["Psr\\Log\\NullLogger"]},{"name":"TerminableInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"CacheClearerInterface","size":3000,"relations":["\\"]},{"name":"ChainCacheClearer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\CacheClearer\\","\\CacheClearerInterface"]},{"name":"EnvParametersResource","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Config\\"]},{"name":"FileLocator","size":3000,"relations":["\\Symfony\\Component\\Config\\","\\InvalidArgumentException"]},{"name":"ControllerReference","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Controller\\"]},{"name":"ControllerResolverInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"TraceableControllerResolver","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Controller\\","\\ControllerResolverInterface","Symfony\\Component\\Stopwatch\\Stopwatch","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"KernelEvents","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\"]},{"name":"KernelInterface","size":3000,"relations":["\\HttpKernelInterface,","Symfony\\Component\\Config\\Loader\\LoaderInterface"]},{"name":"BaseMemcacheProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\","\\Profile","\\self","\\RuntimeException"]},{"name":"MemcacheProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\BaseMemcacheProfilerStorage","\\RuntimeException","\\Memcache"]},{"name":"Profile","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\","\\InvalidArgumentException","\\Profile","Symfony\\Component\\HttpKernel\\DataCollector\\DataCollectorInterface"]},{"name":"FileProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\","\\RuntimeException","\\FilesystemIterator","\\RecursiveDirectoryIterator","\\RecursiveIteratorIterator","\\Profile"]},{"name":"MongoDbProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\","\\RuntimeException","\\$mongoClass","\\Profile"]},{"name":"ProfilerStorageInterface","size":3000,"relations":["\\","\\Profile"]},{"name":"RedisProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\","\\self","\\RuntimeException","\\Redis","\\Profile"]},{"name":"SqliteProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\PdoProfilerStorage","\\RuntimeException","\\SQLite3","\\PDO","\\parent"]},{"name":"Profiler","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\","\\Profile","\\InvalidArgumentException","\\DateTime","\\ProfilerStorageInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\HttpFoundation\\Request","\\Exception","Symfony\\Component\\HttpKernel\\DataCollector\\DataCollectorInterface"]},{"name":"MysqlProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\PdoProfilerStorage","\\RuntimeException","\\PDO"]},{"name":"PdoProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\","\\PDO","\\RuntimeException","\\Profile"]},{"name":"MemcachedProfilerStorage","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Profiler\\BaseMemcacheProfilerStorage","\\RuntimeException","\\Memcached"]},{"name":"TraceableEventDispatcher","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\Debug\\","Symfony\\Component\\EventDispatcher\\Event","\\WrappedListener","\\SplObjectStorage","\\ReflectionFunction","\\ReflectionMethod","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\Stopwatch\\Stopwatch","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventSubscriberInterface"]},{"name":"ErrorHandler","size":3000,"relations":["\\Symfony\\Component\\Debug\\","\\self","\\static","\\InvalidArgumentException","\\LogicException","Symfony\\Component\\Debug\\Exception\\ContextErrorException","\\ErrorException","\\ErrorHandlerCanary","Symfony\\Component\\Debug\\Exception\\OutOfMemoryException","Symfony\\Component\\Debug\\Exception\\FatalErrorException","Symfony\\Component\\Debug\\FatalErrorHandler\\UndefinedFunctionFatalErrorHandler","Symfony\\Component\\Debug\\FatalErrorHandler\\UndefinedMethodFatalErrorHandler","Symfony\\Component\\Debug\\FatalErrorHandler\\ClassNotFoundFatalErrorHandler","Psr\\Log\\LoggerInterface","\\Exception"]},{"name":"ExceptionHandler","size":3000,"relations":["\\Symfony\\Component\\Debug\\","\\static","\\LogicException","Symfony\\Component\\Debug\\Exception\\FlattenException","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"HttpKernel","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\","Symfony\\Component\\HttpFoundation\\RequestStack","\\HttpKernelInterface","\\KernelEvents","Symfony\\Component\\HttpKernel\\Event\\PostResponseEvent","\\LogicException","\\self","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException","Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent","Symfony\\Component\\HttpKernel\\Event\\GetResponseForControllerResultEvent","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent","Symfony\\Component\\HttpKernel\\Event\\FinishRequestEvent","Symfony\\Component\\HttpKernel\\Event\\GetResponseForExceptionEvent","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception"]},{"name":"EsiFragmentRenderer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Fragment\\AbstractSurrogateFragmentRenderer"]},{"name":"FragmentHandler","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Fragment\\","\\InvalidArgumentException","\\LogicException","\\RuntimeException","\\FragmentRendererInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response"]},{"name":"HIncludeFragmentRenderer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Fragment\\RoutableFragmentRenderer","\\InvalidArgumentException","\\LogicException","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\HttpKernel\\UriSigner"]},{"name":"RoutableFragmentRenderer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Fragment\\","\\LogicException","Symfony\\Component\\HttpKernel\\Controller\\ControllerReference","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"FragmentRendererInterface","size":3000,"relations":["\\"]},{"name":"InlineFragmentRenderer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Fragment\\RoutableFragmentRenderer","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseForExceptionEvent","Symfony\\Component\\HttpKernel\\KernelEvents","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface"]},{"name":"SsiFragmentRenderer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Fragment\\AbstractSurrogateFragmentRenderer"]},{"name":"AbstractSurrogateFragmentRenderer","size":3000,"relations":["\\Symfony\\Component\\HttpKernel\\Fragment\\RoutableFragmentRenderer","Symfony\\Component\\HttpFoundation\\Response","\\LogicException","Symfony\\Component\\HttpKernel\\HttpCache\\SurrogateInterface","\\FragmentRendererInterface","Symfony\\Component\\HttpKernel\\UriSigner","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"HttpKernelInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"Bundle","size":3000,"relations":["Symfony\\Component\\DependencyInjection\\ContainerAware","\\$class","Symfony\\Component\\DependencyInjection\\Container","\\LogicException","\\ReflectionObject","Symfony\\Component\\Finder\\Finder","\\ReflectionClass","Symfony\\Component\\DependencyInjection\\ContainerBuilder","Symfony\\Component\\Console\\Application"]},{"name":"BundleInterface","size":3000,"relations":["Symfony\\Component\\DependencyInjection\\ContainerAwareInterface","Symfony\\Component\\DependencyInjection\\ContainerBuilder"]},{"name":"UrlPackage","size":3000,"relations":["\\Symfony\\Component\\Templating\\Asset\\Package","\\parent"]},{"name":"PackageInterface","size":3000,"relations":["\\"]},{"name":"Package","size":3000,"relations":["\\Symfony\\Component\\Templating\\Asset\\"]},{"name":"TemplateNameParserInterface","size":3000,"relations":["\\"]},{"name":"CacheLoader","size":3000,"relations":["\\Symfony\\Component\\Templating\\Loader\\Loader","Symfony\\Component\\Templating\\Storage\\FileStorage","\\LoaderInterface","Symfony\\Component\\Templating\\TemplateReferenceInterface"]},{"name":"Loader","size":3000,"relations":["\\Symfony\\Component\\Config\\Loader\\","Symfony\\Component\\Config\\Exception\\FileLoaderLoadException","\\LoaderResolverInterface"]},{"name":"ChainLoader","size":3000,"relations":["\\Symfony\\Component\\Templating\\Loader\\Loader","\\LoaderInterface","Symfony\\Component\\Templating\\TemplateReferenceInterface"]},{"name":"LoaderInterface","size":3000,"relations":["\\"]},{"name":"Storage","size":3000,"relations":["\\Symfony\\Component\\Templating\\Storage\\"]},{"name":"FileStorage","size":3000,"relations":["\\Symfony\\Component\\Templating\\Storage\\Storage"]},{"name":"StringStorage","size":3000,"relations":["\\Symfony\\Component\\Templating\\Storage\\Storage"]},{"name":"StreamingEngineInterface","size":3000,"relations":["\\"]},{"name":"TemplateReferenceInterface","size":3000,"relations":["\\"]},{"name":"AssetsHelper","size":3000,"relations":["\\Symfony\\Component\\Templating\\Helper\\CoreAssetsHelper","Symfony\\Component\\Templating\\Asset\\UrlPackage","Symfony\\Component\\Templating\\Asset\\PathPackage","\\parent"]},{"name":"CoreAssetsHelper","size":3000,"relations":["\\Symfony\\Component\\Templating\\Helper\\Helper","\\InvalidArgumentException","Symfony\\Component\\Templating\\Asset\\PackageInterface"]},{"name":"HelperInterface","size":3000,"relations":["\\","\\HelperSet"]},{"name":"SlotsHelper","size":3000,"relations":["\\Symfony\\Component\\Templating\\Helper\\Helper","\\InvalidArgumentException","\\LogicException"]},{"name":"Helper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\","\\self","\\HelperSet","Symfony\\Component\\Console\\Formatter\\OutputFormatterInterface"]},{"name":"DebuggerInterface","size":3000,"relations":["\\"]},{"name":"RingBuffer","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Util\\","Symfony\\Component\\Intl\\Exception\\OutOfBoundsException"]},{"name":"RecursiveArrayAccess","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Util\\","Symfony\\Component\\Intl\\Exception\\OutOfBoundsException"]},{"name":"ArrayAccessibleResourceBundle","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Util\\","\\static","Symfony\\Component\\Intl\\Exception\\BadMethodCallException","\\ResourceBundle"]},{"name":"LocaleScanner","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Util\\"]},{"name":"ScriptDataGenerator","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Generator\\AbstractDataGenerator","Symfony\\Component\\Intl\\Data\\Util\\LocaleScanner","Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\GenrbCompiler","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleReaderInterface"]},{"name":"LanguageDataGenerator","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Generator\\AbstractDataGenerator","\\self","Symfony\\Component\\Intl\\Exception\\RuntimeException","Symfony\\Component\\Intl\\Data\\Util\\LocaleScanner","Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\GenrbCompiler","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleReaderInterface","Symfony\\Component\\Intl\\Data\\Util\\ArrayAccessibleResourceBundle"]},{"name":"GeneratorConfig","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Generator\\","Symfony\\Component\\Intl\\Data\\Bundle\\Writer\\BundleWriterInterface"]},{"name":"AbstractDataGenerator","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Generator\\","Symfony\\Component\\Filesystem\\Filesystem","Symfony\\Component\\Intl\\Data\\Util\\LocaleScanner","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\IntlBundleReader","Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\GenrbCompiler","\\GeneratorConfig","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleReaderInterface"]},{"name":"LocaleDataGenerator","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Generator\\","Symfony\\Component\\Filesystem\\Filesystem","Symfony\\Component\\Intl\\Data\\Util\\LocaleScanner","Symfony\\Component\\Intl\\Locale","Symfony\\Component\\Intl\\Data\\Provider\\LanguageDataProvider","Symfony\\Component\\Intl\\Data\\Provider\\ScriptDataProvider","Symfony\\Component\\Intl\\Data\\Provider\\RegionDataProvider","\\GeneratorConfig"]},{"name":"CurrencyDataGenerator","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Generator\\AbstractDataGenerator","\\self","Symfony\\Component\\Intl\\Data\\Util\\LocaleScanner","Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\GenrbCompiler","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleReaderInterface","Symfony\\Component\\Intl\\Data\\Util\\ArrayAccessibleResourceBundle"]},{"name":"RegionDataGenerator","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Generator\\AbstractDataGenerator","\\self","Symfony\\Component\\Intl\\Data\\Util\\LocaleScanner","Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\GenrbCompiler","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleReaderInterface","Symfony\\Component\\Intl\\Data\\Util\\ArrayAccessibleResourceBundle"]},{"name":"BundleEntryReaderInterface","size":3000,"relations":["\\BundleReaderInterface"]},{"name":"JsonBundleReader","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\","Symfony\\Component\\Intl\\Exception\\ResourceBundleNotFoundException","Symfony\\Component\\Intl\\Exception\\RuntimeException","\\self"]},{"name":"BundleEntryReader","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\","Symfony\\Component\\Intl\\Data\\Util\\RecursiveArrayAccess","Symfony\\Component\\Intl\\Locale","Symfony\\Component\\Intl\\Exception\\MissingResourceException","\\BundleReaderInterface"]},{"name":"IntlBundleReader","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\","\\ResourceBundle","Symfony\\Component\\Intl\\Exception\\ResourceBundleNotFoundException","Symfony\\Component\\Intl\\Data\\Util\\ArrayAccessibleResourceBundle"]},{"name":"PhpBundleReader","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\","Symfony\\Component\\Intl\\Exception\\ResourceBundleNotFoundException","Symfony\\Component\\Intl\\Exception\\RuntimeException"]},{"name":"BundleReaderInterface","size":3000,"relations":["\\"]},{"name":"BufferedBundleReader","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\","Symfony\\Component\\Intl\\Data\\Util\\RingBuffer","\\BundleReaderInterface"]},{"name":"JsonBundleWriter","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Writer\\"]},{"name":"PhpBundleWriter","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Writer\\"]},{"name":"BundleWriterInterface","size":3000,"relations":["\\"]},{"name":"TextBundleWriter","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Writer\\","Symfony\\Component\\Intl\\Exception\\UnexpectedTypeException"]},{"name":"BundleCompilerInterface","size":3000,"relations":["\\"]},{"name":"GenrbCompiler","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\","Symfony\\Component\\Intl\\Exception\\RuntimeException"]},{"name":"LanguageDataProvider","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Provider\\","Symfony\\Component\\Intl\\Locale","\\Collator","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface"]},{"name":"ScriptDataProvider","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Provider\\","Symfony\\Component\\Intl\\Locale","\\Collator","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface"]},{"name":"LocaleDataProvider","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Provider\\","Symfony\\Component\\Intl\\Locale","\\Collator","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface"]},{"name":"CurrencyDataProvider","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Provider\\","Symfony\\Component\\Intl\\Locale","\\static","\\Collator","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface"]},{"name":"RegionDataProvider","size":3000,"relations":["\\Symfony\\Component\\Intl\\Data\\Provider\\","Symfony\\Component\\Intl\\Locale","\\Collator","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface"]},{"name":"NumberFormatter","size":3000,"relations":["Symfony\\Component\\Intl\\NumberFormatter\\NumberFormatter"]},{"name":"IntlGlobals","size":3000,"relations":["\\Symfony\\Component\\Intl\\Globals\\","\\self","\\InvalidArgumentException"]},{"name":"Intl","size":3000,"relations":["\\Symfony\\Component\\Intl\\","\\self","Symfony\\Component\\Intl\\ResourceBundle\\CurrencyBundle","\\Intl","Symfony\\Component\\Intl\\ResourceBundle\\LanguageBundle","Symfony\\Component\\Intl\\Data\\Provider\\ScriptDataProvider","Symfony\\Component\\Intl\\ResourceBundle\\LocaleBundle","Symfony\\Component\\Intl\\ResourceBundle\\RegionBundle","\\ReflectionExtension","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReader","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BufferedBundleReader","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\JsonBundleReader"]},{"name":"MethodArgumentNotImplementedException","size":3000,"relations":["Symfony\\Component\\Intl\\Exception\\MethodArgumentNotImplementedException"]},{"name":"NotImplementedException","size":3000,"relations":["Symfony\\Component\\Intl\\Exception\\NotImplementedException"]},{"name":"UnexpectedTypeException","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\Exception\\RuntimeException","\\parent"]},{"name":"MethodArgumentValueNotImplementedException","size":3000,"relations":["Symfony\\Component\\Intl\\Exception\\MethodArgumentValueNotImplementedException"]},{"name":"MissingResourceException","size":3000,"relations":["\\Symfony\\Component\\Intl\\Exception\\RuntimeException"]},{"name":"MethodNotImplementedException","size":3000,"relations":["Symfony\\Component\\Intl\\Exception\\MethodNotImplementedException"]},{"name":"ResourceBundleNotFoundException","size":3000,"relations":["\\Symfony\\Component\\Intl\\Exception\\RuntimeException"]},{"name":"IcuVersion","size":3000,"relations":["\\Symfony\\Component\\Intl\\Util\\","\\self","\\Version"]},{"name":"IntlTestHelper","size":3000,"relations":["\\Symfony\\Component\\Intl\\Util\\","\\IcuVersion","Symfony\\Component\\Intl\\Intl","\\Locale","\\PhpUnit_Framework_TestCase"]},{"name":"SvnCommit","size":3000,"relations":["\\Symfony\\Component\\Intl\\Util\\","\\SimpleXMLElement"]},{"name":"SvnRepository","size":3000,"relations":["\\Symfony\\Component\\Intl\\Util\\","Symfony\\Component\\Intl\\Exception\\RuntimeException","Symfony\\Component\\Filesystem\\Filesystem","\\static","\\SvnCommit"]},{"name":"Version","size":3000,"relations":["\\Symfony\\Component\\Intl\\Util\\","\\self"]},{"name":"Locale","size":3000,"relations":["\\Locale","\\self","Symfony\\Component\\Intl\\Intl"]},{"name":"Collator","size":3000,"relations":["Symfony\\Component\\Intl\\Collator\\Collator"]},{"name":"CurrencyBundle","size":3000,"relations":["Symfony\\Component\\Intl\\Data\\Provider\\CurrencyDataProvider","\\parent","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface","Symfony\\Component\\Intl\\Data\\Provider\\LocaleDataProvider"]},{"name":"LocaleBundleInterface","size":3000,"relations":["\\ResourceBundleInterface"]},{"name":"LanguageBundleInterface","size":3000,"relations":["\\ResourceBundleInterface"]},{"name":"RegionBundleInterface","size":3000,"relations":["\\ResourceBundleInterface"]},{"name":"ResourceBundleInterface","size":3000,"relations":["\\"]},{"name":"LocaleBundle","size":3000,"relations":["Symfony\\Component\\Intl\\Data\\Provider\\LocaleDataProvider","\\parent"]},{"name":"CurrencyBundleInterface","size":3000,"relations":["\\ResourceBundleInterface"]},{"name":"LanguageBundle","size":3000,"relations":["Symfony\\Component\\Intl\\Data\\Provider\\LanguageDataProvider","\\parent","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface","Symfony\\Component\\Intl\\Data\\Provider\\LocaleDataProvider","Symfony\\Component\\Intl\\Data\\Provider\\ScriptDataProvider"]},{"name":"RegionBundle","size":3000,"relations":["Symfony\\Component\\Intl\\Data\\Provider\\RegionDataProvider","\\parent","Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface","Symfony\\Component\\Intl\\Data\\Provider\\LocaleDataProvider"]},{"name":"IntlDateFormatter","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\IntlDateFormatter"]},{"name":"Hour1201Transformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour1201Transformer"]},{"name":"MonthTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\MonthTransformer"]},{"name":"Transformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Transformer"]},{"name":"TimeZoneTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\TimeZoneTransformer"]},{"name":"DayOfYearTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\DayOfYearTransformer"]},{"name":"DayTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\DayTransformer"]},{"name":"MinuteTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\MinuteTransformer"]},{"name":"DayOfWeekTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\DayOfWeekTransformer"]},{"name":"SecondTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\SecondTransformer"]},{"name":"FullTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\FullTransformer"]},{"name":"Hour2401Transformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour2401Transformer"]},{"name":"Hour1200Transformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour1200Transformer"]},{"name":"Hour2400Transformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour2400Transformer"]},{"name":"QuarterTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\QuarterTransformer"]},{"name":"YearTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\YearTransformer"]},{"name":"AmPmTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\AmPmTransformer"]},{"name":"HourTransformer","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\HourTransformer"]},{"name":"ExpressionFunctionProviderInterface","size":3000,"relations":["\\"]},{"name":"ParserCacheInterface","size":3000,"relations":["\\","Symfony\\Component\\ExpressionLanguage\\ParsedExpression"]},{"name":"ArrayParserCache","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\ParserCache\\","Symfony\\Component\\ExpressionLanguage\\ParsedExpression"]},{"name":"Token","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\","\\self"]},{"name":"ConditionalNode","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\Node","\\parent","\\Node","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"NameNode","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\Node","\\parent","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"BinaryNode","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\Node","\\parent","\\self","\\Node","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"ArrayNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\BaseNode","\\RuntimeException","\\InvalidArgumentException","Symfony\\Component\\Config\\Definition\\Exception\\UnsetKeyException","Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException","Symfony\\Component\\Config\\Definition\\Exception\\InvalidTypeException","\\Processor","\\NodeInterface"]},{"name":"ArgumentsNode","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\ArrayNode","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"FunctionNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\Specificity","Symfony\\Component\\CssSelector\\Parser\\Token"]},{"name":"GetAttrNode","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\Node","\\parent","\\self","\\RuntimeException","\\Node","\\ArrayNode","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"ConstantNode","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\Node","\\parent","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"Node","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"UnaryNode","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Node\\Node","\\parent","\\self","\\Node","Symfony\\Component\\ExpressionLanguage\\Compiler"]},{"name":"SyntaxError","size":3000,"relations":["\\LogicException","\\parent"]},{"name":"ParsedExpression","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\Expression","\\parent","Symfony\\Component\\ExpressionLanguage\\Node\\Node"]},{"name":"Expression","size":3000,"relations":["\\Symfony\\Component\\Finder\\Expression\\","\\self","\\Regex","\\Glob","\\LogicException"]},{"name":"TokenStream","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\","Symfony\\Component\\CssSelector\\Exception\\InternalErrorException","Symfony\\Component\\CssSelector\\Exception\\SyntaxErrorException","\\Token"]},{"name":"ExpressionFunction","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\"]},{"name":"Lexer","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\","\\Token","\\SyntaxError","\\TokenStream"]},{"name":"Parser","size":3000,"relations":["\\Symfony\\Component\\Yaml\\","Symfony\\Component\\Yaml\\Exception\\ParseException","\\Parser","\\Inline","\\self"]},{"name":"SerializedParsedExpression","size":3000,"relations":["\\Symfony\\Component\\ExpressionLanguage\\ParsedExpression"]},{"name":"ParseException","size":3000,"relations":["\\Symfony\\Component\\Yaml\\Exception\\RuntimeException","\\parent","\\Exception"]},{"name":"InternalErrorException","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Exception\\ParseException"]},{"name":"SyntaxErrorException","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Exception\\ParseException","\\self","Symfony\\Component\\CssSelector\\Parser\\Token"]},{"name":"ExpressionErrorException","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Exception\\ParseException"]},{"name":"SelectorNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\Specificity","\\NodeInterface"]},{"name":"NodeInterface","size":3000,"relations":["\\"]},{"name":"NegationNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\NodeInterface"]},{"name":"AttributeNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\Specificity","\\NodeInterface"]},{"name":"CombinedSelectorNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\NodeInterface"]},{"name":"AbstractNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\"]},{"name":"ElementNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\Specificity"]},{"name":"ClassNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\Specificity","\\NodeInterface"]},{"name":"HashNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\Specificity","\\NodeInterface"]},{"name":"Specificity","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\","\\self","\\Specificity"]},{"name":"PseudoNode","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","\\Specificity","\\NodeInterface"]},{"name":"CssSelector","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\","Symfony\\Component\\CssSelector\\XPath\\Translator","\\self","Symfony\\Component\\CssSelector\\XPath\\Extension\\HtmlExtension","Symfony\\Component\\CssSelector\\Parser\\Shortcut\\EmptyStringParser","Symfony\\Component\\CssSelector\\Parser\\Shortcut\\ElementParser","Symfony\\Component\\CssSelector\\Parser\\Shortcut\\ClassParser","Symfony\\Component\\CssSelector\\Parser\\Shortcut\\HashParser"]},{"name":"TokenizerEscaping","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\","\\TokenizerPatterns"]},{"name":"TokenizerPatterns","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\"]},{"name":"Tokenizer","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\","\\TokenizerPatterns","\\TokenizerEscaping","\\Handler\\WhitespaceHandler","\\Handler\\IdentifierHandler","\\Handler\\HashHandler","\\Handler\\StringHandler","\\Handler\\NumberHandler","\\Handler\\CommentHandler","Symfony\\Component\\CssSelector\\Parser\\TokenStream","Symfony\\Component\\CssSelector\\Parser\\Token","Symfony\\Component\\CssSelector\\Parser\\Reader"]},{"name":"ParserInterface","size":3000,"relations":["\\"]},{"name":"EmptyStringParser","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Shortcut\\","Symfony\\Component\\CssSelector\\Node\\SelectorNode","Symfony\\Component\\CssSelector\\Node\\ElementNode"]},{"name":"ElementParser","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Shortcut\\","Symfony\\Component\\CssSelector\\Node\\SelectorNode","Symfony\\Component\\CssSelector\\Node\\ElementNode"]},{"name":"ClassParser","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Shortcut\\","Symfony\\Component\\CssSelector\\Node\\SelectorNode","Symfony\\Component\\CssSelector\\Node\\ClassNode","Symfony\\Component\\CssSelector\\Node\\ElementNode"]},{"name":"HashParser","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Shortcut\\","Symfony\\Component\\CssSelector\\Node\\SelectorNode","Symfony\\Component\\CssSelector\\Node\\HashNode","Symfony\\Component\\CssSelector\\Node\\ElementNode"]},{"name":"Reader","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\"]},{"name":"HandlerInterface","size":3000,"relations":["\\","Symfony\\Component\\CssSelector\\Parser\\Reader","Symfony\\Component\\CssSelector\\Parser\\TokenStream"]},{"name":"IdentifierHandler","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Handler\\","Symfony\\Component\\CssSelector\\Parser\\Token","Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerPatterns","Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerEscaping","Symfony\\Component\\CssSelector\\Parser\\Reader","Symfony\\Component\\CssSelector\\Parser\\TokenStream"]},{"name":"StringHandler","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Handler\\","Symfony\\Component\\CssSelector\\Exception\\InternalErrorException","Symfony\\Component\\CssSelector\\Exception\\SyntaxErrorException","Symfony\\Component\\CssSelector\\Parser\\Token","Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerPatterns","Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerEscaping","Symfony\\Component\\CssSelector\\Parser\\Reader","Symfony\\Component\\CssSelector\\Parser\\TokenStream"]},{"name":"NumberHandler","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Handler\\","Symfony\\Component\\CssSelector\\Parser\\Token","Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerPatterns","Symfony\\Component\\CssSelector\\Parser\\Reader","Symfony\\Component\\CssSelector\\Parser\\TokenStream"]},{"name":"HashHandler","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Handler\\","Symfony\\Component\\CssSelector\\Parser\\Token","Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerPatterns","Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerEscaping","Symfony\\Component\\CssSelector\\Parser\\Reader","Symfony\\Component\\CssSelector\\Parser\\TokenStream"]},{"name":"CommentHandler","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Handler\\","Symfony\\Component\\CssSelector\\Parser\\Reader","Symfony\\Component\\CssSelector\\Parser\\TokenStream"]},{"name":"WhitespaceHandler","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\Parser\\Handler\\","Symfony\\Component\\CssSelector\\Parser\\Token","Symfony\\Component\\CssSelector\\Parser\\Reader","Symfony\\Component\\CssSelector\\Parser\\TokenStream"]},{"name":"TranslatorInterface","size":3000,"relations":["\\"]},{"name":"XPathExpr","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\XPath\\","\\Translator","\\XPathExpr"]},{"name":"CombinationExtension","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\XPath\\Extension\\AbstractExtension","Symfony\\Component\\CssSelector\\XPath\\XPathExpr"]},{"name":"NodeExtension","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\XPath\\Extension\\AbstractExtension","\\self","Symfony\\Component\\CssSelector\\XPath\\Translator","Symfony\\Component\\CssSelector\\XPath\\XPathExpr","\\Node\\SelectorNode","\\Node\\CombinedSelectorNode","\\Node\\NegationNode","\\Node\\FunctionNode","\\Node\\PseudoNode","\\Node\\AttributeNode","\\Node\\ClassNode","\\Node\\HashNode","\\Node\\ElementNode"]},{"name":"AbstractExtension","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException"]},{"name":"PseudoClassExtension","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\XPath\\Extension\\AbstractExtension","Symfony\\Component\\CssSelector\\Exception\\ExpressionErrorException","Symfony\\Component\\CssSelector\\XPath\\XPathExpr"]},{"name":"HtmlExtension","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\XPath\\Extension\\AbstractExtension","\\NodeExtension","Symfony\\Component\\CssSelector\\Exception\\ExpressionErrorException","Symfony\\Component\\CssSelector\\XPath\\Translator","Symfony\\Component\\CssSelector\\XPath\\XPathExpr","Symfony\\Component\\CssSelector\\Node\\FunctionNode"]},{"name":"AttributeMatchingExtension","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\XPath\\Extension\\AbstractExtension","Symfony\\Component\\CssSelector\\XPath\\Translator","Symfony\\Component\\CssSelector\\XPath\\XPathExpr"]},{"name":"FunctionExtension","size":3000,"relations":["\\Symfony\\Component\\CssSelector\\XPath\\Extension\\AbstractExtension","Symfony\\Component\\CssSelector\\Parser\\Parser","Symfony\\Component\\CssSelector\\Exception\\ExpressionErrorException","Symfony\\Component\\CssSelector\\XPath\\Translator","Symfony\\Component\\CssSelector\\XPath\\XPathExpr","Symfony\\Component\\CssSelector\\Node\\FunctionNode"]},{"name":"FormFactoryBuilder","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\FormTypeGuesserChain","\\PreloadedExtension","\\ResolvedFormTypeFactory","\\FormRegistry","\\FormFactory","\\ResolvedFormTypeFactoryInterface","\\FormExtensionInterface","\\FormTypeInterface","\\FormTypeExtensionInterface","\\FormTypeGuesserInterface"]},{"name":"ResolvedFormTypeFactory","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\ResolvedFormType","\\FormTypeInterface","\\ResolvedFormTypeInterface"]},{"name":"FormView","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\BadMethodCallException","\\ArrayIterator","\\FormView"]},{"name":"FormRenderer","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Exception\\BadMethodCallException","Symfony\\Component\\Form\\Exception\\LogicException","\\self","\\FormRendererEngineInterface","\\FormView"]},{"name":"FormTypeGuesserInterface","size":3000,"relations":["\\"]},{"name":"ResolvedFormTypeFactoryInterface","size":3000,"relations":["\\","\\FormTypeInterface","\\ResolvedFormTypeInterface"]},{"name":"FormConfigBuilderInterface","size":3000,"relations":["\\FormConfigInterface","Symfony\\Component\\EventDispatcher\\EventSubscriberInterface","\\DataTransformerInterface","\\DataMapperInterface","\\ResolvedFormTypeInterface","\\FormFactoryInterface","\\RequestHandlerInterface"]},{"name":"Forms","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\self","\\FormFactoryBuilder","Symfony\\Component\\Form\\Extension\\Core\\CoreExtension"]},{"name":"SubmitButtonBuilder","size":3000,"relations":["\\Symfony\\Component\\Form\\ButtonBuilder","\\SubmitButton"]},{"name":"FormRendererInterface","size":3000,"relations":["\\","\\FormView"]},{"name":"StringCastException","size":3000,"relations":["\\Symfony\\Component\\Form\\Exception\\RuntimeException"]},{"name":"AlreadyBoundException","size":3000,"relations":["\\Symfony\\Component\\Form\\Exception\\LogicException"]},{"name":"InvalidConfigurationException","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Exception\\Exception"]},{"name":"TransformationFailedException","size":3000,"relations":["\\Symfony\\Component\\Form\\Exception\\RuntimeException"]},{"name":"AlreadySubmittedException","size":3000,"relations":["\\Symfony\\Component\\Form\\Exception\\AlreadyBoundException"]},{"name":"ErrorMappingException","size":3000,"relations":["\\Symfony\\Component\\Form\\Exception\\RuntimeException"]},{"name":"NativeRequestHandler","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Util\\ServerParams","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","\\self","\\FormError","\\FormInterface"]},{"name":"FormFactoryInterface","size":3000,"relations":["\\"]},{"name":"FormUtil","size":3000,"relations":["\\Symfony\\Component\\Form\\Util\\"]},{"name":"VirtualFormAwareIterator","size":3000,"relations":["\\IteratorIterator","\\static"]},{"name":"ServerParams","size":3000,"relations":["\\Symfony\\Component\\Form\\Util\\ServerParams"]},{"name":"OrderedHashMapIterator","size":3000,"relations":["\\Symfony\\Component\\Form\\Util\\"]},{"name":"OrderedHashMap","size":3000,"relations":["\\Symfony\\Component\\Form\\Util\\","\\OutOfBoundsException","\\OrderedHashMapIterator"]},{"name":"InheritDataAwareIterator","size":3000,"relations":["\\Symfony\\Component\\Form\\Util\\VirtualFormAwareIterator"]},{"name":"FormBuilderInterface","size":3000,"relations":["\\Iterator,"]},{"name":"PreloadedExtension","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","\\FormTypeGuesserInterface"]},{"name":"FormRegistry","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","\\FormTypeGuesserChain","\\ResolvedFormTypeFactoryInterface","\\FormTypeInterface"]},{"name":"ClickableInterface","size":3000,"relations":["\\"]},{"name":"DataMapperInterface","size":3000,"relations":["\\"]},{"name":"FormInterface","size":3000,"relations":["\\Iterator,"]},{"name":"FormTypeInterface","size":3000,"relations":["\\","\\FormBuilderInterface","\\FormView","\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"FormConfigInterface","size":3000,"relations":["\\"]},{"name":"AbstractTypeExtension","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\FormBuilderInterface","\\FormView","\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"ResolvedFormTypeInterface","size":3000,"relations":["\\","\\FormInterface","\\FormView","\\FormBuilderInterface"]},{"name":"FormFactoryBuilderInterface","size":3000,"relations":["\\","\\ResolvedFormTypeFactoryInterface","\\FormExtensionInterface","\\FormTypeInterface","\\FormTypeExtensionInterface","\\FormTypeGuesserInterface"]},{"name":"FormConfigBuilder","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\self","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","Symfony\\Component\\Form\\Exception\\BadMethodCallException","Symfony\\Component\\EventDispatcher\\ImmutableEventDispatcher","\\NativeRequestHandler","Symfony\\Component\\PropertyAccess\\PropertyPath","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\EventDispatcher\\EventSubscriberInterface","\\DataTransformerInterface","\\DataMapperInterface","\\ResolvedFormTypeInterface","\\FormFactoryInterface","\\RequestHandlerInterface"]},{"name":"FormRendererEngineInterface","size":3000,"relations":["\\","\\FormView"]},{"name":"FormRegistryInterface","size":3000,"relations":["\\"]},{"name":"FormFactory","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","\\FormRegistryInterface","\\ResolvedFormTypeFactoryInterface","\\FormTypeInterface"]},{"name":"FormTypeExtensionInterface","size":3000,"relations":["\\","\\FormBuilderInterface","\\FormView","\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"FormBuilder","size":3000,"relations":["\\Symfony\\Component\\Form\\FormConfigBuilder","\\parent","Symfony\\Component\\Form\\Exception\\BadMethodCallException","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","\\Form","\\ArrayIterator"]},{"name":"CallbackTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\InvalidArgumentException"]},{"name":"FormExtensionInterface","size":3000,"relations":["\\"]},{"name":"Button","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\BadMethodCallException","\\FormErrorIterator","Symfony\\Component\\Form\\Exception\\AlreadySubmittedException","\\EmptyIterator","\\FormConfigInterface","\\FormInterface","\\FormError","\\FormView"]},{"name":"ValueGuess","size":3000,"relations":["\\Symfony\\Component\\Form\\Guess\\Guess","\\parent"]},{"name":"Guess","size":3000,"relations":["\\Symfony\\Component\\Form\\Guess\\","\\self","Symfony\\Component\\Form\\Exception\\InvalidArgumentException"]},{"name":"TypeGuess","size":3000,"relations":["\\Symfony\\Component\\Form\\Guess\\Guess","\\parent"]},{"name":"FormErrorIterator","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","\\self","Symfony\\Component\\Form\\Exception\\OutOfBoundsException","Symfony\\Component\\Form\\Exception\\BadMethodCallException","\\FormInterface"]},{"name":"FormError","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\BadMethodCallException","\\FormInterface"]},{"name":"DataTransformerInterface","size":3000,"relations":["\\"]},{"name":"FormEvent","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\Event","\\FormInterface"]},{"name":"ReversedTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\DataTransformerInterface"]},{"name":"AbstractRendererEngine","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\self","\\FormView"]},{"name":"ResolvedFormType","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\OptionsResolver\\OptionsResolver","\\ButtonBuilder","\\SubmitButtonBuilder","\\FormBuilder","Symfony\\Component\\EventDispatcher\\EventDispatcher","\\FormView","\\FormInterface","\\FormBuilderInterface","\\FormFactoryInterface"]},{"name":"FormEvents","size":3000,"relations":["\\Symfony\\Component\\Form\\"]},{"name":"AbstractType","size":3000,"relations":["\\Symfony\\Component\\Form\\","\\FormBuilderInterface","\\FormView","\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"ButtonBuilder","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","Symfony\\Component\\Form\\Exception\\BadMethodCallException","\\Button","\\EmptyIterator","Symfony\\Component\\EventDispatcher\\EventSubscriberInterface","\\DataTransformerInterface","\\DataMapperInterface","\\ResolvedFormTypeInterface","\\FormFactoryInterface","\\RequestHandlerInterface"]},{"name":"RequestHandlerInterface","size":3000,"relations":["\\","\\FormInterface"]},{"name":"SubmitButton","size":3000,"relations":["\\Symfony\\Component\\Form\\Button","\\parent"]},{"name":"ButtonTypeInterface","size":3000,"relations":["\\FormTypeInterface"]},{"name":"FormTypeGuesserChain","size":3000,"relations":["\\Symfony\\Component\\Form\\","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Guess\\Guess","\\Closure"]},{"name":"DependencyInjectionExtension","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\DependencyInjection\\","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","Symfony\\Component\\Form\\FormTypeGuesserChain","Symfony\\Component\\DependencyInjection\\ContainerInterface"]},{"name":"TemplatingRendererEngine","size":3000,"relations":["Symfony\\Component\\Form\\AbstractRendererEngine","\\parent","\\self","Symfony\\Component\\Form\\FormView"]},{"name":"TemplatingExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Bundle\\FrameworkBundle\\Templating\\Helper\\FormHelper","Symfony\\Component\\Form\\FormRenderer","\\TemplatingRendererEngine"]},{"name":"ChoiceView","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\View\\"]},{"name":"DateTimeToStringTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BaseDateTimeTransformer","\\parent","Symfony\\Component\\Form\\Exception\\TransformationFailedException","\\DateTimeZone","\\DateTime"]},{"name":"ChoicesToValuesTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException","Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface"]},{"name":"ValueToDuplicatesTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException"]},{"name":"DataTransformerChain","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\"]},{"name":"ChoiceToValueTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException","Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface"]},{"name":"IntegerToLocalizedStringTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\NumberToLocalizedStringTransformer","\\self","\\parent"]},{"name":"DateTimeToArrayTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BaseDateTimeTransformer","\\parent","Symfony\\Component\\Form\\Exception\\TransformationFailedException","\\DateTimeZone","\\DateTime"]},{"name":"MoneyToLocalizedStringTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\NumberToLocalizedStringTransformer","\\parent","Symfony\\Component\\Form\\Exception\\TransformationFailedException"]},{"name":"DateTimeToTimestampTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BaseDateTimeTransformer","Symfony\\Component\\Form\\Exception\\TransformationFailedException","\\DateTimeZone","\\DateTime"]},{"name":"DateTimeToRfc3339Transformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BaseDateTimeTransformer","Symfony\\Component\\Form\\Exception\\TransformationFailedException","\\DateTimeZone","\\DateTime"]},{"name":"BooleanToStringTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException"]},{"name":"ChoiceToBooleanArrayTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException","Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface"]},{"name":"ArrayToPartsTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException"]},{"name":"ChoicesToBooleanArrayTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException","Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface"]},{"name":"BaseDateTimeTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","\\DateTimeZone","Symfony\\Component\\Form\\Exception\\InvalidArgumentException"]},{"name":"PercentToLocalizedStringTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","\\self","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Exception\\TransformationFailedException","\\NumberFormatter","\\Locale"]},{"name":"DateTimeToLocalizedStringTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BaseDateTimeTransformer","\\parent","\\IntlDateFormatter","\\self","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Exception\\TransformationFailedException","\\DateTimeZone","\\DateTime","\\Locale"]},{"name":"NumberToLocalizedStringTransformer","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","\\self","Symfony\\Component\\Form\\Exception\\TransformationFailedException","\\NumberFormatter","\\Locale"]},{"name":"PropertyPathMapper","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\DataMapper\\","Symfony\\Component\\PropertyAccess\\PropertyAccess","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\PropertyAccess\\PropertyAccessorInterface"]},{"name":"MergeCollectionListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\FormEvent"]},{"name":"ResizeFormListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\FormEvent"]},{"name":"TrimListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\FormEvent"]},{"name":"FixUrlProtocolListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\FormEvent"]},{"name":"FixCheckboxInputListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\EventListener\\","Symfony\\Component\\Form\\Exception\\TransformationFailedException","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface","Symfony\\Component\\Form\\FormEvent"]},{"name":"FixRadioInputListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface","Symfony\\Component\\Form\\FormEvent"]},{"name":"ChoiceType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Exception\\LogicException","Symfony\\Component\\Form\\Extension\\Core\\View\\ChoiceView","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoicesToBooleanArrayTransformer","Symfony\\Component\\Form\\Extension\\Core\\EventListener\\FixCheckboxInputListener","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoiceToBooleanArrayTransformer","Symfony\\Component\\Form\\Extension\\Core\\EventListener\\FixRadioInputListener","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoicesToValuesTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoiceToValueTransformer","Symfony\\Component\\Form\\Extension\\Core\\EventListener\\MergeCollectionListener","Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\SimpleChoiceList","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\Options","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"DateTimeType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","\\self","\\IntlDateFormatter","Symfony\\Component\\OptionsResolver\\Exception\\InvalidOptionsException","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToRfc3339Transformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToLocalizedStringTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DataTransformerChain","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToArrayTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ArrayToPartsTransformer","Symfony\\Component\\Form\\ReversedTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToStringTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToTimestampTransformer","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"DateType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","\\self","\\IntlDateFormatter","Symfony\\Component\\OptionsResolver\\Exception\\InvalidOptionsException","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToLocalizedStringTransformer","\\Locale","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToArrayTransformer","Symfony\\Component\\Form\\ReversedTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToStringTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToTimestampTransformer","\\DateType","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"NumberType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\NumberToLocalizedStringTransformer","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"TextType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"ButtonType","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\Type\\BaseType","\\parent","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"HiddenType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"CurrencyType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"TextareaType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface"]},{"name":"RepeatedType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ValueToDuplicatesTransformer","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"LocaleType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"RadioType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType"]},{"name":"CheckboxType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BooleanToStringTransformer","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"FileType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"BirthdayType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"BaseType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"PercentType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\PercentToLocalizedStringTransformer","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"PasswordType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"MoneyType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\MoneyToLocalizedStringTransformer","\\self","\\Locale","\\NumberFormatter","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"SearchType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType"]},{"name":"FormType","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\Type\\BaseType","Symfony\\Component\\PropertyAccess\\PropertyAccess","\\parent","Symfony\\Component\\Form\\Extension\\Core\\DataMapper\\PropertyPathMapper","Symfony\\Component\\Form\\Extension\\Core\\EventListener\\TrimListener","Symfony\\Component\\Form\\Exception\\LogicException","\\$class","Symfony\\Component\\PropertyAccess\\PropertyAccessorInterface","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"TimeType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Exception\\InvalidConfigurationException","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToStringTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToArrayTransformer","Symfony\\Component\\Form\\ReversedTransformer","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToTimestampTransformer","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"IntegerType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\IntegerToLocalizedStringTransformer","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"LanguageType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"UrlType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\EventListener\\FixUrlProtocolListener","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"ResetType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType"]},{"name":"CollectionType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\Extension\\Core\\EventListener\\ResizeFormListener","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"TimezoneType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","\\self","\\static","\\DateTimeZone","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"SubmitType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface"]},{"name":"EmailType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType"]},{"name":"CountryType","size":3000,"relations":["Symfony\\Component\\Form\\AbstractType","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface"]},{"name":"CoreExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","\\Type\\FormType","Symfony\\Component\\PropertyAccess\\PropertyAccess","\\Type\\BirthdayType","\\Type\\CheckboxType","\\Type\\ChoiceType","\\Type\\CollectionType","\\Type\\CountryType","\\Type\\DateType","\\Type\\DateTimeType","\\Type\\EmailType","\\Type\\HiddenType","\\Type\\IntegerType","\\Type\\LanguageType","\\Type\\LocaleType","\\Type\\MoneyType","\\Type\\NumberType","\\Type\\PasswordType","\\Type\\PercentType","\\Type\\RadioType","\\Type\\RepeatedType","\\Type\\SearchType","\\Type\\TextareaType","\\Type\\TextType","\\Type\\TimeType","\\Type\\TimezoneType","\\Type\\UrlType","\\Type\\FileType","\\Type\\ButtonType","\\Type\\SubmitType","\\Type\\ResetType","\\Type\\CurrencyType"]},{"name":"SimpleChoiceList","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceList","\\parent"]},{"name":"LazyChoiceList","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\","Symfony\\Component\\Form\\Exception\\InvalidArgumentException"]},{"name":"ChoiceListInterface","size":3000,"relations":["\\"]},{"name":"ObjectChoiceList","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceList","Symfony\\Component\\PropertyAccess\\PropertyAccess","Symfony\\Component\\PropertyAccess\\PropertyPath","\\parent","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","Symfony\\Component\\Form\\Exception\\StringCastException"]},{"name":"ChoiceList","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Exception\\InvalidArgumentException","Symfony\\Component\\Form\\FormConfigBuilder","Symfony\\Component\\Form\\Exception\\InvalidConfigurationException","Symfony\\Component\\Form\\Extension\\Core\\View\\ChoiceView"]},{"name":"ResolvedTypeFactoryDataCollectorProxy","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\DataCollector\\Proxy\\","\\ResolvedTypeDataCollectorProxy","Symfony\\Component\\Form\\ResolvedFormTypeFactoryInterface","Symfony\\Component\\Form\\Extension\\DataCollector\\FormDataCollectorInterface","Symfony\\Component\\Form\\FormTypeInterface","Symfony\\Component\\Form\\ResolvedFormTypeInterface"]},{"name":"ResolvedTypeDataCollectorProxy","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\DataCollector\\Proxy\\","Symfony\\Component\\Form\\ResolvedFormTypeInterface","Symfony\\Component\\Form\\Extension\\DataCollector\\FormDataCollectorInterface","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormBuilderInterface"]},{"name":"DataCollectorListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\DataCollector\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\Extension\\DataCollector\\FormDataCollectorInterface","Symfony\\Component\\Form\\FormEvent"]},{"name":"FormDataExtractor","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\DataCollector\\","Symfony\\Component\\HttpKernel\\DataCollector\\Util\\ValueExporter","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\Form\\FormView"]},{"name":"DataCollectorTypeExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractTypeExtension","Symfony\\Component\\Form\\Extension\\DataCollector\\EventListener\\DataCollectorListener","Symfony\\Component\\Form\\Extension\\DataCollector\\FormDataCollectorInterface","Symfony\\Component\\Form\\FormBuilderInterface"]},{"name":"FormDataCollectorInterface","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DataCollector\\DataCollectorInterface","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\Form\\FormView"]},{"name":"FormDataCollector","size":3000,"relations":["Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","\\FormDataExtractorInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","\\Exception","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\Form\\FormView","\\&$output"]},{"name":"DataCollectorExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","\\Type\\DataCollectorTypeExtension","\\FormDataCollectorInterface"]},{"name":"FormDataExtractorInterface","size":3000,"relations":["\\","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\Form\\FormView"]},{"name":"ValidationListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Validator\\EventListener\\","Symfony\\Component\\Form\\FormEvents","\\InvalidArgumentException","Symfony\\Component\\Form\\Extension\\Validator\\Constraints\\Form","Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\ViolationMapperInterface","Symfony\\Component\\Form\\FormEvent"]},{"name":"BaseValidatorExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractTypeExtension","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"SubmitTypeValidatorExtension","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Validator\\Type\\BaseValidatorExtension"]},{"name":"FormTypeValidatorExtension","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Validator\\Type\\BaseValidatorExtension","\\InvalidArgumentException","Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\ViolationMapper","Symfony\\Component\\Form\\Extension\\Validator\\EventListener\\ValidationListener","\\parent","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"RepeatedTypeValidatorExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractTypeExtension","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"ValidatorExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Extension\\Validator\\Constraints\\Form","Symfony\\Component\\Validator\\Constraints\\Valid","\\ValidatorTypeGuesser","\\Type\\FormTypeValidatorExtension","\\Type\\RepeatedTypeValidatorExtension","\\Type\\SubmitTypeValidatorExtension"]},{"name":"ValidatorTypeGuesser","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Validator\\","Symfony\\Component\\Form\\Guess\\TypeGuess","Symfony\\Component\\Form\\Guess\\Guess","Symfony\\Component\\Form\\Guess\\ValueGuess","Symfony\\Component\\Validator\\MetadataFactoryInterface","Symfony\\Component\\Validator\\Constraint","\\Closure"]},{"name":"FormValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\self","\\Form","Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Form\\FormInterface"]},{"name":"MappingRule","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\","Symfony\\Component\\Form\\Exception\\ErrorMappingException","Symfony\\Component\\Form\\FormInterface"]},{"name":"RelativePath","size":3000,"relations":["Symfony\\Component\\PropertyAccess\\PropertyPath","\\parent","Symfony\\Component\\Form\\FormInterface"]},{"name":"ViolationMapperInterface","size":3000,"relations":["\\","Symfony\\Component\\Validator\\ConstraintViolation","Symfony\\Component\\Form\\FormInterface"]},{"name":"ViolationPathIterator","size":3000,"relations":["Symfony\\Component\\PropertyAccess\\PropertyPathIterator","\\parent","\\ViolationPath"]},{"name":"ViolationPath","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\","Symfony\\Component\\PropertyAccess\\PropertyPath","Symfony\\Component\\Form\\Exception\\OutOfBoundsException","\\ViolationPathIterator"]},{"name":"ViolationMapper","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\","\\ViolationPath","Symfony\\Component\\PropertyAccess\\PropertyPathIterator","\\ViolationPathIterator","\\MappingRule","Symfony\\Component\\Form\\FormError","\\RecursiveIteratorIterator","Symfony\\Component\\Form\\Util\\InheritDataAwareIterator","Symfony\\Component\\PropertyAccess\\PropertyPathBuilder","\\RelativePath","Symfony\\Component\\Validator\\ConstraintViolation","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\PropertyAccess\\PropertyPathIteratorInterface"]},{"name":"CsrfValidationListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Csrf\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Security\\Csrf\\CsrfToken","Symfony\\Component\\Form\\FormError","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\Form\\FormEvent"]},{"name":"FormTypeCsrfExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractTypeExtension","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\Extension\\Csrf\\EventListener\\CsrfValidationListener","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\Form\\FormBuilderInterface","Symfony\\Component\\Form\\FormView","Symfony\\Component\\Form\\FormInterface","Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","Symfony\\Component\\OptionsResolver\\Options"]},{"name":"DefaultCsrfProvider","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\"]},{"name":"CsrfTokenManagerAdapter","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\","Symfony\\Component\\Security\\Csrf\\CsrfToken","Symfony\\Component\\Security\\Csrf\\CsrfTokenManagerInterface"]},{"name":"CsrfProviderInterface","size":3000,"relations":["\\"]},{"name":"CsrfProviderAdapter","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\","Symfony\\Component\\Security\\Csrf\\CsrfToken","Symfony\\Component\\Form\\Exception\\BadMethodCallException","\\CsrfProviderInterface"]},{"name":"SessionCsrfProvider","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\DefaultCsrfProvider","\\parent","Symfony\\Component\\HttpFoundation\\Session\\Session"]},{"name":"CsrfExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","\\Type\\FormTypeCsrfExtension","Symfony\\Component\\Translation\\TranslatorInterface"]},{"name":"BindRequestListener","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\HttpFoundation\\EventListener\\","Symfony\\Component\\Form\\FormEvents","Symfony\\Component\\Form\\FormEvent"]},{"name":"FormTypeHttpFoundationExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractTypeExtension","Symfony\\Component\\Form\\Extension\\HttpFoundation\\EventListener\\BindRequestListener","Symfony\\Component\\Form\\Extension\\HttpFoundation\\HttpFoundationRequestHandler","Symfony\\Component\\Form\\RequestHandlerInterface","Symfony\\Component\\Form\\FormBuilderInterface"]},{"name":"HttpFoundationRequestHandler","size":3000,"relations":["\\Symfony\\Component\\Form\\Extension\\HttpFoundation\\","Symfony\\Component\\Form\\Util\\ServerParams","Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","Symfony\\Component\\Form\\FormError","Symfony\\Component\\Form\\FormInterface"]},{"name":"HttpFoundationExtension","size":3000,"relations":["Symfony\\Component\\Form\\AbstractExtension","\\Type\\FormTypeHttpFoundationExtension"]},{"name":"FormIntegrationTestCase","size":3000,"relations":["\\PHPUnit_Framework_TestCase","Symfony\\Component\\Form\\Forms"]},{"name":"FormPerformanceTestCase","size":3000,"relations":["\\Symfony\\Component\\Form\\Test\\FormIntegrationTestCase","\\parent","\\InvalidArgumentException"]},{"name":"TypeTestCase","size":3000,"relations":["\\Symfony\\Component\\Form\\Test\\FormIntegrationTestCase","\\parent","Symfony\\Component\\Form\\FormBuilder","\\self","\\DateTime"]},{"name":"DeprecationErrorHandler","size":3000,"relations":["\\Symfony\\Component\\Form\\Test\\","\\PHPUnit_Util_ErrorHandler","Symfony\\Component\\Form\\FormEvent"]},{"name":"SubmitButtonTypeInterface","size":3000,"relations":["\\FormTypeInterface"]},{"name":"Exception","size":3000,"relations":["\\Exception"]},{"name":"CircularReferenceException","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Exception\\RuntimeException"]},{"name":"UnsupportedException","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Exception\\InvalidArgumentException"]},{"name":"UnexpectedValueException","size":3000,"relations":["\\UnexpectedValueException"]},{"name":"EncoderInterface","size":3000,"relations":["\\"]},{"name":"JsonEncode","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Encoder\\","Symfony\\Component\\Serializer\\Exception\\UnexpectedValueException","\\JsonEncoder"]},{"name":"ChainDecoder","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Encoder\\","Symfony\\Component\\Serializer\\Exception\\RuntimeException"]},{"name":"JsonEncoder","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Encoder\\","\\JsonEncode","\\JsonDecode","\\self"]},{"name":"DecoderInterface","size":3000,"relations":["\\"]},{"name":"JsonDecode","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Encoder\\","Symfony\\Component\\Serializer\\Exception\\UnexpectedValueException","\\JsonEncoder"]},{"name":"XmlEncoder","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Encoder\\SerializerAwareEncoder","Symfony\\Component\\Serializer\\Exception\\UnexpectedValueException","\\DOMDocument","\\DOMXPath","\\DOMNode"]},{"name":"NormalizationAwareInterface","size":3000,"relations":["\\"]},{"name":"SerializerAwareEncoder","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Encoder\\","Symfony\\Component\\Serializer\\SerializerInterface"]},{"name":"ChainEncoder","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Encoder\\","Symfony\\Component\\Serializer\\Exception\\RuntimeException"]},{"name":"Serializer","size":3000,"relations":["\\Symfony\\Component\\Serializer\\","Symfony\\Component\\Serializer\\Encoder\\ChainEncoder","Symfony\\Component\\Serializer\\Encoder\\ChainDecoder","Symfony\\Component\\Serializer\\Exception\\UnexpectedValueException","Symfony\\Component\\Serializer\\Exception\\LogicException"]},{"name":"SerializerAwareInterface","size":3000,"relations":["\\","\\SerializerInterface"]},{"name":"DenormalizerInterface","size":3000,"relations":["\\"]},{"name":"DenormalizableInterface","size":3000,"relations":["\\"]},{"name":"SerializerAwareNormalizer","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Normalizer\\","Symfony\\Component\\Serializer\\SerializerInterface"]},{"name":"PropertyNormalizer","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Normalizer\\SerializerAwareNormalizer","Symfony\\Component\\Serializer\\Exception\\InvalidArgumentException","\\ReflectionObject","Symfony\\Component\\Serializer\\Exception\\LogicException","\\ReflectionClass","Symfony\\Component\\Serializer\\Exception\\RuntimeException","\\$class"]},{"name":"GetSetMethodNormalizer","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Normalizer\\SerializerAwareNormalizer","Symfony\\Component\\Serializer\\Exception\\InvalidArgumentException","Symfony\\Component\\Serializer\\Exception\\CircularReferenceException","\\ReflectionObject","\\ReflectionMethod","Symfony\\Component\\Serializer\\Exception\\LogicException","\\ReflectionClass","Symfony\\Component\\Serializer\\Exception\\RuntimeException","\\$class"]},{"name":"NormalizerInterface","size":3000,"relations":["\\"]},{"name":"CustomNormalizer","size":3000,"relations":["\\Symfony\\Component\\Serializer\\Normalizer\\SerializerAwareNormalizer","\\$class","\\ReflectionClass"]},{"name":"NormalizableInterface","size":3000,"relations":["\\"]},{"name":"SerializerInterface","size":3000,"relations":["\\"]},{"name":"CookieJar","size":3000,"relations":["\\Symfony\\Component\\BrowserKit\\","\\Cookie","\\Response"]},{"name":"Response","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\ResponseHeaderBag","\\DateTime","\\DateTimeZone","\\static","\\UnexpectedValueException","\\InvalidArgumentException","\\self","\\Request"]},{"name":"History","size":3000,"relations":["\\Symfony\\Component\\BrowserKit\\","\\LogicException","\\Request"]},{"name":"Request","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\ParameterBag","\\FileBag","\\ServerBag","\\HeaderBag","\\self","\\static","\\InvalidArgumentException","\\IpUtils","\\UnexpectedValueException","\\LogicException","\\AcceptHeader","\\Locale","Symfony\\Component\\HttpFoundation\\Session\\SessionInterface"]},{"name":"Cookie","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\InvalidArgumentException"]},{"name":"EventSubscriberInterface","size":3000,"relations":["\\"]},{"name":"ContainerAwareEventDispatcher","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\EventDispatcher","\\InvalidArgumentException","\\parent","\\$class","Symfony\\Component\\DependencyInjection\\ContainerInterface","\\Event"]},{"name":"ImmutableEventDispatcher","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\","\\BadMethodCallException","\\EventDispatcherInterface","\\Event","\\EventSubscriberInterface"]},{"name":"GenericEvent","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\Event","\\InvalidArgumentException","\\ArrayIterator"]},{"name":"EventDispatcher","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\","\\Event","\\EventSubscriberInterface"]},{"name":"Event","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\","\\EventDispatcherInterface"]},{"name":"EventDispatcherInterface","size":3000,"relations":["\\","\\Event","\\EventSubscriberInterface"]},{"name":"TraceableEventDispatcherInterface","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\EventDispatcherInterface"]},{"name":"WrappedListener","size":3000,"relations":["\\Symfony\\Component\\EventDispatcher\\Debug\\","Symfony\\Component\\Stopwatch\\Stopwatch","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\EventDispatcher\\Event"]},{"name":"ProcessFailedException","size":3000,"relations":["\\Symfony\\Component\\Process\\Exception\\RuntimeException","\\InvalidArgumentException","\\parent","Symfony\\Component\\Process\\Process"]},{"name":"ProcessTimedOutException","size":3000,"relations":["\\Symfony\\Component\\Process\\Exception\\RuntimeException","\\parent","\\self","\\LogicException","Symfony\\Component\\Process\\Process"]},{"name":"PhpProcess","size":3000,"relations":["\\Symfony\\Component\\Process\\Process","\\PhpExecutableFinder","\\parent","Symfony\\Component\\Process\\Exception\\RuntimeException"]},{"name":"Process","size":3000,"relations":["\\Symfony\\Component\\Process\\","Symfony\\Component\\Process\\Exception\\RuntimeException","Symfony\\Component\\Process\\Exception\\ProcessFailedException","Symfony\\Component\\Process\\Exception\\LogicException","\\ProcessUtils","\\self","Symfony\\Component\\Process\\Exception\\ProcessTimedOutException","Symfony\\Component\\Process\\Pipes\\WindowsPipes","Symfony\\Component\\Process\\Pipes\\UnixPipes","Symfony\\Component\\Process\\Exception\\InvalidArgumentException"]},{"name":"ProcessBuilder","size":3000,"relations":["\\Symfony\\Component\\Process\\","\\static","\\ProcessUtils","Symfony\\Component\\Process\\Exception\\InvalidArgumentException","Symfony\\Component\\Process\\Exception\\LogicException","\\Process"]},{"name":"ProcessUtils","size":3000,"relations":["\\Symfony\\Component\\Process\\","\\self","Symfony\\Component\\Process\\Exception\\InvalidArgumentException"]},{"name":"PhpExecutableFinder","size":3000,"relations":["\\Symfony\\Component\\Process\\","\\ExecutableFinder"]},{"name":"ExecutableFinder","size":3000,"relations":["\\Symfony\\Component\\Process\\"]},{"name":"AbstractPipes","size":3000,"relations":["\\Symfony\\Component\\Process\\Pipes\\"]},{"name":"UnixPipes","size":3000,"relations":["\\Symfony\\Component\\Process\\Pipes\\AbstractPipes","Symfony\\Component\\Process\\Process","\\self","\\static"]},{"name":"WindowsPipes","size":3000,"relations":["\\Symfony\\Component\\Process\\Pipes\\AbstractPipes","Symfony\\Component\\Process\\Process","Symfony\\Component\\Process\\Exception\\RuntimeException","\\self","\\parent","\\static"]},{"name":"PipesInterface","size":3000,"relations":["\\"]},{"name":"DumpException","size":3000,"relations":["\\Symfony\\Component\\Yaml\\Exception\\RuntimeException"]},{"name":"Unescaper","size":3000,"relations":["\\Symfony\\Component\\Yaml\\","\\self"]},{"name":"Inline","size":3000,"relations":["\\Symfony\\Component\\Yaml\\","\\self","Symfony\\Component\\Yaml\\Exception\\ParseException","Symfony\\Component\\Yaml\\Exception\\DumpException","\\Escaper","\\Unescaper"]},{"name":"Yaml","size":3000,"relations":["\\Symfony\\Component\\Yaml\\","Symfony\\Component\\Yaml\\Exception\\ParseException","\\Parser","\\Dumper"]},{"name":"Escaper","size":3000,"relations":["\\Symfony\\Component\\Yaml\\","\\self"]},{"name":"OptionsResolver","size":3000,"relations":["\\Symfony\\Component\\OptionsResolver\\","Symfony\\Component\\OptionsResolver\\Exception\\AccessException","\\ReflectionFunction","\\self","Symfony\\Component\\OptionsResolver\\Exception\\UndefinedOptionsException","Symfony\\Component\\OptionsResolver\\Exception\\MissingOptionsException","Symfony\\Component\\OptionsResolver\\Exception\\NoSuchOptionException","Symfony\\Component\\OptionsResolver\\Exception\\OptionDefinitionException","Symfony\\Component\\OptionsResolver\\Exception\\InvalidOptionsException","\\Closure"]},{"name":"Options","size":3000,"relations":["\\ArrayAccess,"]},{"name":"InvalidOptionsException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\ValidatorException","\\parent"]},{"name":"OptionDefinitionException","size":3000,"relations":["\\LogicException"]},{"name":"UndefinedOptionsException","size":3000,"relations":["\\Symfony\\Component\\OptionsResolver\\Exception\\InvalidArgumentException"]},{"name":"NoSuchOptionException","size":3000,"relations":["\\OutOfBoundsException"]},{"name":"MissingOptionsException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\ValidatorException","\\parent"]},{"name":"AccessException","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\Exception\\RuntimeException"]},{"name":"OptionsResolverInterface","size":3000,"relations":["\\"]},{"name":"ScalarNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\VariableNode","Symfony\\Component\\Config\\Definition\\Exception\\InvalidTypeException"]},{"name":"ConfigurationInterface","size":3000,"relations":["\\"]},{"name":"InvalidTypeException","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException"]},{"name":"ForbiddenOverwriteException","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException"]},{"name":"DuplicateKeyException","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException"]},{"name":"InvalidDefinitionException","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Exception\\Exception"]},{"name":"UnsetKeyException","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Exception\\Exception"]},{"name":"NumericNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\ScalarNode","\\parent","Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException","\\NodeInterface"]},{"name":"PrototypedArrayNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\ArrayNode","\\InvalidArgumentException","Symfony\\Component\\Config\\Definition\\Exception\\Exception","Symfony\\Component\\Config\\Definition\\Exception\\UnsetKeyException","Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException","Symfony\\Component\\Config\\Definition\\Exception\\DuplicateKeyException","\\PrototypeNodeInterface","\\NodeInterface"]},{"name":"BaseNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\","\\InvalidArgumentException","Symfony\\Component\\Config\\Definition\\Exception\\ForbiddenOverwriteException","Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException","\\NodeInterface"]},{"name":"IntegerNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\NumericNode","Symfony\\Component\\Config\\Definition\\Exception\\InvalidTypeException"]},{"name":"FloatNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\NumericNode","Symfony\\Component\\Config\\Definition\\Exception\\InvalidTypeException"]},{"name":"XmlReferenceDumper","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Dumper\\","Symfony\\Component\\Config\\Definition\\ConfigurationInterface","Symfony\\Component\\Config\\Definition\\NodeInterface"]},{"name":"YamlReferenceDumper","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Dumper\\","\\$keyNodeClass","Symfony\\Component\\Yaml\\Inline","Symfony\\Component\\Config\\Definition\\ConfigurationInterface","Symfony\\Component\\Config\\Definition\\NodeInterface"]},{"name":"PrototypeNodeInterface","size":3000,"relations":["\\NodeInterface"]},{"name":"ReferenceDumper","size":3000,"relations":["Symfony\\Component\\Config\\Definition\\Dumper\\YamlReferenceDumper"]},{"name":"BooleanNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\ScalarNode","Symfony\\Component\\Config\\Definition\\Exception\\InvalidTypeException"]},{"name":"EnumNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\ScalarNode","\\InvalidArgumentException","\\parent","Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException"]},{"name":"VariableNode","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\BaseNode","Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException"]},{"name":"NormalizationBuilder","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\","\\ExprBuilder","\\NodeDefinition","\\Closure"]},{"name":"NodeBuilder","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\","\\$class","\\RuntimeException","\\ParentNodeDefinitionInterface","\\NodeDefinition"]},{"name":"BooleanNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\ScalarNodeDefinition","\\parent","Symfony\\Component\\Config\\Definition\\BooleanNode","\\NodeParentInterface"]},{"name":"NodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\","\\ExprBuilder","\\ValidationBuilder","\\MergeBuilder","\\NormalizationBuilder","\\NodeParentInterface"]},{"name":"ExprBuilder","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\","\\InvalidArgumentException","Symfony\\Component\\Config\\Definition\\Exception\\UnsetKeyException","\\RuntimeException","\\NodeDefinition","\\Closure"]},{"name":"NodeParentInterface","size":3000,"relations":["\\"]},{"name":"ValidationBuilder","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\","\\ExprBuilder","\\NodeDefinition","\\Closure"]},{"name":"IntegerNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\NumericNodeDefinition","Symfony\\Component\\Config\\Definition\\IntegerNode"]},{"name":"VariableNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition","Symfony\\Component\\Config\\Definition\\VariableNode"]},{"name":"ParentNodeDefinitionInterface","size":3000,"relations":["\\","\\NodeDefinition","\\NodeBuilder"]},{"name":"ScalarNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\VariableNodeDefinition","Symfony\\Component\\Config\\Definition\\ScalarNode"]},{"name":"TreeBuilder","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\","\\NodeBuilder","\\RuntimeException"]},{"name":"NumericNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\ScalarNodeDefinition","\\InvalidArgumentException"]},{"name":"ArrayNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition","\\parent","\\NodeBuilder","Symfony\\Component\\Config\\Definition\\ArrayNode","Symfony\\Component\\Config\\Definition\\PrototypedArrayNode","Symfony\\Component\\Config\\Definition\\Exception\\InvalidDefinitionException","\\NodeParentInterface","\\NodeDefinition"]},{"name":"MergeBuilder","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\","\\NodeDefinition"]},{"name":"EnumNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\ScalarNodeDefinition","\\InvalidArgumentException","\\RuntimeException","Symfony\\Component\\Config\\Definition\\EnumNode"]},{"name":"FloatNodeDefinition","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\Builder\\NumericNodeDefinition","Symfony\\Component\\Config\\Definition\\FloatNode"]},{"name":"Processor","size":3000,"relations":["\\Symfony\\Component\\Config\\Definition\\","\\NodeInterface","\\ConfigurationInterface"]},{"name":"FileLoaderImportCircularReferenceException","size":3000,"relations":["\\Symfony\\Component\\Config\\Exception\\FileLoaderLoadException","\\Exception"]},{"name":"FileLoaderLoadException","size":3000,"relations":["\\Exception","\\parent"]},{"name":"XmlUtils","size":3000,"relations":["\\Symfony\\Component\\Config\\Util\\","\\InvalidArgumentException","\\DOMDocument","\\static","\\DomElement"]},{"name":"FileResource","size":3000,"relations":["\\Symfony\\Component\\Config\\Resource\\"]},{"name":"DirectoryResource","size":3000,"relations":["\\Symfony\\Component\\Config\\Resource\\","\\RecursiveIteratorIterator","\\RecursiveDirectoryIterator"]},{"name":"ResourceInterface","size":3000,"relations":["\\"]},{"name":"LoaderResolver","size":3000,"relations":["\\Symfony\\Component\\Config\\Loader\\","\\LoaderInterface"]},{"name":"LoaderResolverInterface","size":3000,"relations":["\\"]},{"name":"ConfigCache","size":3000,"relations":["\\Symfony\\Component\\Config\\","Symfony\\Component\\Filesystem\\Filesystem"]},{"name":"FileLocatorInterface","size":3000,"relations":["\\"]},{"name":"ValidationVisitor","size":3000,"relations":["\\Symfony\\Component\\Validator\\","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\ConstraintViolationList","\\ExecutionContext","\\LogicException","\\MetadataInterface"]},{"name":"MetadataInterface","size":3000,"relations":["Symfony\\Component\\Validator\\MetadataInterface"]},{"name":"PropertyMetadataInterface","size":3000,"relations":["\\MetadataInterface,"]},{"name":"GetterMetadata","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\MemberMetadata","Symfony\\Component\\Validator\\Exception\\ValidatorException","\\parent","\\ReflectionMethod"]},{"name":"ClassMetadataFactory","size":3000,"relations":["Symfony\\Component\\Validator\\Mapping\\Factory\\LazyLoadingMetadataFactory"]},{"name":"CascadingStrategy","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\"]},{"name":"YamlFilesLoader","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\FilesLoader","\\YamlFileLoader"]},{"name":"XmlFilesLoader","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\FilesLoader","\\XmlFileLoader"]},{"name":"AnnotationLoader","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\","Symfony\\Component\\Validator\\Exception\\MappingException","Doctrine\\Common\\Annotations\\Reader","Symfony\\Component\\Validator\\Mapping\\ClassMetadata"]},{"name":"StaticMethodLoader","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\","Symfony\\Component\\Validator\\Exception\\MappingException","Symfony\\Component\\Validator\\Mapping\\ClassMetadata"]},{"name":"LoaderChain","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\","Symfony\\Component\\Validator\\Exception\\MappingException","Symfony\\Component\\Validator\\Mapping\\ClassMetadata"]},{"name":"FilesLoader","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\LoaderChain","\\parent"]},{"name":"AbstractLoader","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Loader\\","Symfony\\Component\\Validator\\Exception\\MappingException","\\self","\\$className"]},{"name":"CacheInterface","size":3000,"relations":["\\","Symfony\\Component\\Validator\\Mapping\\ClassMetadata"]},{"name":"DoctrineCache","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Cache\\","Doctrine\\Common\\Cache\\Cache","Symfony\\Component\\Validator\\Mapping\\ClassMetadata"]},{"name":"ApcCache","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Cache\\","\\RuntimeException","Symfony\\Component\\Validator\\Mapping\\ClassMetadata"]},{"name":"TraversalStrategy","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\"]},{"name":"ElementMetadata","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\GenericMetadata"]},{"name":"MemberMetadata","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\ElementMetadata","Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\parent","\\CascadingStrategy","\\TraversalStrategy","Symfony\\Component\\Validator\\ValidationVisitorInterface"]},{"name":"PropertyMetadata","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\MemberMetadata","Symfony\\Component\\Validator\\Exception\\ValidatorException","\\parent","\\ReflectionClass","\\ReflectionProperty"]},{"name":"BlackholeMetadataFactory","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Factory\\BlackHoleMetadataFactory"]},{"name":"MetadataFactoryInterface","size":3000,"relations":["\\"]},{"name":"LazyLoadingMetadataFactory","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Factory\\","Symfony\\Component\\Validator\\Exception\\NoSuchMetadataException","Symfony\\Component\\Validator\\Mapping\\ClassMetadata","Symfony\\Component\\Validator\\Mapping\\Loader\\LoaderInterface","Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface"]},{"name":"BlackHoleMetadataFactory","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\Factory\\","\\LogicException"]},{"name":"ClassMetadata","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\ElementMetadata","Symfony\\Component\\Validator\\Constraint","\\parent","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\TraversalStrategy","\\PropertyMetadata","\\GetterMetadata","Symfony\\Component\\Validator\\Exception\\GroupDefinitionException","Symfony\\Component\\Validator\\Constraints\\GroupSequence","\\ReflectionClass","\\CascadingStrategy","Symfony\\Component\\Validator\\ValidationVisitorInterface","\\ClassMetadata","\\MemberMetadata","\\PropertyMetadataInterface"]},{"name":"ClassMetadataInterface","size":3000,"relations":["\\MetadataInterface,"]},{"name":"GenericMetadata","size":3000,"relations":["\\Symfony\\Component\\Validator\\Mapping\\","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\CascadingStrategy","\\TraversalStrategy","Symfony\\Component\\Validator\\Exception\\BadMethodCallException","Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Validator\\ValidationVisitorInterface"]},{"name":"ValidatorInterface","size":3000,"relations":["Symfony\\Component\\Validator\\Mapping\\Factory\\MetadataFactoryInterface","Symfony\\Component\\Validator\\Context\\ExecutionContextInterface"]},{"name":"NoSuchMetadataException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\ValidatorException"]},{"name":"ConstraintDefinitionException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\ValidatorException"]},{"name":"UnsupportedMetadataException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\InvalidArgumentException"]},{"name":"MappingException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\ValidatorException"]},{"name":"GroupDefinitionException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\ValidatorException"]},{"name":"ValidatorException","size":3000,"relations":["\\Symfony\\Component\\Validator\\Exception\\RuntimeException"]},{"name":"Validation","size":3000,"relations":["\\Symfony\\Component\\Validator\\","\\self","\\ValidatorBuilder"]},{"name":"ConstraintViolationInterface","size":3000,"relations":["\\"]},{"name":"ExecutionContext","size":3000,"relations":["\\Symfony\\Component\\Validator\\Context\\","Symfony\\Component\\Validator\\ConstraintViolationList","Symfony\\Component\\Validator\\Exception\\BadMethodCallException","Symfony\\Component\\Validator\\ConstraintViolation","Symfony\\Component\\Validator\\Violation\\ConstraintViolationBuilder","Symfony\\Component\\Validator\\Util\\PropertyPath","Symfony\\Component\\Validator\\Validator\\ValidatorInterface","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\Validator\\Mapping\\MetadataInterface","Symfony\\Component\\Validator\\Constraint"]},{"name":"DefaultTranslator","size":3000,"relations":["\\Symfony\\Component\\Validator\\","Symfony\\Component\\Validator\\Exception\\InvalidArgumentException","Symfony\\Component\\Validator\\Exception\\BadMethodCallException"]},{"name":"PropertyPath","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\","Symfony\\Component\\PropertyAccess\\Exception\\UnexpectedTypeException","Symfony\\Component\\PropertyAccess\\Exception\\InvalidPropertyPathException","\\PropertyPathIterator","Symfony\\Component\\PropertyAccess\\Exception\\OutOfBoundsException"]},{"name":"ConstraintValidatorInterface","size":3000,"relations":["\\","\\ExecutionContextInterface","\\Constraint"]},{"name":"Constraint","size":3000,"relations":["\\Symfony\\Component\\Validator\\","\\static","Symfony\\Component\\Validator\\Exception\\InvalidArgumentException","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","Symfony\\Component\\Validator\\Exception\\InvalidOptionsException","Symfony\\Component\\Validator\\Exception\\MissingOptionsException","\\self","\\Constraint"]},{"name":"ValidationVisitorInterface","size":3000,"relations":["\\","\\MetadataInterface"]},{"name":"ExecutionContextInterface","size":3000,"relations":["Symfony\\Component\\Validator\\ExecutionContextInterface","Symfony\\Component\\Validator\\Mapping\\MetadataInterface","Symfony\\Component\\Validator\\Constraint"]},{"name":"ValidatorBuilder","size":3000,"relations":["\\Symfony\\Component\\Validator\\","Symfony\\Component\\Validator\\Exception\\ValidatorException","\\RuntimeException","Doctrine\\Common\\Annotations\\CachedReader","Doctrine\\Common\\Annotations\\AnnotationReader","Doctrine\\Common\\Cache\\ArrayCache","\\Validation","Symfony\\Component\\Validator\\Exception\\InvalidArgumentException","Symfony\\Component\\Validator\\Mapping\\Loader\\XmlFilesLoader","Symfony\\Component\\Validator\\Mapping\\Loader\\XmlFileLoader","Symfony\\Component\\Validator\\Mapping\\Loader\\YamlFilesLoader","Symfony\\Component\\Validator\\Mapping\\Loader\\YamlFileLoader","Symfony\\Component\\Validator\\Mapping\\Loader\\StaticMethodLoader","Symfony\\Component\\Validator\\Mapping\\Loader\\AnnotationLoader","Symfony\\Component\\Validator\\Mapping\\Loader\\LoaderChain","Symfony\\Component\\Validator\\Mapping\\Factory\\LazyLoadingMetadataFactory","Symfony\\Component\\Validator\\Mapping\\ClassMetadataFactory","\\ConstraintValidatorFactory","\\DefaultTranslator","\\Symfony\\Component\\Validator\\Symfony\\Component\\Validator\\Validator","Symfony\\Component\\Validator\\Context\\ExecutionContextFactory","Symfony\\Component\\Validator\\Validator\\RecursiveValidator","Symfony\\Component\\Validator\\Context\\LegacyExecutionContextFactory","Symfony\\Component\\Validator\\Validator\\LegacyValidator","\\ObjectInitializerInterface","Doctrine\\Common\\Annotations\\Reader","\\MetadataFactoryInterface","Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface","\\ConstraintValidatorFactoryInterface","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\PropertyAccess\\PropertyAccessorInterface"]},{"name":"GlobalExecutionContextInterface","size":3000,"relations":["\\"]},{"name":"ConstraintValidatorFactoryInterface","size":3000,"relations":["\\","\\Constraint"]},{"name":"ConstraintViolationList","size":3000,"relations":["\\Symfony\\Component\\Validator\\","\\OutOfBoundsException","\\ArrayIterator","\\ConstraintViolationInterface","\\ConstraintViolationListInterface"]},{"name":"ValidatorBuilderInterface","size":3000,"relations":["\\","\\ObjectInitializerInterface","Doctrine\\Common\\Annotations\\Reader","\\MetadataFactoryInterface","Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface","\\ConstraintValidatorFactoryInterface","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\PropertyAccess\\PropertyAccessorInterface"]},{"name":"ConstraintViolationListInterface","size":3000,"relations":["\\Traversable,","\\ConstraintViolationInterface","\\ConstraintViolationListInterface"]},{"name":"LegacyValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Validator\\RecursiveValidator","\\self","\\parent","Symfony\\Component\\Validator\\Constraints\\Valid"]},{"name":"RecursiveContextualValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Validator\\","Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Validator\\Mapping\\GenericMetadata","Symfony\\Component\\Validator\\Mapping\\TraversalStrategy","Symfony\\Component\\Validator\\Exception\\RuntimeException","Symfony\\Component\\Validator\\Exception\\ValidatorException","Symfony\\Component\\Validator\\Util\\PropertyPath","Symfony\\Component\\Validator\\Exception\\UnsupportedMetadataException","Symfony\\Component\\Validator\\Constraints\\GroupSequence","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","Symfony\\Component\\Validator\\Mapping\\CascadingStrategy","Symfony\\Component\\Validator\\Context\\ExecutionContextInterface","Symfony\\Component\\Validator\\Mapping\\ClassMetadataInterface","Symfony\\Component\\Validator\\Mapping\\MetadataInterface"]},{"name":"ContextualValidatorInterface","size":3000,"relations":["\\"]},{"name":"RecursiveValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Validator\\","\\RecursiveContextualValidator","Symfony\\Component\\Validator\\Context\\ExecutionContextInterface"]},{"name":"ConstraintViolation","size":3000,"relations":["\\Symfony\\Component\\Validator\\","\\Constraint"]},{"name":"PropertyMetadataContainerInterface","size":3000,"relations":["\\"]},{"name":"Validator","size":3000,"relations":["\\Symfony\\Component\\Validator\\","Symfony\\Component\\Validator\\Exception\\ValidatorException","\\ExecutionContext","\\ValidationVisitor","\\Constraint"]},{"name":"LegacyExecutionContextFactory","size":3000,"relations":["\\Symfony\\Component\\Validator\\Context\\","\\LegacyExecutionContext","Symfony\\Component\\Validator\\MetadataFactoryInterface","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\Validator\\Validator\\ValidatorInterface"]},{"name":"ExecutionContextFactory","size":3000,"relations":["\\Symfony\\Component\\Validator\\Context\\","\\ExecutionContext","Symfony\\Component\\Translation\\TranslatorInterface","Symfony\\Component\\Validator\\Validator\\ValidatorInterface"]},{"name":"LegacyExecutionContext","size":3000,"relations":["\\Symfony\\Component\\Validator\\Context\\ExecutionContext","\\parent","Symfony\\Component\\Validator\\Constraints\\Valid","Symfony\\Component\\Validator\\Validator\\ValidatorInterface","Symfony\\Component\\Validator\\MetadataFactoryInterface","Symfony\\Component\\Translation\\TranslatorInterface"]},{"name":"ExecutionContextFactoryInterface","size":3000,"relations":["\\","Symfony\\Component\\Validator\\Validator\\ValidatorInterface"]},{"name":"GroupSequenceProvider","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\"]},{"name":"Choice","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"NotBlank","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Date","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"TrueValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"NullValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"Isbn","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Callback","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\parent","\\self"]},{"name":"File","size":3000,"relations":["\\SplFileInfo","Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException","\\parent","Symfony\\Component\\HttpFoundation\\File\\MimeType\\ExtensionGuesser","Symfony\\Component\\HttpFoundation\\File\\MimeType\\MimeTypeGuesser","Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException","\\File"]},{"name":"Luhn","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"DateTime","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"CountryValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\Validator\\Constraint"]},{"name":"Regex","size":3000,"relations":["\\Symfony\\Component\\Finder\\Expression\\","\\self","\\InvalidArgumentException","\\Expression"]},{"name":"RangeValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\self","\\Range","\\DateTime","Symfony\\Component\\Validator\\Constraint"]},{"name":"CardScheme","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"IssnValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Issn","Symfony\\Component\\Validator\\Constraint"]},{"name":"Uuid","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"AbstractComparisonValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\DatetimeImmutable","\\DateTime","\\self","Symfony\\Component\\Validator\\Constraint"]},{"name":"IdenticalToValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"TypeValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"NotNull","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"GreaterThanValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"LessThan","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"Ip","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\parent","\\self","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException"]},{"name":"Time","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"RegexValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"LocaleValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\Validator\\Constraint"]},{"name":"GroupSequence","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\","\\ArrayIterator","Symfony\\Component\\Validator\\Exception\\OutOfBoundsException"]},{"name":"LessThanOrEqualValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"Language","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Currency","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Optional","size":3000,"relations":["Symfony\\Component\\Validator\\Constraints\\Optional"]},{"name":"FalseValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"Email","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Required","size":3000,"relations":["Symfony\\Component\\Validator\\Constraints\\Required"]},{"name":"IsbnValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Isbn","Symfony\\Component\\Validator\\Constraint"]},{"name":"ChoiceValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\Choice","Symfony\\Component\\Validator\\Constraint"]},{"name":"CardSchemeValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\CardScheme","Symfony\\Component\\Validator\\Constraint"]},{"name":"NotIdenticalTo","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"CurrencyValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\Validator\\Constraint"]},{"name":"ImageValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\FileValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\parent","\\Image","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","Symfony\\Component\\Validator\\Constraint"]},{"name":"Issn","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"IbanValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Iban","Symfony\\Component\\Validator\\Constraint"]},{"name":"CallbackValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\ReflectionMethod","Symfony\\Component\\Validator\\Constraint"]},{"name":"DateValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\static","\\Date","\\self","Symfony\\Component\\Validator\\Constraint"]},{"name":"NotEqualTo","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"True","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"BlankValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"LanguageValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Intl\\Intl","Symfony\\Component\\Validator\\Constraint"]},{"name":"Length","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\parent","Symfony\\Component\\Validator\\Exception\\MissingOptionsException"]},{"name":"IdenticalTo","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"IpValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Ip","Symfony\\Component\\Validator\\Constraint"]},{"name":"Null","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"TimeValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\static","\\Time","\\self","Symfony\\Component\\Validator\\Constraint"]},{"name":"LengthValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Length","Symfony\\Component\\Validator\\Constraint"]},{"name":"False","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Type","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Image","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\File"]},{"name":"NotNullValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"Collection","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\Composite","\\parent","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\Required"]},{"name":"EqualTo","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"Country","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Blank","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"FileValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\HttpFoundation\\File\\UploadedFile","\\File","\\Symfony\\Component\\Validator\\Constraints\\Symfony\\Component\\HttpFoundation\\File\\File","\\self","Symfony\\Component\\Validator\\Constraint"]},{"name":"Url","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"CollectionValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Collection","Symfony\\Component\\Validator\\Constraint"]},{"name":"GreaterThanOrEqualValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"UuidValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\self","\\Uuid","Symfony\\Component\\Validator\\Constraint"]},{"name":"Range","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\parent","Symfony\\Component\\Validator\\Exception\\MissingOptionsException"]},{"name":"EmailValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Exception\\RuntimeException","\\Egulias\\EmailValidator\\EmailValidator","\\Email","Symfony\\Component\\Validator\\Constraint"]},{"name":"UrlValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\static","Symfony\\Component\\Validator\\Constraint"]},{"name":"LessThanValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"DateTimeValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\DateValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\static","\\DateTime","\\DateValidator","\\TimeValidator","Symfony\\Component\\Validator\\Constraint"]},{"name":"AbstractComparison","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\parent"]},{"name":"LessThanOrEqual","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"NotEqualToValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"NotIdenticalToValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"LuhnValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Luhn","Symfony\\Component\\Validator\\Constraint"]},{"name":"GreaterThan","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"All","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\Composite"]},{"name":"Traverse","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\parent","\\self"]},{"name":"Count","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\parent","Symfony\\Component\\Validator\\Exception\\MissingOptionsException"]},{"name":"Composite","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","\\parent","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException"]},{"name":"GreaterThanOrEqual","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison"]},{"name":"Existence","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\Composite"]},{"name":"AllValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"EqualToValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator"]},{"name":"CountValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","\\Count","Symfony\\Component\\Validator\\Constraint"]},{"name":"Valid","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","\\parent"]},{"name":"Iban","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"ExpressionValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\PropertyAccess\\PropertyPath","Symfony\\Component\\Validator\\Exception\\RuntimeException","Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage","Symfony\\Component\\PropertyAccess\\PropertyAccess","Symfony\\Component\\Validator\\Constraint"]},{"name":"NotBlankValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Constraint"]},{"name":"GroupSequenceProviderInterface","size":3000,"relations":["\\"]},{"name":"ObjectInitializerInterface","size":3000,"relations":["\\"]},{"name":"ConstraintValidator","size":3000,"relations":["\\Symfony\\Component\\Validator\\","Symfony\\Component\\Validator\\Violation\\LegacyConstraintViolationBuilder","\\self","\\Locale","\\IntlDateFormatter","\\DateTime","\\ExecutionContextInterface"]},{"name":"LegacyConstraintViolationBuilder","size":3000,"relations":["\\Symfony\\Component\\Validator\\Violation\\","Symfony\\Component\\Validator\\ExecutionContextInterface"]},{"name":"ConstraintViolationBuilderInterface","size":3000,"relations":["\\"]},{"name":"ConstraintViolationBuilder","size":3000,"relations":["\\Symfony\\Component\\Validator\\Violation\\","Symfony\\Component\\Validator\\Util\\PropertyPath","Symfony\\Component\\Validator\\ConstraintViolation","Symfony\\Component\\Validator\\ConstraintViolationList","Symfony\\Component\\Validator\\Constraint","Symfony\\Component\\Translation\\TranslatorInterface"]},{"name":"ClassBasedInterface","size":3000,"relations":["\\"]},{"name":"StubIntl","size":3000,"relations":["Symfony\\Component\\Intl\\Globals\\IntlGlobals"]},{"name":"StubNumberFormatter","size":3000,"relations":["Symfony\\Component\\Intl\\NumberFormatter\\NumberFormatter"]},{"name":"StubLocale","size":3000,"relations":["Symfony\\Component\\Intl\\Locale\\Locale","\\self","Symfony\\Component\\Intl\\Intl"]},{"name":"StubIntlDateFormatter","size":3000,"relations":["Symfony\\Component\\Intl\\DateFormatter\\IntlDateFormatter"]},{"name":"StubCollator","size":3000,"relations":["Symfony\\Component\\Intl\\Collator\\Collator"]},{"name":"TokenNotFoundException","size":3000,"relations":["Symfony\\Component\\Security\\Core\\Exception\\RuntimeException"]},{"name":"BadCredentialsException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"AccountExpiredException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException"]},{"name":"UsernameNotFoundException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","\\parent"]},{"name":"ProviderNotFoundException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"InsufficientAuthenticationException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"LockedException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException"]},{"name":"LogoutException","size":3000,"relations":["\\RuntimeException","\\parent","\\Exception"]},{"name":"AuthenticationException","size":3000,"relations":["\\RuntimeException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"CredentialsExpiredException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException"]},{"name":"CookieTheftException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"UnsupportedUserException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationServiceException"]},{"name":"AuthenticationServiceException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"SessionUnavailableException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"AccountStatusException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","\\parent","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"NonceExpiredException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"AuthenticationCredentialsNotFoundException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"DisabledException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException"]},{"name":"InvalidCsrfTokenException","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"AccessDeniedException","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException","\\parent"]},{"name":"ClassUtils","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Util\\","\\self"]},{"name":"SecureRandom","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Util\\","\\RuntimeException","Psr\\Log\\LoggerInterface"]},{"name":"StringUtils","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Util\\"]},{"name":"SecureRandomInterface","size":3000,"relations":["\\"]},{"name":"UserPasswordEncoderInterface","size":3000,"relations":["\\","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"EncoderFactoryInterface","size":3000,"relations":["\\"]},{"name":"EncoderFactory","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Encoder\\","\\RuntimeException","\\InvalidArgumentException","\\ReflectionClass"]},{"name":"PlaintextPasswordEncoder","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Encoder\\BasePasswordEncoder","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException"]},{"name":"Pbkdf2PasswordEncoder","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Encoder\\BasePasswordEncoder","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","\\LogicException"]},{"name":"UserPasswordEncoder","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Encoder\\","\\EncoderFactoryInterface","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"BCryptPasswordEncoder","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Encoder\\BasePasswordEncoder","\\RuntimeException","\\InvalidArgumentException","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException"]},{"name":"MessageDigestPasswordEncoder","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Encoder\\BasePasswordEncoder","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","\\LogicException"]},{"name":"PasswordEncoderInterface","size":3000,"relations":["\\"]},{"name":"EncoderAwareInterface","size":3000,"relations":["\\"]},{"name":"BasePasswordEncoder","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Encoder\\","\\InvalidArgumentException","Symfony\\Component\\Security\\Core\\Util\\StringUtils","\\self"]},{"name":"AccessDecisionManager","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\","\\InvalidArgumentException","Symfony\\Component\\Security\\Core\\Authorization\\Voter\\VoterInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AuthorizationCheckerInterface","size":3000,"relations":["\\"]},{"name":"AuthorizationChecker","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationCredentialsNotFoundException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\TokenStorageInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","\\AccessDecisionManagerInterface"]},{"name":"AccessDecisionManagerInterface","size":3000,"relations":["\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"VoterInterface","size":3000,"relations":["\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AuthenticatedVoter","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\Voter\\","\\self","\\VoterInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationTrustResolverInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"RoleVoter","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\Voter\\","\\VoterInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"ExpressionVoter","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\Voter\\","\\VoterInterface","Symfony\\Component\\Security\\Core\\Authorization\\ExpressionLanguage","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationTrustResolverInterface","Symfony\\Component\\Security\\Core\\Role\\RoleHierarchyInterface","Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AbstractVoter","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\Voter\\","\\self","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"RoleHierarchyVoter","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authorization\\Voter\\RoleVoter","\\parent","Symfony\\Component\\Security\\Core\\Role\\RoleHierarchyInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AuthenticationEvent","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\Event","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AuthenticationFailureEvent","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Event\\AuthenticationEvent","\\parent","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"AuthenticationManagerInterface","size":3000,"relations":["\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SimplePreAuthenticatorInterface","size":3000,"relations":["\\SimpleAuthenticatorInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"AuthenticationTrustResolverInterface","size":3000,"relations":["\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"InMemoryTokenProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\","Symfony\\Component\\Security\\Core\\Exception\\TokenNotFoundException","\\PersistentToken","\\DateTime","\\PersistentTokenInterface"]},{"name":"PersistentTokenInterface","size":3000,"relations":["\\"]},{"name":"TokenProviderInterface","size":3000,"relations":["\\","\\DateTime","\\PersistentTokenInterface"]},{"name":"PersistentToken","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\","\\InvalidArgumentException","\\DateTime"]},{"name":"PreAuthenticatedToken","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\AbstractToken","\\parent","\\InvalidArgumentException"]},{"name":"TokenStorage","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"TokenStorageInterface","size":3000,"relations":["\\"]},{"name":"TokenInterface","size":3000,"relations":["\\Serializable"]},{"name":"RememberMeToken","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\AbstractToken","\\parent","\\InvalidArgumentException","\\LogicException","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"AbstractToken","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\","Symfony\\Component\\Security\\Core\\Role\\Role","\\InvalidArgumentException","\\BadMethodCallException","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"AnonymousToken","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\AbstractToken","\\parent"]},{"name":"UsernamePasswordToken","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\AbstractToken","\\parent","\\InvalidArgumentException","\\LogicException"]},{"name":"AuthenticationTrustResolver","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AuthenticationProviderManager","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\","\\InvalidArgumentException","Symfony\\Component\\Security\\Core\\AuthenticationEvents","Symfony\\Component\\Security\\Core\\Event\\AuthenticationEvent","Symfony\\Component\\Security\\Core\\Exception\\ProviderNotFoundException","Symfony\\Component\\Security\\Core\\Event\\AuthenticationFailureEvent","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SimpleAuthenticatorInterface","size":3000,"relations":["\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface","Symfony\\Component\\Security\\Core\\User\\UserProviderInterface"]},{"name":"SimpleFormAuthenticatorInterface","size":3000,"relations":["\\SimpleAuthenticatorInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"AnonymousAuthenticationProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"PreAuthenticatedAuthenticationProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\PreAuthenticatedToken","Symfony\\Component\\Security\\Core\\User\\UserProviderInterface","Symfony\\Component\\Security\\Core\\User\\UserCheckerInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SimpleAuthenticationProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","Symfony\\Component\\Security\\Core\\Authentication\\SimpleAuthenticatorInterface","Symfony\\Component\\Security\\Core\\User\\UserProviderInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"DaoAuthenticationProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\UserAuthenticationProvider","\\parent","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationServiceException","Symfony\\Component\\Security\\Core\\User\\UserProviderInterface","Symfony\\Component\\Security\\Core\\User\\UserCheckerInterface","Symfony\\Component\\Security\\Core\\Encoder\\EncoderFactoryInterface","Symfony\\Component\\Security\\Core\\User\\UserInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken"]},{"name":"UserAuthenticationProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\","\\InvalidArgumentException","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationServiceException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken","Symfony\\Component\\Security\\Core\\User\\UserCheckerInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"AuthenticationProviderInterface","size":3000,"relations":["Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"RememberMeAuthenticationProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\RememberMeToken","Symfony\\Component\\Security\\Core\\User\\UserCheckerInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SecurityContext","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\","\\BadMethodCallException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\TokenStorage","Symfony\\Component\\Security\\Core\\Authorization\\AuthorizationChecker","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"Role","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Role\\"]},{"name":"SwitchUserRole","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Role\\Role","\\parent","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"RoleHierarchy","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\Role\\","\\Role"]},{"name":"RoleHierarchyInterface","size":3000,"relations":["\\"]},{"name":"RoleInterface","size":3000,"relations":["\\"]},{"name":"AuthenticationEvents","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\"]},{"name":"AdvancedUserInterface","size":3000,"relations":["\\UserInterface"]},{"name":"UserChecker","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\User\\","Symfony\\Component\\Security\\Core\\Exception\\LockedException","Symfony\\Component\\Security\\Core\\Exception\\DisabledException","Symfony\\Component\\Security\\Core\\Exception\\AccountExpiredException","Symfony\\Component\\Security\\Core\\Exception\\CredentialsExpiredException","\\UserInterface"]},{"name":"EquatableInterface","size":3000,"relations":["\\","\\UserInterface"]},{"name":"InMemoryUserProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\User\\","\\User","\\LogicException","Symfony\\Component\\Security\\Core\\Exception\\UsernameNotFoundException","Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException","\\UserInterface"]},{"name":"User","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\User\\","\\InvalidArgumentException"]},{"name":"UserProviderInterface","size":3000,"relations":["\\","\\UserInterface"]},{"name":"UserInterface","size":3000,"relations":["\\"]},{"name":"ChainUserProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\User\\","Symfony\\Component\\Security\\Core\\Exception\\UsernameNotFoundException","Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException","\\UserInterface"]},{"name":"UserCheckerInterface","size":3000,"relations":["\\","\\UserInterface"]},{"name":"UserPasswordValidator","size":3000,"relations":["Symfony\\Component\\Validator\\ConstraintValidator","Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Encoder\\EncoderFactoryInterface","Symfony\\Component\\Validator\\Constraint"]},{"name":"UserPassword","size":3000,"relations":["Symfony\\Component\\Validator\\Constraint"]},{"name":"Security","size":3000,"relations":["\\Symfony\\Component\\Security\\Core\\"]},{"name":"SecurityContextInterface","size":3000,"relations":["\\TokenStorageInterface,"]},{"name":"Firewall","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\","\\SplObjectStorage","Symfony\\Component\\HttpKernel\\KernelEvents","\\FirewallMapInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpKernel\\Event\\FinishRequestEvent"]},{"name":"ListenerInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"RemoteUserAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\AbstractPreAuthenticatedListener","\\parent","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"AccessListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationCredentialsNotFoundException","Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManagerInterface","Symfony\\Component\\Security\\Http\\AccessMapInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"AbstractAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","\\InvalidArgumentException","\\RuntimeException","Symfony\\Component\\Security\\Core\\Exception\\SessionUnavailableException","Symfony\\Component\\Security\\Core\\Security","Symfony\\Component\\Security\\Http\\Event\\InteractiveLoginEvent","Symfony\\Component\\Security\\Http\\SecurityEvents","Symfony\\Component\\Security\\Http\\RememberMe\\RememberMeServicesInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SimpleFormAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\AbstractAuthenticationListener","\\InvalidArgumentException","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Security\\Core\\Exception\\InvalidArgumentException","\\parent","Symfony\\Component\\Security\\Csrf\\CsrfToken","Symfony\\Component\\Security\\Core\\Exception\\InvalidCsrfTokenException","Symfony\\Component\\Security\\Core\\Security","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"AnonymousAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\AnonymousToken","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"DigestAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","\\InvalidArgumentException","\\DigestData","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationServiceException","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\Exception\\NonceExpiredException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\User\\UserProviderInterface","Symfony\\Component\\Security\\Http\\EntryPoint\\DigestAuthenticationEntryPoint","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"DigestData","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","\\InvalidArgumentException"]},{"name":"LogoutListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Security\\Core\\Exception\\InvalidArgumentException","Symfony\\Component\\Security\\Csrf\\CsrfToken","Symfony\\Component\\Security\\Core\\Exception\\LogoutException","\\RuntimeException","Symfony\\Component\\Security\\Http\\Logout\\LogoutHandlerInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"BasicAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","\\InvalidArgumentException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Symfony\\Component\\Security\\Http\\EntryPoint\\AuthenticationEntryPointInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"UsernamePasswordFormAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\AbstractAuthenticationListener","Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","Symfony\\Component\\Security\\Core\\Exception\\InvalidArgumentException","\\parent","Symfony\\Component\\Security\\Csrf\\CsrfToken","Symfony\\Component\\Security\\Core\\Exception\\InvalidCsrfTokenException","Symfony\\Component\\Security\\Core\\Security","Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"ChannelListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\Security\\Http\\AccessMapInterface","Symfony\\Component\\Security\\Http\\EntryPoint\\AuthenticationEntryPointInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"RememberMeListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\Security\\Http\\Event\\InteractiveLoginEvent","Symfony\\Component\\Security\\Http\\SecurityEvents","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Http\\RememberMe\\RememberMeServicesInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"ContextListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","\\InvalidArgumentException","Symfony\\Component\\HttpKernel\\KernelEvents","\\RuntimeException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"X509AuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\AbstractPreAuthenticatedListener","\\parent","Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"SimplePreAuthenticationListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","\\InvalidArgumentException","\\UnexpectedValueException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Symfony\\Component\\Security\\Core\\Authentication\\SimplePreAuthenticatorInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent"]},{"name":"AbstractPreAuthenticatedListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\PreAuthenticatedToken","Symfony\\Component\\Security\\Http\\Event\\InteractiveLoginEvent","Symfony\\Component\\Security\\Http\\SecurityEvents","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"SwitchUserListener","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Firewall\\","\\InvalidArgumentException","\\LogicException","Symfony\\Component\\HttpFoundation\\RedirectResponse","Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException","Symfony\\Component\\Security\\Core\\Role\\SwitchUserRole","Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken","Symfony\\Component\\Security\\Http\\Event\\SwitchUserEvent","Symfony\\Component\\Security\\Http\\SecurityEvents","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationCredentialsNotFoundException","Symfony\\Component\\Security\\Core\\SecurityContextInterface","Symfony\\Component\\Security\\Core\\User\\UserProviderInterface","Symfony\\Component\\Security\\Core\\User\\UserCheckerInterface","Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManagerInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AccessDeniedHandlerInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException"]},{"name":"FirewallMapInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"SwitchUserEvent","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\Event","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\User\\UserInterface"]},{"name":"InteractiveLoginEvent","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\Event","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SecurityEvents","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\"]},{"name":"AuthenticationSuccessHandlerInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AuthenticationUtils","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Authentication\\","Symfony\\Component\\Security\\Core\\Security","\\LogicException","Symfony\\Component\\HttpFoundation\\RequestStack"]},{"name":"AuthenticationFailureHandlerInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"SimpleAuthenticationHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Authentication\\","\\UnexpectedValueException","Symfony\\Component\\Security\\Core\\Authentication\\SimpleAuthenticatorInterface","\\AuthenticationSuccessHandlerInterface","\\AuthenticationFailureHandlerInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"CustomAuthenticationFailureHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Authentication\\","\\AuthenticationFailureHandlerInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"CustomAuthenticationSuccessHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Authentication\\","\\AuthenticationSuccessHandlerInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"DefaultAuthenticationSuccessHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Authentication\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"DefaultAuthenticationFailureHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Authentication\\","Symfony\\Component\\Security\\Core\\Security","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"AccessMap","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"AccessMapInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"RetryAuthenticationEntryPoint","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\EntryPoint\\","Symfony\\Component\\HttpFoundation\\RedirectResponse","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"BasicAuthenticationEntryPoint","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\EntryPoint\\","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"DigestAuthenticationEntryPoint","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\EntryPoint\\","Symfony\\Component\\HttpFoundation\\Response","Psr\\Log\\LoggerInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"AuthenticationEntryPointInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"FormAuthenticationEntryPoint","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\EntryPoint\\","Symfony\\Component\\HttpKernel\\HttpKernelInterface","Symfony\\Component\\Security\\Http\\HttpUtils","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException"]},{"name":"PersistentTokenBasedRememberMeServices","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\RememberMe\\AbstractRememberMeServices","\\parent","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","Symfony\\Component\\Security\\Core\\Exception\\CookieTheftException","\\DateTime","\\self","Symfony\\Component\\HttpFoundation\\Cookie","Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\PersistentToken","Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\TokenProviderInterface","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"TokenBasedRememberMeServices","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\RememberMe\\AbstractRememberMeServices","Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","\\RuntimeException","Symfony\\Component\\Security\\Core\\Util\\StringUtils","Symfony\\Component\\HttpFoundation\\Cookie","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"AbstractRememberMeServices","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\RememberMe\\","\\InvalidArgumentException","\\RuntimeException","Symfony\\Component\\Security\\Core\\Authentication\\Token\\RememberMeToken","\\self","Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException","Symfony\\Component\\HttpFoundation\\Cookie","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"RememberMeServicesInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"LogoutSuccessHandlerInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"CookieClearingLogoutHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Logout\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"DefaultLogoutSuccessHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Logout\\","Symfony\\Component\\Security\\Http\\HttpUtils","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"SessionLogoutHandler","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Logout\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"LogoutHandlerInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\HttpFoundation\\Response","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SessionAuthenticationStrategy","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\Session\\","\\self","\\RuntimeException","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"SessionAuthenticationStrategyInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"HttpUtils","size":3000,"relations":["\\Symfony\\Component\\Security\\Http\\","\\InvalidArgumentException","Symfony\\Component\\HttpFoundation\\RedirectResponse","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\Security\\Core\\Security","\\LogicException","Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface"]},{"name":"AclAlreadyExistsException","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Exception\\Exception"]},{"name":"ConcurrentModificationException","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Exception\\Exception"]},{"name":"InvalidDomainObjectException","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Exception\\Exception"]},{"name":"NoAceFoundException","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Exception\\Exception","\\parent"]},{"name":"AclNotFoundException","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Exception\\Exception"]},{"name":"NotAllAclsFoundException","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Exception\\AclNotFoundException","\\SplObjectStorage"]},{"name":"SidNotLoadedException","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Exception\\Exception"]},{"name":"AuditableEntryInterface","size":3000,"relations":["\\EntryInterface"]},{"name":"EntryInterface","size":3000,"relations":["\\Serializable"]},{"name":"AclProviderInterface","size":3000,"relations":["\\","\\ObjectIdentityInterface"]},{"name":"MutableAclProviderInterface","size":3000,"relations":["\\AclProviderInterface","\\ObjectIdentityInterface","\\MutableAclInterface"]},{"name":"AclCacheInterface","size":3000,"relations":["\\","\\ObjectIdentityInterface","\\AclInterface"]},{"name":"MutableAclInterface","size":3000,"relations":["\\AclInterface","\\SecurityIdentityInterface","\\AclInterface"]},{"name":"ObjectIdentityInterface","size":3000,"relations":["\\","\\ObjectIdentityInterface"]},{"name":"SecurityIdentityInterface","size":3000,"relations":["\\","\\SecurityIdentityInterface"]},{"name":"AclInterface","size":3000,"relations":["\\Serializable"]},{"name":"SecurityIdentityRetrievalStrategyInterface","size":3000,"relations":["\\","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"DomainObjectInterface","size":3000,"relations":["\\"]},{"name":"PermissionGrantingStrategyInterface","size":3000,"relations":["\\","\\AclInterface"]},{"name":"AuditableAclInterface","size":3000,"relations":["\\MutableAclInterface"]},{"name":"ObjectIdentityRetrievalStrategyInterface","size":3000,"relations":["\\"]},{"name":"FieldEntryInterface","size":3000,"relations":["\\EntryInterface"]},{"name":"AuditLoggerInterface","size":3000,"relations":["\\","\\EntryInterface"]},{"name":"Acl","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","\\InvalidArgumentException","\\OutOfBoundsException","\\PermissionGrantingStrategy","\\Entry","\\FieldEntry","Doctrine\\Common\\PropertyChangedListener","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityInterface","Symfony\\Component\\Security\\Acl\\Model\\AclInterface","Symfony\\Component\\Security\\Acl\\Model\\EntryInterface"]},{"name":"Entry","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","Symfony\\Component\\Security\\Acl\\Model\\AclInterface","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityInterface"]},{"name":"AclCollectionCache","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","Symfony\\Component\\Security\\Acl\\Model\\AclProviderInterface","Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityRetrievalStrategyInterface","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityRetrievalStrategyInterface"]},{"name":"RoleSecurityIdentity","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityInterface"]},{"name":"FieldEntry","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\Entry","\\parent","Symfony\\Component\\Security\\Acl\\Model\\AclInterface","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityInterface"]},{"name":"ObjectIdentityRetrievalStrategy","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","\\ObjectIdentity"]},{"name":"UserSecurityIdentity","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","\\InvalidArgumentException","\\self","Symfony\\Component\\Security\\Core\\Util\\ClassUtils","Symfony\\Component\\Security\\Core\\User\\UserInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityInterface"]},{"name":"DoctrineAclCache","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","\\InvalidArgumentException","\\ReflectionProperty","Doctrine\\Common\\Cache\\Cache","Symfony\\Component\\Security\\Acl\\Model\\PermissionGrantingStrategyInterface","Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityInterface","Symfony\\Component\\Security\\Acl\\Model\\AclInterface"]},{"name":"SecurityIdentityRetrievalStrategy","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","\\UserSecurityIdentity","\\RoleSecurityIdentity","Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AuthenticatedVoter","Symfony\\Component\\Security\\Core\\Role\\RoleHierarchyInterface","Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationTrustResolver","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"PermissionGrantingStrategy","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","Symfony\\Component\\Security\\Acl\\Exception\\NoAceFoundException","\\self","\\RuntimeException","Symfony\\Component\\Security\\Acl\\Model\\AuditLoggerInterface","Symfony\\Component\\Security\\Acl\\Model\\AclInterface","Symfony\\Component\\Security\\Acl\\Model\\EntryInterface"]},{"name":"ObjectIdentity","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","\\InvalidArgumentException","Symfony\\Component\\Security\\Acl\\Exception\\InvalidDomainObjectException","\\self","Symfony\\Component\\Security\\Core\\Util\\ClassUtils","Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityInterface"]},{"name":"AuditLogger","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Domain\\","Symfony\\Component\\Security\\Acl\\Model\\EntryInterface"]},{"name":"AclProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Dbal\\","Symfony\\Component\\Security\\Acl\\Domain\\ObjectIdentity","\\SplObjectStorage","\\RuntimeException","\\self","Symfony\\Component\\Security\\Acl\\Exception\\NotAllAclsFoundException","Symfony\\Component\\Security\\Acl\\Exception\\AclNotFoundException","\\ReflectionProperty","\\ReflectionClass","\\PDO","Symfony\\Component\\Security\\Acl\\Domain\\Acl","Symfony\\Component\\Security\\Acl\\Domain\\UserSecurityIdentity","Symfony\\Component\\Security\\Acl\\Domain\\RoleSecurityIdentity","Symfony\\Component\\Security\\Acl\\Domain\\Entry","Symfony\\Component\\Security\\Acl\\Domain\\FieldEntry","Doctrine\\DBAL\\Connection","Symfony\\Component\\Security\\Acl\\Model\\PermissionGrantingStrategyInterface","Symfony\\Component\\Security\\Acl\\Model\\AclCacheInterface","Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityInterface","Symfony\\Component\\Security\\Acl\\Model\\AclInterface","Doctrine\\DBAL\\Driver\\Statement"]},{"name":"Schema","size":3000,"relations":["Doctrine\\DBAL\\Schema\\Schema","\\parent","Doctrine\\DBAL\\Connection","\\Symfony\\Component\\Security\\Acl\\Dbal\\Doctrine\\DBAL\\Schema\\Schema"]},{"name":"MutableAclProvider","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Dbal\\AclProvider","\\parent","\\SplObjectStorage","Symfony\\Component\\Security\\Acl\\Exception\\AclAlreadyExistsException","\\InvalidArgumentException","\\ReflectionProperty","Symfony\\Component\\Security\\Acl\\Exception\\ConcurrentModificationException","Doctrine\\DBAL\\Connection","Symfony\\Component\\Security\\Acl\\Model\\PermissionGrantingStrategyInterface","Symfony\\Component\\Security\\Acl\\Model\\AclCacheInterface","Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityInterface","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityInterface","Symfony\\Component\\Security\\Acl\\Model\\MutableAclInterface","Symfony\\Component\\Security\\Acl\\Domain\\UserSecurityIdentity","Symfony\\Component\\Security\\Acl\\Model\\AclInterface"]},{"name":"BasicPermissionMap","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Permission\\","\\self","\\MaskBuilder"]},{"name":"PermissionMapInterface","size":3000,"relations":["\\"]},{"name":"MaskBuilder","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Permission\\","\\InvalidArgumentException","\\self","\\ReflectionClass","\\RuntimeException"]},{"name":"AclVoter","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Voter\\","\\self","Symfony\\Component\\Security\\Acl\\Model\\AclProviderInterface","Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityRetrievalStrategyInterface","Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityRetrievalStrategyInterface","Symfony\\Component\\Security\\Acl\\Permission\\PermissionMapInterface","Psr\\Log\\LoggerInterface","Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface"]},{"name":"FieldVote","size":3000,"relations":["\\Symfony\\Component\\Security\\Acl\\Voter\\"]},{"name":"CsrfTokenManagerInterface","size":3000,"relations":["\\","\\CsrfToken"]},{"name":"SessionTokenStorage","size":3000,"relations":["\\Symfony\\Component\\Security\\Csrf\\TokenStorage\\","Symfony\\Component\\Security\\Csrf\\Exception\\TokenNotFoundException","Symfony\\Component\\HttpFoundation\\Session\\SessionInterface"]},{"name":"NativeSessionTokenStorage","size":3000,"relations":["\\Symfony\\Component\\Security\\Csrf\\TokenStorage\\","Symfony\\Component\\Security\\Csrf\\Exception\\TokenNotFoundException"]},{"name":"TokenGeneratorInterface","size":3000,"relations":["\\"]},{"name":"UriSafeTokenGenerator","size":3000,"relations":["\\Symfony\\Component\\Security\\Csrf\\TokenGenerator\\","Symfony\\Component\\Security\\Core\\Util\\SecureRandom","Symfony\\Component\\Security\\Core\\Util\\SecureRandomInterface"]},{"name":"CsrfTokenManager","size":3000,"relations":["\\Symfony\\Component\\Security\\Csrf\\","Symfony\\Component\\Security\\Csrf\\TokenGenerator\\UriSafeTokenGenerator","Symfony\\Component\\Security\\Csrf\\TokenStorage\\NativeSessionTokenStorage","\\CsrfToken","Symfony\\Component\\Security\\Core\\Util\\StringUtils","Symfony\\Component\\Security\\Csrf\\TokenGenerator\\TokenGeneratorInterface","Symfony\\Component\\Security\\Csrf\\TokenStorage\\TokenStorageInterface"]},{"name":"CsrfToken","size":3000,"relations":["\\Symfony\\Component\\Security\\Csrf\\"]},{"name":"ThrowingCasterException","size":3000,"relations":["\\Exception","\\parent","\\Exception"]},{"name":"AbstractDumper","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Dumper\\","\\static","Symfony\\Component\\VarDumper\\Cloner\\Data"]},{"name":"HtmlDumper","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Dumper\\CliDumper","\\parent","Symfony\\Component\\VarDumper\\Cloner\\Cursor","\\self","\\AbstractDumper","Symfony\\Component\\VarDumper\\Cloner\\Data"]},{"name":"CliDumper","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Dumper\\AbstractDumper","\\parent","Symfony\\Component\\VarDumper\\Cloner\\Cursor","\\self","\\static"]},{"name":"DataDumperInterface","size":3000,"relations":["\\","Symfony\\Component\\VarDumper\\Cloner\\Data"]},{"name":"AbstractCloner","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Cloner\\","\\static","\\Data","\\ReflectionClass","Symfony\\Component\\VarDumper\\Exception\\ThrowingCasterException","\\ErrorException","\\Stub"]},{"name":"Stub","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Cloner\\"]},{"name":"Cursor","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Cloner\\"]},{"name":"VarCloner","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Cloner\\AbstractCloner","\\self","\\Stub"]},{"name":"ClonerInterface","size":3000,"relations":["\\"]},{"name":"Data","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Cloner\\","\\Cursor","\\Stub","\\RuntimeException","\\DumperInterface"]},{"name":"ExceptionCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","\\static","\\self","\\ConstStub","\\Exception","Symfony\\Component\\VarDumper\\Cloner\\Stub","\\ErrorException","Symfony\\Component\\VarDumper\\Exception\\ThrowingCasterException"]},{"name":"SplCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","\\ArrayObject","\\ReflectionClass","\\SplDoublyLinkedList","\\ConstStub","Symfony\\Component\\VarDumper\\Cloner\\Stub","\\Iterator","\\SplFixedArray","\\SplObjectStorage"]},{"name":"DOMCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","\\self","\\ConstStub","\\CutStub","\\DOMException","Symfony\\Component\\VarDumper\\Cloner\\Stub","\\DOMNode","\\DOMNameSpaceNode","\\DOMDocument","\\DOMCharacterData","\\DOMAttr","\\DOMElement","\\DOMText","\\DOMTypeinfo","\\DOMDomError","\\DOMLocator","\\DOMDocumentType","\\DOMNotation","\\DOMEntity","\\DOMProcessingInstruction","\\DOMXPath"]},{"name":"PdoCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","\\PDO","\\self","\\ConstStub","Symfony\\Component\\VarDumper\\Cloner\\Stub","\\PDOStatement"]},{"name":"ConstStub","size":3000,"relations":["Symfony\\Component\\VarDumper\\Cloner\\Stub"]},{"name":"ResourceCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","\\static","Symfony\\Component\\VarDumper\\Cloner\\Stub"]},{"name":"CutStub","size":3000,"relations":["Symfony\\Component\\VarDumper\\Cloner\\Stub","\\self"]},{"name":"DoctrineCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","\\CutStub","\\Symfony\\Component\\VarDumper\\Caster\\Doctrine\\Common\\Proxy\\Proxy","Symfony\\Component\\VarDumper\\Cloner\\Stub","\\Symfony\\Component\\VarDumper\\Caster\\Doctrine\\ORM\\Proxy\\Proxy","Doctrine\\ORM\\PersistentCollection"]},{"name":"StubCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","Symfony\\Component\\VarDumper\\Cloner\\Stub"]},{"name":"ReflectionCaster","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\Caster\\","\\static","\\ReflectionFunction","\\Reflector","Symfony\\Component\\VarDumper\\Cloner\\Stub","\\Closure"]},{"name":"VarDumper","size":3000,"relations":["\\Symfony\\Component\\VarDumper\\","\\self","Symfony\\Component\\VarDumper\\Cloner\\VarCloner","Symfony\\Component\\VarDumper\\Dumper\\CliDumper","Symfony\\Component\\VarDumper\\Dumper\\HtmlDumper","\\InvalidArgumentException"]},{"name":"XcacheClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\","\\RuntimeException","\\InvalidArgumentException"]},{"name":"ClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\"]},{"name":"MapClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\"]},{"name":"DebugUniversalClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\UniversalClassLoader","\\static","\\RuntimeException"]},{"name":"Psr4ClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\"]},{"name":"ApcUniversalClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\UniversalClassLoader","\\RuntimeException","\\parent"]},{"name":"ClassCollectionLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\","\\self","\\RuntimeException","\\ReflectionClass","\\InvalidArgumentException","\\ArrayObject"]},{"name":"WinCacheClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\","\\RuntimeException","\\InvalidArgumentException"]},{"name":"DebugClassLoader","size":3000,"relations":["\\Symfony\\Component\\Debug\\","\\self","\\static","\\ErrorHandler","\\ReflectionClass","\\RuntimeException"]},{"name":"UniversalClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\"]},{"name":"ApcClassLoader","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\","\\RuntimeException","\\InvalidArgumentException"]},{"name":"ClassMapGenerator","size":3000,"relations":["\\Symfony\\Component\\ClassLoader\\","\\static","\\RecursiveIteratorIterator","\\RecursiveDirectoryIterator","\\self"]},{"name":"Section","size":3000,"relations":["\\Symfony\\Component\\Stopwatch\\","\\self","\\StopwatchEvent","\\LogicException"]},{"name":"StopwatchEvent","size":3000,"relations":["\\Symfony\\Component\\Stopwatch\\","\\LogicException","\\StopwatchPeriod","\\InvalidArgumentException"]},{"name":"StopwatchPeriod","size":3000,"relations":["\\Symfony\\Component\\Stopwatch\\"]},{"name":"Stopwatch","size":3000,"relations":["\\Symfony\\Component\\Stopwatch\\","\\Section","\\LogicException"]},{"name":"Glob","size":3000,"relations":["\\Symfony\\Component\\Finder\\Expression\\","\\Expression","\\Regex"]},{"name":"ShellCommandFailureException","size":3000,"relations":["\\Symfony\\Component\\Finder\\Exception\\AdapterFailureException","\\parent","Symfony\\Component\\Finder\\Adapter\\AdapterInterface","Symfony\\Component\\Finder\\Shell\\Command","\\Exception"]},{"name":"OperationNotPermitedException","size":3000,"relations":["\\Symfony\\Component\\Finder\\Exception\\AdapterFailureException"]},{"name":"AdapterFailureException","size":3000,"relations":["\\RuntimeException","\\parent","Symfony\\Component\\Finder\\Adapter\\AdapterInterface","\\Exception"]},{"name":"GnuFindAdapter","size":3000,"relations":["\\Symfony\\Component\\Finder\\Adapter\\AbstractFindAdapter","Symfony\\Component\\Finder\\Iterator\\SortableIterator","\\InvalidArgumentException","Symfony\\Component\\Finder\\Shell\\Shell","\\parent","Symfony\\Component\\Finder\\Expression\\Expression","Symfony\\Component\\Finder\\Shell\\Command"]},{"name":"BsdFindAdapter","size":3000,"relations":["\\Symfony\\Component\\Finder\\Adapter\\AbstractFindAdapter","Symfony\\Component\\Finder\\Shell\\Shell","\\parent","Symfony\\Component\\Finder\\Iterator\\SortableIterator","\\InvalidArgumentException","Symfony\\Component\\Finder\\Expression\\Expression","Symfony\\Component\\Finder\\Shell\\Command"]},{"name":"AbstractAdapter","size":3000,"relations":["\\Symfony\\Component\\Finder\\Adapter\\","\\self"]},{"name":"AdapterInterface","size":3000,"relations":["\\"]},{"name":"AbstractFindAdapter","size":3000,"relations":["\\Symfony\\Component\\Finder\\Adapter\\AbstractAdapter","Symfony\\Component\\Finder\\Shell\\Shell","\\FileTypeFilterIterator","\\Iterator\\FilePathsIterator","Symfony\\Component\\Finder\\Shell\\Command","Symfony\\Component\\Finder\\Exception\\AccessDeniedException","\\Iterator\\ExcludeDirectoryFilterIterator","\\Iterator\\FilecontentFilterIterator","\\Iterator\\CustomFilterIterator","\\Iterator\\SortableIterator","Symfony\\Component\\Finder\\Expression\\Expression"]},{"name":"PhpAdapter","size":3000,"relations":["\\Symfony\\Component\\Finder\\Adapter\\AbstractAdapter","\\RecursiveDirectoryIterator","\\RecursiveIteratorIterator","\\Iterator\\RecursiveDirectoryIterator","\\Iterator\\DepthRangeFilterIterator","\\Iterator\\FileTypeFilterIterator","\\Iterator\\ExcludeDirectoryFilterIterator","\\Iterator\\FilenameFilterIterator","\\Iterator\\FilecontentFilterIterator","\\Iterator\\SizeRangeFilterIterator","\\Iterator\\DateRangeFilterIterator","\\Iterator\\CustomFilterIterator","\\Iterator\\SortableIterator","\\Iterator\\PathFilterIterator"]},{"name":"ValueInterface","size":3000,"relations":["\\"]},{"name":"Finder","size":3000,"relations":["\\Symfony\\Component\\Finder\\","\\static","Symfony\\Component\\Finder\\Adapter\\GnuFindAdapter","Symfony\\Component\\Finder\\Adapter\\BsdFindAdapter","Symfony\\Component\\Finder\\Adapter\\PhpAdapter","\\InvalidArgumentException","\\FileTypeFilterIterator","\\Comparator\\NumberComparator","\\Comparator\\DateComparator","\\self","Symfony\\Component\\Finder\\Iterator\\SortableIterator","\\LogicException","\\AppendIterator","\\ArrayIterator","\\SplFileInfo","\\RuntimeException","Symfony\\Component\\Finder\\Adapter\\AdapterInterface","\\Closure"]},{"name":"Command","size":3000,"relations":["\\Symfony\\Component\\Console\\Command\\","Symfony\\Component\\Console\\Input\\InputDefinition","\\LogicException","Symfony\\Component\\Console\\Output\\OutputInterface","\\InvalidArgumentException","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Console\\Descriptor\\TextDescriptor","Symfony\\Component\\Console\\Output\\BufferedOutput","Symfony\\Component\\Console\\Descriptor\\XmlDescriptor","Symfony\\Component\\Console\\Application","Symfony\\Component\\Console\\Helper\\HelperSet","Symfony\\Component\\Console\\Input\\InputInterface"]},{"name":"Comparator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Comparator\\","\\InvalidArgumentException"]},{"name":"DateComparator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Comparator\\Comparator","\\InvalidArgumentException","\\DateTime"]},{"name":"NumberComparator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Comparator\\Comparator","\\InvalidArgumentException"]},{"name":"FilecontentFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\MultiplePcreFilterIterator"]},{"name":"DepthRangeFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","\\parent","\\RecursiveIteratorIterator"]},{"name":"FilenameFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\MultiplePcreFilterIterator","Symfony\\Component\\Finder\\Expression\\Expression"]},{"name":"FileTypeFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","\\parent","\\self","\\Iterator"]},{"name":"FilterIterator","size":3000,"relations":["\\FilterIterator","\\parent"]},{"name":"ExcludeDirectoryFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","\\parent","\\Iterator"]},{"name":"PathFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\MultiplePcreFilterIterator"]},{"name":"FilePathsIterator","size":3000,"relations":["\\ArrayIterator","\\parent","Symfony\\Component\\Finder\\SplFileInfo"]},{"name":"CustomFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","\\InvalidArgumentException","\\parent","\\Iterator"]},{"name":"MultiplePcreFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","\\parent","Symfony\\Component\\Finder\\Expression\\Expression","\\Iterator"]},{"name":"DateRangeFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","\\parent","\\Iterator"]},{"name":"SortableIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\","\\self","\\InvalidArgumentException","\\ArrayIterator","\\Traversable"]},{"name":"SizeRangeFilterIterator","size":3000,"relations":["\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","\\parent","\\Iterator"]},{"name":"RecursiveDirectoryIterator","size":3000,"relations":["\\RecursiveDirectoryIterator","\\self","\\RuntimeException","\\parent","Symfony\\Component\\Finder\\SplFileInfo","\\RecursiveArrayIterator","Symfony\\Component\\Finder\\Exception\\AccessDeniedException"]},{"name":"SplFileInfo","size":3000,"relations":["\\SplFileInfo","\\parent","\\RuntimeException"]},{"name":"Route","size":3000,"relations":["\\Symfony\\Component\\Routing\\Annotation\\","\\BadMethodCallException"]},{"name":"RequestContext","size":3000,"relations":["\\Symfony\\Component\\Routing\\","Symfony\\Component\\HttpFoundation\\Request"]},{"name":"RouteCompilerInterface","size":3000,"relations":["\\","\\Route"]},{"name":"RequestContextAwareInterface","size":3000,"relations":["\\","\\RequestContext"]},{"name":"RouteCollection","size":3000,"relations":["\\Symfony\\Component\\Routing\\","\\ArrayIterator","\\Route","\\RouteCollection","Symfony\\Component\\Config\\Resource\\ResourceInterface"]},{"name":"ResourceNotFoundException","size":3000,"relations":["\\RuntimeException"]},{"name":"RouteNotFoundException","size":3000,"relations":["\\InvalidArgumentException"]},{"name":"MissingMandatoryParametersException","size":3000,"relations":["\\InvalidArgumentException"]},{"name":"InvalidParameterException","size":3000,"relations":["\\InvalidArgumentException"]},{"name":"MethodNotAllowedException","size":3000,"relations":["\\RuntimeException","\\parent","\\Exception"]},{"name":"AnnotationDirectoryLoader","size":3000,"relations":["\\Symfony\\Component\\Routing\\Loader\\AnnotationFileLoader","Symfony\\Component\\Routing\\RouteCollection","Symfony\\Component\\Config\\Resource\\DirectoryResource","\\RecursiveIteratorIterator","\\RecursiveDirectoryIterator","\\ReflectionClass","\\SplFileInfo"]},{"name":"AnnotationFileLoader","size":3000,"relations":["Symfony\\Component\\Config\\Loader\\FileLoader","\\RuntimeException","\\parent","Symfony\\Component\\Routing\\RouteCollection","Symfony\\Component\\Config\\Resource\\FileResource","Symfony\\Component\\Config\\FileLocatorInterface","\\AnnotationClassLoader"]},{"name":"AnnotationClassLoader","size":3000,"relations":["\\Symfony\\Component\\Routing\\Loader\\","\\InvalidArgumentException","\\ReflectionClass","Symfony\\Component\\Routing\\RouteCollection","Symfony\\Component\\Config\\Resource\\FileResource","Symfony\\Component\\Routing\\Route","Doctrine\\Common\\Annotations\\Reader","\\ReflectionMethod","Symfony\\Component\\Config\\Loader\\LoaderResolverInterface"]},{"name":"RouteCompiler","size":3000,"relations":["\\Symfony\\Component\\Routing\\","\\self","\\CompiledRoute","\\static","\\DomainException","\\LogicException","\\Route"]},{"name":"RedirectableUrlMatcherInterface","size":3000,"relations":["\\"]},{"name":"ApacheUrlMatcher","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\UrlMatcher","Symfony\\Component\\Routing\\Exception\\MethodNotAllowedException","\\parent"]},{"name":"PhpMatcherDumper","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\Dumper\\MatcherDumper","\\LogicException","\\DumperCollection","\\DumperRoute","\\DumperPrefixCollection","\\RuntimeException","Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage","Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface","Symfony\\Component\\Routing\\RouteCollection","Symfony\\Component\\Routing\\Route"]},{"name":"ApacheMatcherDumper","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\Dumper\\MatcherDumper","\\self","\\LogicException","Symfony\\Component\\Routing\\Route"]},{"name":"MatcherDumper","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\Dumper\\","Symfony\\Component\\Routing\\RouteCollection"]},{"name":"DumperPrefixCollection","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\Dumper\\DumperCollection","\\DumperPrefixCollection","\\LogicException","\\DumperRoute"]},{"name":"DumperRoute","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\Dumper\\","Symfony\\Component\\Routing\\Route"]},{"name":"MatcherDumperInterface","size":3000,"relations":["\\"]},{"name":"DumperCollection","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\Dumper\\","\\ArrayIterator","\\DumperCollection"]},{"name":"TraceableUrlMatcher","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\UrlMatcher","Symfony\\Component\\Routing\\Route","\\self","Symfony\\Component\\Routing\\RouteCollection"]},{"name":"UrlMatcher","size":3000,"relations":["\\Symfony\\Component\\Routing\\Matcher\\","Symfony\\Component\\Routing\\Exception\\MethodNotAllowedException","Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException","\\self","\\RuntimeException","Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage","Symfony\\Component\\Routing\\RouteCollection","Symfony\\Component\\Routing\\RequestContext","Symfony\\Component\\HttpFoundation\\Request","Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface","Symfony\\Component\\Routing\\Route"]},{"name":"RequestMatcherInterface","size":3000,"relations":["\\","\\Request"]},{"name":"UrlMatcherInterface","size":3000,"relations":["Symfony\\Component\\Routing\\RequestContextAwareInterface"]},{"name":"UrlGeneratorInterface","size":3000,"relations":["Symfony\\Component\\Routing\\RequestContextAwareInterface","\\self"]},{"name":"ConfigurableRequirementsInterface","size":3000,"relations":["\\"]},{"name":"UrlGenerator","size":3000,"relations":["\\Symfony\\Component\\Routing\\Generator\\","\\self","Symfony\\Component\\Routing\\Exception\\RouteNotFoundException","Symfony\\Component\\Routing\\Exception\\MissingMandatoryParametersException","Symfony\\Component\\Routing\\Exception\\InvalidParameterException","Symfony\\Component\\Routing\\RouteCollection","Symfony\\Component\\Routing\\RequestContext","Psr\\Log\\LoggerInterface"]},{"name":"GeneratorDumperInterface","size":3000,"relations":["\\"]},{"name":"PhpGeneratorDumper","size":3000,"relations":["\\Symfony\\Component\\Routing\\Generator\\Dumper\\GeneratorDumper"]},{"name":"GeneratorDumper","size":3000,"relations":["\\Symfony\\Component\\Routing\\Generator\\Dumper\\","Symfony\\Component\\Routing\\RouteCollection"]},{"name":"CompiledRoute","size":3000,"relations":["\\Symfony\\Component\\Routing\\"]},{"name":"RouterInterface","size":3000,"relations":["\\UrlMatcherInterface,"]},{"name":"Filesystem","size":3000,"relations":["\\Symfony\\Component\\Filesystem\\","Symfony\\Component\\Filesystem\\Exception\\FileNotFoundException","Symfony\\Component\\Filesystem\\Exception\\IOException","\\FilesystemIterator","\\RecursiveIteratorIterator","\\RecursiveDirectoryIterator","\\ArrayObject"]},{"name":"IOException","size":3000,"relations":["\\RuntimeException","\\parent","\\Exception"]},{"name":"FileNotFoundException","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException","\\parent"]},{"name":"IOExceptionInterface","size":3000,"relations":["\\ExceptionInterface"]},{"name":"LockHandler","size":3000,"relations":["\\Symfony\\Component\\Filesystem\\","\\Filesystem","Symfony\\Component\\Filesystem\\Exception\\IOException"]},{"name":"FlattenException","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Exception\\FlattenException","\\static","\\ArrayObject","\\FlattenException","\\Exception","\\&$count","\\__PHP_Incomplete_Class"]},{"name":"ClassNotFoundException","size":3000,"relations":["\\Symfony\\Component\\Debug\\Exception\\FatalErrorException","\\parent","\\ErrorException"]},{"name":"FatalErrorException","size":3000,"relations":["Symfony\\Component\\HttpKernel\\Exception\\FatalErrorException","\\parent","\\ReflectionProperty"]},{"name":"ContextErrorException","size":3000,"relations":["\\ErrorException","\\parent"]},{"name":"OutOfMemoryException","size":3000,"relations":["\\Symfony\\Component\\Debug\\Exception\\FatalErrorException"]},{"name":"UndefinedFunctionException","size":3000,"relations":["\\Symfony\\Component\\Debug\\Exception\\FatalErrorException","\\parent","\\ErrorException"]},{"name":"DummyException","size":3000,"relations":["\\ErrorException"]},{"name":"UndefinedMethodException","size":3000,"relations":["\\Symfony\\Component\\Debug\\Exception\\FatalErrorException","\\parent","\\ErrorException"]},{"name":"UndefinedMethodFatalErrorHandler","size":3000,"relations":["\\Symfony\\Component\\Debug\\FatalErrorHandler\\","Symfony\\Component\\Debug\\Exception\\UndefinedMethodException","Symfony\\Component\\Debug\\Exception\\FatalErrorException"]},{"name":"FatalErrorHandlerInterface","size":3000,"relations":["\\","Symfony\\Component\\Debug\\Exception\\FatalErrorException"]},{"name":"UndefinedFunctionFatalErrorHandler","size":3000,"relations":["\\Symfony\\Component\\Debug\\FatalErrorHandler\\","Symfony\\Component\\Debug\\Exception\\UndefinedFunctionException","Symfony\\Component\\Debug\\Exception\\FatalErrorException"]},{"name":"ClassNotFoundFatalErrorHandler","size":3000,"relations":["\\Symfony\\Component\\Debug\\FatalErrorHandler\\","Symfony\\Component\\Debug\\Exception\\ClassNotFoundException","\\RecursiveIteratorIterator","\\RecursiveDirectoryIterator","Symfony\\Component\\Debug\\Exception\\FatalErrorException"]},{"name":"ErrorHandlerCanary","size":3000,"relations":["\\Symfony\\Component\\Debug\\","\\self"]},{"name":"Debug","size":3000,"relations":["\\Symfony\\Component\\Debug\\","\\static","\\ExceptionHandler","\\ErrorHandler","\\DebugClassLoader"]},{"name":"ApacheRequest","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Request"]},{"name":"FileException","size":3000,"relations":["\\RuntimeException"]},{"name":"UploadException","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException"]},{"name":"ExtensionGuesserInterface","size":3000,"relations":["\\"]},{"name":"MimeTypeExtensionGuesser","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\MimeType\\"]},{"name":"FileBinaryMimeTypeGuesser","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\MimeType\\","Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException","Symfony\\Component\\HttpFoundation\\File\\Exception\\AccessDeniedException","\\self"]},{"name":"ExtensionGuesser","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\MimeType\\","\\self","\\MimeTypeExtensionGuesser","\\ExtensionGuesserInterface"]},{"name":"MimeTypeGuesser","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\MimeType\\","\\self","\\FileBinaryMimeTypeGuesser","\\FileinfoMimeTypeGuesser","Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException","Symfony\\Component\\HttpFoundation\\File\\Exception\\AccessDeniedException","\\LogicException","\\MimeTypeGuesserInterface"]},{"name":"MimeTypeGuesserInterface","size":3000,"relations":["\\"]},{"name":"FileinfoMimeTypeGuesser","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\MimeType\\","Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException","Symfony\\Component\\HttpFoundation\\File\\Exception\\AccessDeniedException","\\self","\\finfo"]},{"name":"UploadedFile","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\File\\File","\\parent","Symfony\\Component\\HttpFoundation\\File\\MimeType\\ExtensionGuesser","Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException","\\self"]},{"name":"AcceptHeader","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\self","\\AcceptHeaderItem"]},{"name":"FileBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\ParameterBag","\\InvalidArgumentException","\\parent","\\self","Symfony\\Component\\HttpFoundation\\File\\UploadedFile"]},{"name":"RequestMatcher","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\IpUtils","\\Request"]},{"name":"StreamedResponse","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Response","\\parent","\\static","\\LogicException"]},{"name":"HeaderBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\DateTime","\\RuntimeException","\\ArrayIterator"]},{"name":"RedirectResponse","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Response","\\InvalidArgumentException","\\parent","\\static"]},{"name":"RequestStack","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\Request"]},{"name":"ServerBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\ParameterBag"]},{"name":"ResponseHeaderBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\HeaderBag","\\parent","\\self","\\InvalidArgumentException","\\Cookie"]},{"name":"BinaryFileResponse","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Response","\\parent","\\static","Symfony\\Component\\HttpFoundation\\File\\File","Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException","\\DateTime","\\self","\\LogicException","\\Request"]},{"name":"ExpressionRequestMatcher","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\RequestMatcher","\\LogicException","\\parent","Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage","\\Request"]},{"name":"AcceptHeaderItem","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\self"]},{"name":"JsonResponse","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Response","\\parent","\\ArrayObject","\\static","\\InvalidArgumentException"]},{"name":"FlashBagInterface","size":3000,"relations":["Symfony\\Component\\HttpFoundation\\Session\\SessionBagInterface"]},{"name":"AutoExpireFlashBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Flash\\"]},{"name":"FlashBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Flash\\","\\ArrayIterator"]},{"name":"AbstractProxy","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\","\\LogicException"]},{"name":"SessionHandlerProxy","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\AbstractProxy","\\SessionHandlerInterface"]},{"name":"NativeProxy","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\AbstractProxy"]},{"name":"MockFileSessionStorage","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\MockArraySessionStorage","\\parent","\\RuntimeException","\\MetadataBag"]},{"name":"SessionStorageInterface","size":3000,"relations":["\\","Symfony\\Component\\HttpFoundation\\Session\\SessionBagInterface"]},{"name":"MetadataBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\","\\self"]},{"name":"NativeSessionStorage","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\","\\RuntimeException","\\InvalidArgumentException","\\MetadataBag","Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\SessionHandlerProxy","\\SessionHandler","Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\NativeProxy","Symfony\\Component\\HttpFoundation\\Session\\SessionBagInterface"]},{"name":"PhpBridgeSessionStorage","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage","\\MetadataBag"]},{"name":"PdoSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\","\\PDO","\\InvalidArgumentException","\\DomainException","\\self"]},{"name":"MemcachedSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\","\\InvalidArgumentException"]},{"name":"NativeFileSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\NativeSessionHandler","\\InvalidArgumentException"]},{"name":"MongoDbSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\","\\InvalidArgumentException","\\MongoDate","\\MongoBinData"]},{"name":"LegacyPdoSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\","\\InvalidArgumentException","\\PDO","\\RuntimeException"]},{"name":"MemcacheSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\","\\InvalidArgumentException"]},{"name":"NullSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\"]},{"name":"NativeSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\"]},{"name":"WriteCheckSessionHandler","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\","\\SessionHandlerInterface"]},{"name":"MockArraySessionStorage","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\","\\LogicException","\\RuntimeException","\\InvalidArgumentException","\\MetadataBag","Symfony\\Component\\HttpFoundation\\Session\\SessionBagInterface"]},{"name":"Session","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\","Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage","Symfony\\Component\\HttpFoundation\\Session\\Attribute\\AttributeBag","Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBag","\\ArrayIterator","Symfony\\Component\\HttpFoundation\\Session\\Storage\\SessionStorageInterface","Symfony\\Component\\HttpFoundation\\Session\\Attribute\\AttributeBagInterface","Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBagInterface","\\SessionBagInterface"]},{"name":"SessionBagInterface","size":3000,"relations":["\\"]},{"name":"SessionInterface","size":3000,"relations":["\\","\\SessionBagInterface"]},{"name":"AttributeBagInterface","size":3000,"relations":["Symfony\\Component\\HttpFoundation\\Session\\SessionBagInterface"]},{"name":"NamespacedAttributeBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Attribute\\AttributeBag","\\parent"]},{"name":"AttributeBag","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\Session\\Attribute\\","\\ArrayIterator"]},{"name":"IpUtils","size":3000,"relations":["\\Symfony\\Component\\HttpFoundation\\","\\self","\\RuntimeException"]},{"name":"SessionHandlerInterface","size":3000,"relations":["\\"]},{"name":"TranslationWriter","size":3000,"relations":["\\Symfony\\Component\\Translation\\Writer\\","\\InvalidArgumentException","Symfony\\Component\\Translation\\Dumper\\DumperInterface"]},{"name":"MessageSelector","size":3000,"relations":["\\Symfony\\Component\\Translation\\","\\Interval","\\PluralizationRules","\\InvalidArgumentException"]},{"name":"MessageCatalogue","size":3000,"relations":["\\Symfony\\Component\\Translation\\","\\LogicException","\\MessageCatalogueInterface","Symfony\\Component\\Config\\Resource\\ResourceInterface"]},{"name":"OperationInterface","size":3000,"relations":["\\"]},{"name":"AbstractOperation","size":3000,"relations":["\\Symfony\\Component\\Translation\\Catalogue\\","\\LogicException","Symfony\\Component\\Translation\\MessageCatalogue","\\InvalidArgumentException","Symfony\\Component\\Translation\\MessageCatalogueInterface"]},{"name":"MergeOperation","size":3000,"relations":["\\Symfony\\Component\\Translation\\Catalogue\\AbstractOperation"]},{"name":"DiffOperation","size":3000,"relations":["\\Symfony\\Component\\Translation\\Catalogue\\AbstractOperation"]},{"name":"Interval","size":3000,"relations":["\\Symfony\\Component\\Translation\\","\\self","\\InvalidArgumentException"]},{"name":"NotFoundResourceException","size":3000,"relations":["\\InvalidArgumentException"]},{"name":"InvalidResourceException","size":3000,"relations":["\\InvalidArgumentException"]},{"name":"ArrayLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"XliffFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","Symfony\\Component\\Translation\\MessageCatalogue","Symfony\\Component\\Config\\Resource\\FileResource","\\RuntimeException","Symfony\\Component\\Config\\Util\\XmlUtils"]},{"name":"CsvFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\SplFileObject","\\parent","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"JsonFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\parent","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"MoFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\parent","Symfony\\Component\\Config\\Resource\\FileResource","\\self"]},{"name":"QtFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","Symfony\\Component\\Config\\Util\\XmlUtils","\\DOMXPath","Symfony\\Component\\Translation\\MessageCatalogue","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"IcuDatFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\IcuResFileLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\ResourceBundle","Symfony\\Component\\Translation\\MessageCatalogue","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"IcuResFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\ResourceBundle","Symfony\\Component\\Translation\\MessageCatalogue","Symfony\\Component\\Config\\Resource\\DirectoryResource"]},{"name":"PoFileLoader","size":3000,"relations":["\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","Symfony\\Component\\Translation\\Exception\\InvalidResourceException","Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","\\parent","Symfony\\Component\\Config\\Resource\\FileResource"]},{"name":"IniFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"JsonFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"MoFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Translation\\Loader\\MoFileLoader","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"PhpFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"CsvFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"IcuResFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"QtFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","\\DOMDocument","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"PoFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"YamlFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","Symfony\\Component\\Yaml\\Yaml","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"XliffFileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\FileDumper","\\Locale","\\parent","\\DOMDocument","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"FileDumper","size":3000,"relations":["\\Symfony\\Component\\Translation\\Dumper\\","\\InvalidArgumentException","\\RuntimeException","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"TranslatorBagInterface","size":3000,"relations":["\\"]},{"name":"PluralizationRules","size":3000,"relations":["\\Symfony\\Component\\Translation\\","\\self","\\LogicException"]},{"name":"MetadataAwareInterface","size":3000,"relations":["\\"]},{"name":"IdentityTranslator","size":3000,"relations":["\\Symfony\\Component\\Translation\\","\\MessageSelector","\\Locale"]},{"name":"MessageCatalogueInterface","size":3000,"relations":["\\","\\MessageCatalogueInterface","Symfony\\Component\\Config\\Resource\\ResourceInterface"]},{"name":"LoggingTranslator","size":3000,"relations":["\\Symfony\\Component\\Translation\\","\\InvalidArgumentException","Psr\\Log\\LoggerInterface"]},{"name":"ChainExtractor","size":3000,"relations":["\\Symfony\\Component\\Translation\\Extractor\\","\\ExtractorInterface","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"ExtractorInterface","size":3000,"relations":["\\","Symfony\\Component\\Translation\\MessageCatalogue"]},{"name":"PropertyAccess","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\","\\self","\\PropertyAccessorBuilder"]},{"name":"PropertyPathInterface","size":3000,"relations":["\\Traversable"]},{"name":"NoSuchIndexException","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\Exception\\AccessException"]},{"name":"InvalidPropertyPathException","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\Exception\\RuntimeException"]},{"name":"NoSuchPropertyException","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\Exception\\AccessException"]},{"name":"PropertyAccessor","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\","\\PropertyPath","\\self","Symfony\\Component\\PropertyAccess\\Exception\\UnexpectedTypeException","Symfony\\Component\\PropertyAccess\\Exception\\NoSuchIndexException","Symfony\\Component\\PropertyAccess\\Exception\\NoSuchPropertyException","\\ReflectionClass","\\StringUtil","\\PropertyPathInterface"]},{"name":"PropertyAccessorBuilder","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\","\\PropertyAccessor"]},{"name":"PropertyPathIteratorInterface","size":3000,"relations":["\\Iterator,"]},{"name":"PropertyAccessorInterface","size":3000,"relations":["\\"]},{"name":"PropertyPathBuilder","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\","\\PropertyPath","Symfony\\Component\\PropertyAccess\\Exception\\OutOfBoundsException"]},{"name":"PropertyPathIterator","size":3000,"relations":["\\ArrayIterator","\\parent","\\PropertyPathInterface"]},{"name":"StringUtil","size":3000,"relations":["\\Symfony\\Component\\PropertyAccess\\","\\self"]},{"name":"ApplicationDescription","size":3000,"relations":["\\Symfony\\Component\\Console\\Descriptor\\","\\InvalidArgumentException","Symfony\\Component\\Console\\Application"]},{"name":"DescriptorInterface","size":3000,"relations":["\\"]},{"name":"ConsoleCommandEvent","size":3000,"relations":["\\Symfony\\Component\\Console\\Event\\ConsoleEvent"]},{"name":"ConsoleTerminateEvent","size":3000,"relations":["\\Symfony\\Component\\Console\\Event\\ConsoleEvent","\\parent","Symfony\\Component\\Console\\Command\\Command","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ConsoleExceptionEvent","size":3000,"relations":["\\Symfony\\Component\\Console\\Event\\ConsoleEvent","\\parent","Symfony\\Component\\Console\\Command\\Command","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface","\\Exception"]},{"name":"ConsoleEvent","size":3000,"relations":["Symfony\\Component\\EventDispatcher\\Event","Symfony\\Component\\Console\\Command\\Command","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"HelpCommand","size":3000,"relations":["\\Symfony\\Component\\Console\\Command\\Command","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Console\\Helper\\DescriptorHelper","\\Command","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ListCommand","size":3000,"relations":["\\Symfony\\Component\\Console\\Command\\Command","Symfony\\Component\\Console\\Helper\\DescriptorHelper","Symfony\\Component\\Console\\Input\\InputDefinition","Symfony\\Component\\Console\\Input\\InputArgument","Symfony\\Component\\Console\\Input\\InputOption","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ConsoleEvents","size":3000,"relations":["\\Symfony\\Component\\Console\\"]},{"name":"ConsoleOutputInterface","size":3000,"relations":["\\OutputInterface","\\OutputInterface"]},{"name":"ConsoleOutput","size":3000,"relations":["\\Symfony\\Component\\Console\\Output\\StreamOutput","\\parent","\\StreamOutput","Symfony\\Component\\Console\\Formatter\\OutputFormatterInterface","\\OutputInterface"]},{"name":"NullOutput","size":3000,"relations":["\\Symfony\\Component\\Console\\Output\\","Symfony\\Component\\Console\\Formatter\\OutputFormatter","\\self","Symfony\\Component\\Console\\Formatter\\OutputFormatterInterface"]},{"name":"Output","size":3000,"relations":["\\Symfony\\Component\\Console\\Output\\","\\self","Symfony\\Component\\Console\\Formatter\\OutputFormatter","\\OutputInterface","\\InvalidArgumentException","Symfony\\Component\\Console\\Formatter\\OutputFormatterInterface"]},{"name":"BufferedOutput","size":3000,"relations":["\\Symfony\\Component\\Console\\Output\\Output"]},{"name":"StreamOutput","size":3000,"relations":["\\Symfony\\Component\\Console\\Output\\Output","\\InvalidArgumentException","\\parent","\\RuntimeException","Symfony\\Component\\Console\\Formatter\\OutputFormatterInterface"]},{"name":"OutputInterface","size":3000,"relations":["\\","\\self","Symfony\\Component\\Console\\Formatter\\OutputFormatterInterface"]},{"name":"ConsoleLogger","size":3000,"relations":["Psr\\Log\\AbstractLogger","Psr\\Log\\InvalidArgumentException","\\self"]},{"name":"OutputFormatterInterface","size":3000,"relations":["\\","\\OutputFormatterStyleInterface"]},{"name":"OutputFormatterStyle","size":3000,"relations":["\\Symfony\\Component\\Console\\Formatter\\","\\static","\\InvalidArgumentException"]},{"name":"OutputFormatterStyleInterface","size":3000,"relations":["\\"]},{"name":"OutputFormatter","size":3000,"relations":["\\Symfony\\Component\\Console\\Formatter\\","\\OutputFormatterStyle","\\OutputFormatterStyleStack","\\InvalidArgumentException","\\OutputFormatterStyleInterface"]},{"name":"OutputFormatterStyleStack","size":3000,"relations":["\\Symfony\\Component\\Console\\Formatter\\","\\OutputFormatterStyle","\\InvalidArgumentException","\\OutputFormatterStyleInterface"]},{"name":"InputDefinition","size":3000,"relations":["\\Symfony\\Component\\Console\\Input\\","\\LogicException","\\InvalidArgumentException","Symfony\\Component\\Console\\Descriptor\\TextDescriptor","Symfony\\Component\\Console\\Output\\BufferedOutput","Symfony\\Component\\Console\\Descriptor\\XmlDescriptor","\\InputArgument","\\InputOption"]},{"name":"InputArgument","size":3000,"relations":["\\Symfony\\Component\\Console\\Input\\","\\self","\\InvalidArgumentException","\\LogicException"]},{"name":"StringInput","size":3000,"relations":["\\Symfony\\Component\\Console\\Input\\ArgvInput","\\parent","\\self","\\InvalidArgumentException","\\InputDefinition"]},{"name":"InputAwareInterface","size":3000,"relations":["\\","\\InputInterface"]},{"name":"Input","size":3000,"relations":["\\Symfony\\Component\\Console\\Input\\","\\InputDefinition","\\RuntimeException","\\InvalidArgumentException"]},{"name":"InputInterface","size":3000,"relations":["\\","\\InputDefinition"]},{"name":"InputOption","size":3000,"relations":["\\Symfony\\Component\\Console\\Input\\","\\InvalidArgumentException","\\self","\\LogicException","\\InputOption"]},{"name":"ArgvInput","size":3000,"relations":["\\Symfony\\Component\\Console\\Input\\Input","\\parent","\\RuntimeException","\\InputDefinition"]},{"name":"ArrayInput","size":3000,"relations":["\\Symfony\\Component\\Console\\Input\\Input","\\parent","\\InvalidArgumentException","\\InputDefinition"]},{"name":"CommandTester","size":3000,"relations":["\\Symfony\\Component\\Console\\Tester\\","Symfony\\Component\\Console\\Input\\ArrayInput","Symfony\\Component\\Console\\Output\\StreamOutput","Symfony\\Component\\Console\\Command\\Command"]},{"name":"ApplicationTester","size":3000,"relations":["\\Symfony\\Component\\Console\\Tester\\","Symfony\\Component\\Console\\Input\\ArrayInput","Symfony\\Component\\Console\\Output\\StreamOutput","Symfony\\Component\\Console\\Application"]},{"name":"TableSeparator","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\"]},{"name":"FormatterHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper","Symfony\\Component\\Console\\Formatter\\OutputFormatter"]},{"name":"HelperSet","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\","\\InvalidArgumentException","\\ArrayIterator","\\HelperInterface","Symfony\\Component\\Console\\Command\\Command"]},{"name":"ProgressHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper","Symfony\\Component\\Console\\Output\\NullOutput","Symfony\\Component\\Console\\Output\\OutputInterface","\\self","\\LogicException"]},{"name":"TableStyle","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\","\\LogicException"]},{"name":"QuestionHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper","\\InvalidArgumentException","\\RuntimeException","Symfony\\Component\\Console\\Formatter\\OutputFormatterStyle","\\self","Symfony\\Component\\Console\\Input\\InputInterface","Symfony\\Component\\Console\\Output\\OutputInterface","Symfony\\Component\\Console\\Question\\Question"]},{"name":"DialogHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\InputAwareHelper","\\InvalidArgumentException","\\RuntimeException","Symfony\\Component\\Console\\Formatter\\OutputFormatterStyle","\\self","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"ProcessHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper","Symfony\\Component\\Process\\ProcessBuilder","Symfony\\Component\\Process\\Process","Symfony\\Component\\Process\\Exception\\ProcessFailedException","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"Table","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\","\\self","\\InvalidArgumentException","\\Helper","\\TableStyle","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"InputAwareHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper","Symfony\\Component\\Console\\Input\\InputInterface"]},{"name":"TableHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper","\\Table","Symfony\\Component\\Console\\Output\\NullOutput","\\self","\\InvalidArgumentException","\\ReflectionProperty","Symfony\\Component\\Console\\Output\\OutputInterface"]},{"name":"DebugFormatterHelper","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\Helper"]},{"name":"ProgressBar","size":3000,"relations":["\\Symfony\\Component\\Console\\Helper\\","\\self","\\LogicException","Symfony\\Component\\Console\\Output\\OutputInterface","\\$self","\\Helper","\\ProgressBar"]},{"name":"Question","size":3000,"relations":["\\Symfony\\Component\\Console\\Question\\","\\LogicException","\\InvalidArgumentException"]},{"name":"ChoiceQuestion","size":3000,"relations":["\\Symfony\\Component\\Console\\Question\\Question","\\parent","\\InvalidArgumentException"]},{"name":"ConfirmationQuestion","size":3000,"relations":["\\Symfony\\Component\\Console\\Question\\Question","\\parent"]},{"name":"Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ContainerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Request","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Response","relations":[],"size":3000},{"name":"\\Exception","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Propel1\\DependencyInjection\\Security\\UserProvider\\","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\DefinitionDecorator","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ContainerBuilder","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Form\\DataTransformer\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\TransformationFailedException","relations":[],"size":3000},{"name":"Doctrine\\Common\\Collections\\ArrayCollection","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Propel1\\Form\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormEvents","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormEvent","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\UnexpectedTypeException","relations":[],"size":3000},{"name":"\\$this->i18nClass","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\AbstractType","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Propel1\\Form\\EventListener\\TranslationFormListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormBuilderInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\OptionsResolverInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\PropertyAccess","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Propel1\\Form\\DataTransformer\\CollectionToArrayTransformer","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Propel1\\Form\\ChoiceList\\ModelChoiceList","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\PropertyAccessorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\Options","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\Exception\\MissingOptionsException","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Propel1\\Form\\EventListener\\TranslationCollectionFormListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\AbstractExtension","relations":[],"size":3000},{"name":"\\Type\\ModelType","relations":[],"size":3000},{"name":"\\Type\\TranslationCollectionType","relations":[],"size":3000},{"name":"\\Type\\TranslationType","relations":[],"size":3000},{"name":"\\PropelTypeGuesser","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Propel1\\Form\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Guess\\TypeGuess","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Guess\\Guess","relations":[],"size":3000},{"name":"\\RelationMap","relations":[],"size":3000},{"name":"\\PropelColumnTypes","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Guess\\ValueGuess","relations":[],"size":3000},{"name":"\\$queryClass","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ObjectChoiceList","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\Exception\\InvalidOptionsException","relations":[],"size":3000},{"name":"\\parent","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\StringCastException","relations":[],"size":3000},{"name":"\\PDO","relations":[],"size":3000},{"name":"\\ColumnMap","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Propel1\\Logger\\PropelLogger","relations":[],"size":3000},{"name":"\\PropelConfiguration","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Propel1\\Logger\\","relations":[],"size":3000},{"name":"Psr\\Log\\LoggerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Stopwatch\\Stopwatch","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Propel1\\Security\\User\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\UsernameNotFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\User\\UserInterface","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\ProxyManager\\LazyProxy\\PhpDumper\\","relations":[],"size":3000},{"name":"ProxyManager\\ProxyGenerator\\LazyLoadingValueHolderGenerator","relations":[],"size":3000},{"name":"ProxyManager\\GeneratorStrategy\\BaseGeneratorStrategy","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Container","relations":[],"size":3000},{"name":"ProxyManager\\Generator\\ClassGenerator","relations":[],"size":3000},{"name":"\\ReflectionClass","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Definition","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\ProxyManager\\LazyProxy\\Instantiator\\","relations":[],"size":3000},{"name":"ProxyManager\\Configuration","relations":[],"size":3000},{"name":"ProxyManager\\GeneratorStrategy\\EvaluatingGeneratorStrategy","relations":[],"size":3000},{"name":"ProxyManager\\Factory\\LazyLoadingValueHolderFactory","relations":[],"size":3000},{"name":"ProxyManager\\Proxy\\LazyLoadingInterface","relations":[],"size":3000},{"name":"Monolog\\Logger","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Monolog\\Monolog\\Logger","relations":[],"size":3000},{"name":"Monolog\\Formatter\\LineFormatter","relations":[],"size":3000},{"name":"Monolog\\Processor\\WebProcessor","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","relations":[],"size":3000},{"name":"Monolog\\Handler\\AbstractProcessingHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\ConsoleEvents","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Monolog\\Formatter\\ConsoleFormatter","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Output\\OutputInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Event\\ConsoleCommandEvent","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Event\\ConsoleTerminateEvent","relations":[],"size":3000},{"name":"Monolog\\Handler\\ChromePHPHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent","relations":[],"size":3000},{"name":"Monolog\\Handler\\TestHandler","relations":[],"size":3000},{"name":"Monolog\\Handler\\FingersCrossed\\ErrorLevelActivationStrategy","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\RequestStack","relations":[],"size":3000},{"name":"Monolog\\Handler\\FirePHPHandler","relations":[],"size":3000},{"name":"Monolog\\Handler\\SwiftMailerHandler","relations":[],"size":3000},{"name":"\\Swift_Transport","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Event\\PostResponseEvent","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\TwigEngine","relations":[],"size":3000},{"name":"\\TwigDefaultEscapingStrategy","relations":[],"size":3000},{"name":"\\Twig_Environment","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\TemplateNameParserInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\FileLocatorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormRendererInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormRendererEngineInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\AbstractRendererEngine","relations":[],"size":3000},{"name":"\\self","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormView","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormRenderer","relations":[],"size":3000},{"name":"\\TwigRendererEngineInterface","relations":[],"size":3000},{"name":"\\Twig_Node","relations":[],"size":3000},{"name":"\\Twig_Node_Expression","relations":[],"size":3000},{"name":"\\Twig_Compiler","relations":[],"size":3000},{"name":"\\Twig_NodeInterface","relations":[],"size":3000},{"name":"\\Twig_Node_Expression_AssignName","relations":[],"size":3000},{"name":"\\Twig_Node_Expression_Function","relations":[],"size":3000},{"name":"\\Twig_Node_Expression_Array","relations":[],"size":3000},{"name":"\\Twig_Node_Expression_Constant","relations":[],"size":3000},{"name":"\\Twig_Node_Expression_Name","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Twig\\Node\\SearchAndRenderBlockNode","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\Command\\LintCommand","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Finder","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Twig\\NodeVisitor\\","relations":[],"size":3000},{"name":"\\Scope","relations":[],"size":3000},{"name":"\\Twig_Node_Set","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Twig\\TokenParser\\TransTokenParser","relations":[],"size":3000},{"name":"\\Twig_Token","relations":[],"size":3000},{"name":"\\Twig_Error_Syntax","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\Node\\TransNode","relations":[],"size":3000},{"name":"\\Twig_TokenParser","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\Node\\TransDefaultDomainNode","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\Node\\StopwatchNode","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\Node\\FormThemeNode","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\Node\\DumpNode","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Twig\\Translation\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\MessageCatalogue","relations":[],"size":3000},{"name":"\\Twig_Extension","relations":[],"size":3000},{"name":"\\Twig_SimpleFunction","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Controller\\ControllerReference","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Fragment\\FragmentHandler","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\NodeVisitor\\TranslationNodeVisitor","relations":[],"size":3000},{"name":"\\Twig_SimpleFilter","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\TokenParser\\TransTokenParser","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\TokenParser\\TransChoiceTokenParser","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\TokenParser\\TransDefaultDomainTokenParser","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\NodeVisitor\\TranslationDefaultDomainNodeVisitor","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\TranslatorInterface","relations":[],"size":3000},{"name":"\\Twig_NodeVisitorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\ExpressionLanguage\\Expression","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\TokenParser\\FormThemeTokenParser","relations":[],"size":3000},{"name":"\\Twig_SimpleTest","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\Form\\TwigRendererInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\View\\ChoiceView","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\TokenParser\\StopwatchTokenParser","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Twig\\Extension\\Symfony\\Component\\Yaml\\Dumper","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Loader\\XmlFileLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\FileLocator","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Reference","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Parameter","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Alias","relations":[],"size":3000},{"name":"\\MainConfiguration","relations":[],"size":3000},{"name":"\\RuntimeException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authorization\\ExpressionLanguage","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\SecurityFactoryInterface","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\UserProvider\\UserProviderFactoryInterface","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Twig\\TokenParser\\DumpTokenParser","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Dumper\\HtmlDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Cloner\\ClonerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\DependencyInjection\\CompilerPass\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Resource\\FileResource","relations":[],"size":3000},{"name":"\\InvalidArgumentException","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\ParameterNotFoundException","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\DependencyInjection\\Security\\UserProvider\\","relations":[],"size":3000},{"name":"\\LogicException","relations":[],"size":3000},{"name":"Doctrine\\Common\\Persistence\\AbstractManagerRegistry","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\ExpressionLanguage\\","relations":[],"size":3000},{"name":"Doctrine\\Common\\Cache\\Cache","relations":[],"size":3000},{"name":"Symfony\\Component\\ExpressionLanguage\\ParsedExpression","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Form\\EventListener\\","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Form\\","relations":[],"size":3000},{"name":"Doctrine\\Common\\Util\\ClassUtils","relations":[],"size":3000},{"name":"Doctrine\\Common\\Persistence\\ManagerRegistry","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Form\\Type\\DoctrineType","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Doctrine\\Form\\ChoiceList\\ORMQueryBuilderLoader","relations":[],"size":3000},{"name":"Doctrine\\Common\\Persistence\\ObjectManager","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Doctrine\\Form\\EventListener\\MergeDoctrineCollectionListener","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Doctrine\\Form\\DataTransformer\\CollectionToArrayTransformer","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Doctrine\\Form\\ChoiceList\\EntityChoiceList","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"Symfony\\Bridge\\Doctrine\\Form\\Type\\EntityType","relations":[],"size":3000},{"name":"\\DoctrineOrmTypeGuesser","relations":[],"size":3000},{"name":"\\","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Form\\ChoiceList\\","relations":[],"size":3000},{"name":"Doctrine\\DBAL\\Connection","relations":[],"size":3000},{"name":"Doctrine\\DBAL\\Types\\Type","relations":[],"size":3000},{"name":"Doctrine\\DBAL\\Logging\\DebugStack","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\CacheWarmer\\","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Logger\\","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Validator\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\ConstraintValidator","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\UnexpectedTypeException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\ConstraintDefinitionException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Constraint","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Security\\User\\","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Security\\RememberMe\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\PersistentToken","relations":[],"size":3000},{"name":"\\DateTime","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\TokenNotFoundException","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Security\\RememberMe\\Doctrine\\DBAL\\Types\\Type","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\PersistentTokenInterface","relations":[],"size":3000},{"name":"Doctrine\\Common\\DataFixtures\\Loader","relations":[],"size":3000},{"name":"Doctrine\\Common\\DataFixtures\\FixtureInterface","relations":[],"size":3000},{"name":"Doctrine\\Common\\EventManager","relations":[],"size":3000},{"name":"Doctrine\\Common\\EventArgs","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\HttpFoundation\\","relations":[],"size":3000},{"name":"Doctrine\\DBAL\\Schema\\Schema","relations":[],"size":3000},{"name":"\\Symfony\\Bridge\\Doctrine\\Test\\","relations":[],"size":3000},{"name":"\\PHPUnit_Framework_TestCase","relations":[],"size":3000},{"name":"\\Doctrine\\ORM\\Configuration","relations":[],"size":3000},{"name":"Doctrine\\ORM\\Mapping\\Driver\\AnnotationDriver","relations":[],"size":3000},{"name":"Doctrine\\Common\\Annotations\\AnnotationReader","relations":[],"size":3000},{"name":"\\Doctrine\\Common\\Cache\\ArrayCache","relations":[],"size":3000},{"name":"Doctrine\\ORM\\EntityManager","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\DataCollector\\Util\\ValueExporter","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Builder\\ArrayNodeDefinition","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\WebProfilerBundle\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\KernelEvents","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Command\\Command","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Input\\InputArgument","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Profiler\\Profiler","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Input\\InputInterface","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\WebProfilerBundle\\Controller\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\RedirectResponse","relations":[],"size":3000},{"name":"Symfony\\Bundle\\WebProfilerBundle\\Profiler\\TemplateManager","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\TwigBundle\\Controller\\","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\Templating\\TemplateReference","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Exception\\FlattenException","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Log\\DebugLoggerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Matcher\\TraceableUrlMatcher","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Matcher\\UrlMatcherInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\RouteCollection","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\WebProfilerBundle\\Profiler\\","relations":[],"size":3000},{"name":"\\UnexpectedValueException","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Profiler\\Profile","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Bundle\\Bundle","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\LogicException","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\TwigBundle\\","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\TwigBundle\\CacheWarmer\\","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\CacheWarmer\\TemplateFinderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\Loader\\Loader","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\Storage\\FileStorage","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\TemplateReferenceInterface","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Input\\InputOption","relations":[],"size":3000},{"name":"\\ReflectionMethod","relations":[],"size":3000},{"name":"\\ReflectionFunction","relations":[],"size":3000},{"name":"Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\ExtensionPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\TwigEnvironmentPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\TwigLoaderPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\TwigBundle\\DependencyInjection\\Compiler\\ExceptionListenerPass","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\HttpKernelInterface","relations":[],"size":3000},{"name":"Symfony\\Bundle\\TwigBundle\\Node\\RenderNode","relations":[],"size":3000},{"name":"Symfony\\Bundle\\TwigBundle\\TwigEngine","relations":[],"size":3000},{"name":"Symfony\\Bundle\\TwigBundle\\TokenParser\\RenderTokenParser","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\RequestContext","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\DebugBundle\\DependencyInjection\\Compiler\\","relations":[],"size":3000},{"name":"\\Configuration","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\VarDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Dumper\\CliDumper","relations":[],"size":3000},{"name":"Symfony\\Bundle\\DebugBundle\\DependencyInjection\\Compiler\\DumpDataCollectorPass","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Compiler\\","relations":[],"size":3000},{"name":"\\SplPriorityQueue","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\UserProvider\\","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\FormLoginFactory","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\AbstractFactory","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManager","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\FormLoginFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\HttpBasicFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\HttpDigestFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\RememberMeFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\X509Factory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\RemoteUserFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\SimplePreAuthenticationFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\Factory\\SimpleFormFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Security\\UserProvider\\InMemoryFactory","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\DependencyInjection\\Compiler\\AddSecurityVotersPass","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Dbal\\Schema","relations":[],"size":3000},{"name":"Doctrine\\ORM\\Tools\\Event\\GenerateSchemaEventArgs","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\Helper\\Helper","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfProviderAdapter","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Voter\\FieldVote","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\SecurityContextInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\TokenStorageInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Role\\RoleInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Domain\\ObjectIdentity","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Domain\\UserSecurityIdentity","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Domain\\RoleSecurityIdentity","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Permission\\MaskBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\SecurityBundle\\Security\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\Firewall\\ExceptionListener","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\","relations":[],"size":3000},{"name":"Symfony\\Bundle\\SecurityBundle\\Templating\\Helper\\LogoutUrlHelper","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Filesystem\\Filesystem","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Dumper\\XmlDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Resource\\DirectoryResource","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Validation","relations":[],"size":3000},{"name":"\\SplFileInfo","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Cookie","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\Asset\\Package","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Templating\\Asset\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Templating\\","relations":[],"size":3000},{"name":"\\EngineInterface","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Templating\\Loader\\","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Templating\\PhpEngine","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\Loader\\LoaderInterface","relations":[],"size":3000},{"name":"\\GlobalVariables","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\Helper\\HelperInterface","relations":[],"size":3000},{"name":"\\TemplateReference","relations":[],"size":3000},{"name":"\\BadMethodCallException","relations":[],"size":3000},{"name":"\\Finfo","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\HttpCache\\","relations":[],"size":3000},{"name":"\\DateTimeZone","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\DataCollector\\DataCollector","relations":[],"size":3000},{"name":"\\SplObjectStorage","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\CacheWarmer\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\RouterInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\CacheWarmer\\CacheWarmer","relations":[],"size":3000},{"name":"\\TemplateFinderInterface","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\Templating\\Loader\\TemplateLocator","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\KernelInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Bundle\\BundleInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Yaml\\Parser","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\Console\\Helper\\DescriptorHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Route","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Command\\ServerCommand","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Command\\AbstractConfigCommand","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Processor","relations":[],"size":3000},{"name":"Symfony\\Component\\Yaml\\Yaml","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\PhpExecutableFinder","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\ProcessBuilder","relations":[],"size":3000},{"name":"\\ReflectionObject","relations":[],"size":3000},{"name":"\\$class","relations":[],"size":3000},{"name":"Symfony\\Component\\Filesystem\\Exception\\IOException","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Dumper\\YamlReferenceDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Dumper\\XmlReferenceDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Matcher\\Dumper\\ApacheMatcherDumper","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerDebugCommand","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Extension\\ExtensionInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Input\\ArrayInput","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Question\\ChoiceQuestion","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\Catalogue\\MergeOperation","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\Table","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\Catalogue\\DiffOperation","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Process","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Constraints\\ExpressionValidator","relations":[],"size":3000},{"name":"\\$className","relations":[],"size":3000},{"name":"\\Constraint","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ContainerAware","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Exception\\HttpException","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\StreamedResponse","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Csrf\\CsrfToken","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Controller\\","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Controller\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\BrowserKit\\","relations":[],"size":3000},{"name":"\\History","relations":[],"size":3000},{"name":"\\CookieJar","relations":[],"size":3000},{"name":"\\Request","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\PhpProcess","relations":[],"size":3000},{"name":"Symfony\\Component\\DomCrawler\\Crawler","relations":[],"size":3000},{"name":"Symfony\\Component\\DomCrawler\\Link","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\","relations":[],"size":3000},{"name":"\\RequestContext","relations":[],"size":3000},{"name":"\\$this->options['matcher_class']","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\ConfigCache","relations":[],"size":3000},{"name":"\\$this->options['generator_class']","relations":[],"size":3000},{"name":"\\$this->options['generator_dumper_class']","relations":[],"size":3000},{"name":"\\$this->options['matcher_dumper_class']","relations":[],"size":3000},{"name":"Symfony\\Component\\ExpressionLanguage\\ExpressionFunctionProviderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Loader\\Loader","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Exception\\FileLoaderLoadException","relations":[],"size":3000},{"name":"\\LoaderResolverInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Matcher\\UrlMatcher","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\ErrorHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Scope","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\RoutingResolverPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\ProfilerPass","relations":[],"size":3000},{"name":"Symfony\\Component\\EventDispatcher\\DependencyInjection\\RegisterListenersPass","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Compiler\\PassConfig","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TemplatingPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TemplatingAssetHelperPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddConstraintValidatorsPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddValidatorInitializersPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddConsoleCommandPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\FormPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TranslatorPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\LoggingTranslatorPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddCacheWarmerPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddCacheClearerPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\AddExpressionLanguageProvidersPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TranslationExtractorPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\TranslationDumperPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\FragmentRendererPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\SerializerPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\ContainerBuilderDebugDumpPass","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\DependencyInjection\\Compiler\\CompilerDebugDumpPass","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Fragment\\HIncludeFragmentRenderer","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\UriSigner","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Translation\\","relations":[],"size":3000},{"name":"\\PhpStringTokenParser","relations":[],"size":3000},{"name":"\\ArrayIterator","relations":[],"size":3000},{"name":"\\Iterator","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\Loader\\LoaderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\","relations":[],"size":3000},{"name":"\\MessageSelector","relations":[],"size":3000},{"name":"\\MessageCatalogue","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Descriptor\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Descriptor\\Descriptor","relations":[],"size":3000},{"name":"\\DOMDocument","relations":[],"size":3000},{"name":"\\ApplicationDescription","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Input\\InputDefinition","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Application","relations":[],"size":3000},{"name":"\\DOMNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Output\\ConsoleOutput","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Input\\StringInput","relations":[],"size":3000},{"name":"\\Application","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Helper\\Helper","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Descriptor\\TextDescriptor","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Descriptor\\XmlDescriptor","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Descriptor\\JsonDescriptor","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Descriptor\\MarkdownDescriptor","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Descriptor\\DescriptorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Input\\ArgvInput","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Output\\BufferedOutput","relations":[],"size":3000},{"name":"\\ConsoleEvents","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Event\\ConsoleExceptionEvent","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Command\\HelpCommand","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Command\\ListCommand","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\HelperSet","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\FormatterHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\DialogHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\ProgressHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\TableHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\DebugFormatterHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\ProcessHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\QuestionHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\EventDispatcher\\EventDispatcherInterface","relations":[],"size":3000},{"name":"\\Symfony\\Bundle\\FrameworkBundle\\Test\\KernelTestCase","relations":[],"size":3000},{"name":"\\static","relations":[],"size":3000},{"name":"\\static::$class","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\OutOfBoundsException","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage","relations":[],"size":3000},{"name":"\\ExpressionLanguageProvider","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"\\OutOfBoundsException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Definition","relations":[],"size":3000},{"name":"\\ContainerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Loader\\Loader","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\Loader\\AbstractLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\MappingException","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Loader\\FileLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Util\\XmlUtils","relations":[],"size":3000},{"name":"\\DOMElement","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Loader\\ArrayLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\Exception\\InvalidResourceException","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\Exception\\NotFoundResourceException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Loader\\Symfony\\Component\\Yaml\\Parser","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Dumper\\Dumper","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\LazyProxy\\PhpDumper\\NullDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Variable","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\ServiceCircularReferenceException","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ExpressionLanguage","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Dumper\\Symfony\\Component\\DependencyInjection\\LazyProxy\\PhpDumper\\DumperInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Yaml\\","relations":[],"size":3000},{"name":"\\Inline","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Dumper\\Symfony\\Component\\Yaml\\Dumper","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ParameterBag\\FrozenParameterBag","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\ServiceNotFoundException","relations":[],"size":3000},{"name":"\\SplStack","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBagInterface","relations":[],"size":3000},{"name":"\\ScopeInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Compiler\\","relations":[],"size":3000},{"name":"\\MergeExtensionConfigurationPass","relations":[],"size":3000},{"name":"\\ResolveDefinitionTemplatesPass","relations":[],"size":3000},{"name":"\\DecoratorServicePass","relations":[],"size":3000},{"name":"\\ResolveParameterPlaceHoldersPass","relations":[],"size":3000},{"name":"\\CheckDefinitionValidityPass","relations":[],"size":3000},{"name":"\\ResolveReferencesToAliasesPass","relations":[],"size":3000},{"name":"\\ResolveInvalidReferencesPass","relations":[],"size":3000},{"name":"\\AnalyzeServiceReferencesPass","relations":[],"size":3000},{"name":"\\CheckCircularReferencesPass","relations":[],"size":3000},{"name":"\\CheckReferenceValidityPass","relations":[],"size":3000},{"name":"\\RemovePrivateAliasesPass","relations":[],"size":3000},{"name":"\\RemoveAbstractDefinitionsPass","relations":[],"size":3000},{"name":"\\ReplaceAliasByActualDefinitionPass","relations":[],"size":3000},{"name":"\\RepeatedPass","relations":[],"size":3000},{"name":"\\InlineServiceDefinitionsPass","relations":[],"size":3000},{"name":"\\RemoveUnusedDefinitionsPass","relations":[],"size":3000},{"name":"\\CheckExceptionOnInvalidReferenceBehaviorPass","relations":[],"size":3000},{"name":"\\CompilerPassInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Compiler\\MergeExtensionConfigurationPass","relations":[],"size":3000},{"name":"\\ServiceReferenceGraphNode","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\ScopeWideningInjectionException","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\ScopeCrossingInjectionException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ExpressionLanguage\\","relations":[],"size":3000},{"name":"\\Node\\Node","relations":[],"size":3000},{"name":"\\ServiceReferenceGraphEdge","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authorization\\","relations":[],"size":3000},{"name":"Symfony\\Component\\ExpressionLanguage\\ExpressionFunction","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\LazyProxy\\PhpDumper\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\LazyProxy\\Instantiator\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DependencyInjection\\Container","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\BadMethodCallException","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Compiler\\Compiler","relations":[],"size":3000},{"name":"\\Alias","relations":[],"size":3000},{"name":"\\Definition","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\LazyProxy\\Instantiator\\RealServiceInstantiator","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Exception\\InactiveScopeException","relations":[],"size":3000},{"name":"\\ExpressionLanguage","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\LazyProxy\\Instantiator\\InstantiatorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Resource\\ResourceInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Compiler\\CompilerPassInterface","relations":[],"size":3000},{"name":"\\ContainerBuilder","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Extension\\Extension","relations":[],"size":3000},{"name":"\\SimpleXMLElement","relations":[],"size":3000},{"name":"\\Reference","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DomCrawler\\","relations":[],"size":3000},{"name":"Symfony\\Component\\DomCrawler\\Field\\FormField","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DomCrawler\\Field\\FormField","relations":[],"size":3000},{"name":"\\Symfony\\Component\\DomCrawler\\Field\\","relations":[],"size":3000},{"name":"\\DOMXPath","relations":[],"size":3000},{"name":"\\Link","relations":[],"size":3000},{"name":"\\LimitIterator","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\CssSelector","relations":[],"size":3000},{"name":"\\Form","relations":[],"size":3000},{"name":"\\DOMNodeList","relations":[],"size":3000},{"name":"\\Closure","relations":[],"size":3000},{"name":"\\Symfony\\Component\\EventDispatcher\\DependencyInjection\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\HttpKernel","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\DependencyInjection\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Kernel","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\","relations":[],"size":3000},{"name":"\\HttpKernelInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\ClassLoader\\ClassCollectionLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\DependencyInjection\\AddClassesToCachePass","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Config\\EnvParametersResource","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\DependencyInjection\\MergeExtensionConfigurationPass","relations":[],"size":3000},{"name":"Symfony\\Bridge\\ProxyManager\\LazyProxy\\Instantiator\\RuntimeInstantiator","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Dumper\\PhpDumper","relations":[],"size":3000},{"name":"Symfony\\Bridge\\ProxyManager\\LazyProxy\\PhpDumper\\ProxyDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Config\\FileLocator","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Loader\\LoaderResolver","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Loader\\YamlFileLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Loader\\IniFileLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Loader\\PhpFileLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\Loader\\ClosureLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Loader\\DelegatingLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Event\\FinishRequestEvent","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\Firewall\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Exception\\AccessDeniedHttpException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\InsufficientAuthenticationException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Security","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationTrustResolverInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\HttpUtils","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\EntryPoint\\AuthenticationEntryPointInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\Authorization\\AccessDeniedHandlerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Event\\GetResponseForExceptionEvent","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\LogoutException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\RememberMe\\","relations":[],"size":3000},{"name":"\\RememberMeServicesInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\RequestContextAwareInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\RequestMatcherInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Exception\\MethodNotAllowedHttpException","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\HttpCache\\SurrogateInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\EventDispatcher\\Event","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\EventListener\\SurrogateListener","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Dumper\\DataDumperInterface","relations":[],"size":3000},{"name":"\\ResponseCacheStrategy","relations":[],"size":3000},{"name":"\\HttpCache","relations":[],"size":3000},{"name":"\\ResponseCacheStrategyInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\HttpCache\\ResponseCacheStrategy","relations":[],"size":3000},{"name":"\\EsiResponseCacheStrategy","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Exception\\HttpException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\DataCollector\\Util\\","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Cloner\\VarCloner","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Cloner\\Data","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\DataCollector\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\ParameterBag","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\HeaderBag","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\ResponseHeaderBag","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\Exception\\FlattenException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\CacheWarmer\\","relations":[],"size":3000},{"name":"\\CacheWarmerInterface","relations":[],"size":3000},{"name":"\\WarmableInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Event\\KernelEvent","relations":[],"size":3000},{"name":"Psr\\Log\\NullLogger","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\CacheClearer\\","relations":[],"size":3000},{"name":"\\CacheClearerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Config\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\","relations":[],"size":3000},{"name":"\\ControllerResolverInterface","relations":[],"size":3000},{"name":"\\HttpKernelInterface,","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Loader\\LoaderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Profiler\\","relations":[],"size":3000},{"name":"\\Profile","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Profiler\\BaseMemcacheProfilerStorage","relations":[],"size":3000},{"name":"\\Memcache","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\DataCollector\\DataCollectorInterface","relations":[],"size":3000},{"name":"\\FilesystemIterator","relations":[],"size":3000},{"name":"\\RecursiveDirectoryIterator","relations":[],"size":3000},{"name":"\\RecursiveIteratorIterator","relations":[],"size":3000},{"name":"\\$mongoClass","relations":[],"size":3000},{"name":"\\Redis","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Profiler\\PdoProfilerStorage","relations":[],"size":3000},{"name":"\\SQLite3","relations":[],"size":3000},{"name":"\\ProfilerStorageInterface","relations":[],"size":3000},{"name":"\\Memcached","relations":[],"size":3000},{"name":"\\Symfony\\Component\\EventDispatcher\\Debug\\","relations":[],"size":3000},{"name":"\\WrappedListener","relations":[],"size":3000},{"name":"Symfony\\Component\\EventDispatcher\\EventSubscriberInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Debug\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\Exception\\ContextErrorException","relations":[],"size":3000},{"name":"\\ErrorException","relations":[],"size":3000},{"name":"\\ErrorHandlerCanary","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\Exception\\OutOfMemoryException","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\Exception\\FatalErrorException","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\FatalErrorHandler\\UndefinedFunctionFatalErrorHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\FatalErrorHandler\\UndefinedMethodFatalErrorHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\FatalErrorHandler\\ClassNotFoundFatalErrorHandler","relations":[],"size":3000},{"name":"\\KernelEvents","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Event\\GetResponseForControllerResultEvent","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Fragment\\AbstractSurrogateFragmentRenderer","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Fragment\\","relations":[],"size":3000},{"name":"\\FragmentRendererInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpKernel\\Fragment\\RoutableFragmentRenderer","relations":[],"size":3000},{"name":"Symfony\\Component\\DependencyInjection\\ContainerAwareInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\Asset\\","relations":[],"size":3000},{"name":"\\LoaderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Loader\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\Storage\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\Storage\\Storage","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\Helper\\CoreAssetsHelper","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\Asset\\UrlPackage","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\Asset\\PathPackage","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Templating\\Helper\\Helper","relations":[],"size":3000},{"name":"Symfony\\Component\\Templating\\Asset\\PackageInterface","relations":[],"size":3000},{"name":"\\HelperSet","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Helper\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Formatter\\OutputFormatterInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Data\\Util\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\OutOfBoundsException","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\BadMethodCallException","relations":[],"size":3000},{"name":"\\ResourceBundle","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Data\\Generator\\AbstractDataGenerator","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Util\\LocaleScanner","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\GenrbCompiler","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleReaderInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Util\\ArrayAccessibleResourceBundle","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Data\\Generator\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Writer\\BundleWriterInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\IntlBundleReader","relations":[],"size":3000},{"name":"\\GeneratorConfig","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Locale","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Provider\\LanguageDataProvider","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Provider\\ScriptDataProvider","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Provider\\RegionDataProvider","relations":[],"size":3000},{"name":"\\BundleReaderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\ResourceBundleNotFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Util\\RecursiveArrayAccess","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\MissingResourceException","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Util\\RingBuffer","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Data\\Bundle\\Writer\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\UnexpectedTypeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Data\\Bundle\\Compiler\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Data\\Provider\\","relations":[],"size":3000},{"name":"\\Collator","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReaderInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\NumberFormatter\\NumberFormatter","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Globals\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\ResourceBundle\\CurrencyBundle","relations":[],"size":3000},{"name":"\\Intl","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\ResourceBundle\\LanguageBundle","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\ResourceBundle\\LocaleBundle","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\ResourceBundle\\RegionBundle","relations":[],"size":3000},{"name":"\\ReflectionExtension","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BundleEntryReader","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\BufferedBundleReader","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Bundle\\Reader\\JsonBundleReader","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\MethodArgumentNotImplementedException","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\NotImplementedException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\PropertyAccess\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\MethodArgumentValueNotImplementedException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Exception\\MethodNotImplementedException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Intl\\Util\\","relations":[],"size":3000},{"name":"\\Version","relations":[],"size":3000},{"name":"\\IcuVersion","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Intl","relations":[],"size":3000},{"name":"\\Locale","relations":[],"size":3000},{"name":"\\PhpUnit_Framework_TestCase","relations":[],"size":3000},{"name":"\\SvnCommit","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Collator\\Collator","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Provider\\CurrencyDataProvider","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Data\\Provider\\LocaleDataProvider","relations":[],"size":3000},{"name":"\\ResourceBundleInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\IntlDateFormatter","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour1201Transformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\MonthTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Transformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\TimeZoneTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\DayOfYearTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\DayTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\MinuteTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\DayOfWeekTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\SecondTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\FullTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour2401Transformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour1200Transformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\Hour2400Transformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\QuarterTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\YearTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\AmPmTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\DateFormatter\\DateFormat\\HourTransformer","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ExpressionLanguage\\ParserCache\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\Parser\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ExpressionLanguage\\Node\\Node","relations":[],"size":3000},{"name":"\\Node","relations":[],"size":3000},{"name":"Symfony\\Component\\ExpressionLanguage\\Compiler","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\BaseNode","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Exception\\UnsetKeyException","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Exception\\InvalidTypeException","relations":[],"size":3000},{"name":"\\Processor","relations":[],"size":3000},{"name":"\\NodeInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ExpressionLanguage\\Node\\ArrayNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\Node\\AbstractNode","relations":[],"size":3000},{"name":"\\Specificity","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Token","relations":[],"size":3000},{"name":"\\ArrayNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ExpressionLanguage\\Node\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ExpressionLanguage\\Expression","relations":[],"size":3000},{"name":"Symfony\\Component\\ExpressionLanguage\\Node\\Node","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Expression\\","relations":[],"size":3000},{"name":"\\Regex","relations":[],"size":3000},{"name":"\\Glob","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Exception\\InternalErrorException","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Exception\\SyntaxErrorException","relations":[],"size":3000},{"name":"\\Token","relations":[],"size":3000},{"name":"\\SyntaxError","relations":[],"size":3000},{"name":"\\TokenStream","relations":[],"size":3000},{"name":"Symfony\\Component\\Yaml\\Exception\\ParseException","relations":[],"size":3000},{"name":"\\Parser","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ExpressionLanguage\\ParsedExpression","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Yaml\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\Exception\\ParseException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\Node\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\XPath\\Translator","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\XPath\\Extension\\HtmlExtension","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Shortcut\\EmptyStringParser","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Shortcut\\ElementParser","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Shortcut\\ClassParser","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Shortcut\\HashParser","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\","relations":[],"size":3000},{"name":"\\TokenizerPatterns","relations":[],"size":3000},{"name":"\\TokenizerEscaping","relations":[],"size":3000},{"name":"\\Handler\\WhitespaceHandler","relations":[],"size":3000},{"name":"\\Handler\\IdentifierHandler","relations":[],"size":3000},{"name":"\\Handler\\HashHandler","relations":[],"size":3000},{"name":"\\Handler\\StringHandler","relations":[],"size":3000},{"name":"\\Handler\\NumberHandler","relations":[],"size":3000},{"name":"\\Handler\\CommentHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\TokenStream","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Reader","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\Parser\\Shortcut\\","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Node\\SelectorNode","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Node\\ElementNode","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Node\\ClassNode","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Node\\HashNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\Parser\\Handler\\","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerPatterns","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Tokenizer\\TokenizerEscaping","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\XPath\\","relations":[],"size":3000},{"name":"\\Translator","relations":[],"size":3000},{"name":"\\XPathExpr","relations":[],"size":3000},{"name":"\\Symfony\\Component\\CssSelector\\XPath\\Extension\\AbstractExtension","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\XPath\\XPathExpr","relations":[],"size":3000},{"name":"\\Node\\SelectorNode","relations":[],"size":3000},{"name":"\\Node\\CombinedSelectorNode","relations":[],"size":3000},{"name":"\\Node\\NegationNode","relations":[],"size":3000},{"name":"\\Node\\FunctionNode","relations":[],"size":3000},{"name":"\\Node\\PseudoNode","relations":[],"size":3000},{"name":"\\Node\\AttributeNode","relations":[],"size":3000},{"name":"\\Node\\ClassNode","relations":[],"size":3000},{"name":"\\Node\\HashNode","relations":[],"size":3000},{"name":"\\Node\\ElementNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Exception\\ExpressionErrorException","relations":[],"size":3000},{"name":"\\NodeExtension","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Node\\FunctionNode","relations":[],"size":3000},{"name":"Symfony\\Component\\CssSelector\\Parser\\Parser","relations":[],"size":3000},{"name":"\\FormTypeGuesserChain","relations":[],"size":3000},{"name":"\\PreloadedExtension","relations":[],"size":3000},{"name":"\\ResolvedFormTypeFactory","relations":[],"size":3000},{"name":"\\FormRegistry","relations":[],"size":3000},{"name":"\\FormFactory","relations":[],"size":3000},{"name":"\\ResolvedFormTypeFactoryInterface","relations":[],"size":3000},{"name":"\\FormExtensionInterface","relations":[],"size":3000},{"name":"\\FormTypeInterface","relations":[],"size":3000},{"name":"\\FormTypeExtensionInterface","relations":[],"size":3000},{"name":"\\FormTypeGuesserInterface","relations":[],"size":3000},{"name":"\\ResolvedFormType","relations":[],"size":3000},{"name":"\\ResolvedFormTypeInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\BadMethodCallException","relations":[],"size":3000},{"name":"\\FormView","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\LogicException","relations":[],"size":3000},{"name":"\\FormRendererEngineInterface","relations":[],"size":3000},{"name":"\\FormConfigInterface","relations":[],"size":3000},{"name":"\\DataTransformerInterface","relations":[],"size":3000},{"name":"\\DataMapperInterface","relations":[],"size":3000},{"name":"\\FormFactoryInterface","relations":[],"size":3000},{"name":"\\RequestHandlerInterface","relations":[],"size":3000},{"name":"\\FormFactoryBuilder","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\CoreExtension","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\ButtonBuilder","relations":[],"size":3000},{"name":"\\SubmitButton","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Exception\\LogicException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Exception\\Exception","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Exception\\AlreadyBoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Util\\ServerParams","relations":[],"size":3000},{"name":"\\FormError","relations":[],"size":3000},{"name":"\\FormInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Util\\","relations":[],"size":3000},{"name":"\\IteratorIterator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Util\\ServerParams","relations":[],"size":3000},{"name":"\\OrderedHashMapIterator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Util\\VirtualFormAwareIterator","relations":[],"size":3000},{"name":"\\Iterator,","relations":[],"size":3000},{"name":"\\FormBuilderInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\EventDispatcher\\ImmutableEventDispatcher","relations":[],"size":3000},{"name":"\\NativeRequestHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\PropertyPath","relations":[],"size":3000},{"name":"\\FormRegistryInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\FormConfigBuilder","relations":[],"size":3000},{"name":"\\FormErrorIterator","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\AlreadySubmittedException","relations":[],"size":3000},{"name":"\\EmptyIterator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Guess\\Guess","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Guess\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\OutOfBoundsException","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\OptionsResolver","relations":[],"size":3000},{"name":"\\ButtonBuilder","relations":[],"size":3000},{"name":"\\SubmitButtonBuilder","relations":[],"size":3000},{"name":"\\FormBuilder","relations":[],"size":3000},{"name":"Symfony\\Component\\EventDispatcher\\EventDispatcher","relations":[],"size":3000},{"name":"\\Button","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Button","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\DependencyInjection\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormTypeGuesserChain","relations":[],"size":3000},{"name":"Symfony\\Bundle\\FrameworkBundle\\Templating\\Helper\\FormHelper","relations":[],"size":3000},{"name":"\\TemplatingRendererEngine","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\View\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BaseDateTimeTransformer","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\NumberToLocalizedStringTransformer","relations":[],"size":3000},{"name":"\\NumberFormatter","relations":[],"size":3000},{"name":"\\IntlDateFormatter","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\DataMapper\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoicesToBooleanArrayTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\EventListener\\FixCheckboxInputListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoiceToBooleanArrayTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\EventListener\\FixRadioInputListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoicesToValuesTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ChoiceToValueTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\EventListener\\MergeCollectionListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\SimpleChoiceList","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToRfc3339Transformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToLocalizedStringTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DataTransformerChain","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToArrayTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ArrayToPartsTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\ReversedTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToStringTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\DateTimeToTimestampTransformer","relations":[],"size":3000},{"name":"\\DateType","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\NumberToLocalizedStringTransformer","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\Type\\BaseType","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\ValueToDuplicatesTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\BooleanToStringTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\PercentToLocalizedStringTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\MoneyToLocalizedStringTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataMapper\\PropertyPathMapper","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\EventListener\\TrimListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\InvalidConfigurationException","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\DataTransformer\\IntegerToLocalizedStringTransformer","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\EventListener\\FixUrlProtocolListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Core\\EventListener\\ResizeFormListener","relations":[],"size":3000},{"name":"\\Type\\FormType","relations":[],"size":3000},{"name":"\\Type\\BirthdayType","relations":[],"size":3000},{"name":"\\Type\\CheckboxType","relations":[],"size":3000},{"name":"\\Type\\ChoiceType","relations":[],"size":3000},{"name":"\\Type\\CollectionType","relations":[],"size":3000},{"name":"\\Type\\CountryType","relations":[],"size":3000},{"name":"\\Type\\DateType","relations":[],"size":3000},{"name":"\\Type\\DateTimeType","relations":[],"size":3000},{"name":"\\Type\\EmailType","relations":[],"size":3000},{"name":"\\Type\\HiddenType","relations":[],"size":3000},{"name":"\\Type\\IntegerType","relations":[],"size":3000},{"name":"\\Type\\LanguageType","relations":[],"size":3000},{"name":"\\Type\\LocaleType","relations":[],"size":3000},{"name":"\\Type\\MoneyType","relations":[],"size":3000},{"name":"\\Type\\NumberType","relations":[],"size":3000},{"name":"\\Type\\PasswordType","relations":[],"size":3000},{"name":"\\Type\\PercentType","relations":[],"size":3000},{"name":"\\Type\\RadioType","relations":[],"size":3000},{"name":"\\Type\\RepeatedType","relations":[],"size":3000},{"name":"\\Type\\SearchType","relations":[],"size":3000},{"name":"\\Type\\TextareaType","relations":[],"size":3000},{"name":"\\Type\\TextType","relations":[],"size":3000},{"name":"\\Type\\TimeType","relations":[],"size":3000},{"name":"\\Type\\TimezoneType","relations":[],"size":3000},{"name":"\\Type\\UrlType","relations":[],"size":3000},{"name":"\\Type\\FileType","relations":[],"size":3000},{"name":"\\Type\\ButtonType","relations":[],"size":3000},{"name":"\\Type\\SubmitType","relations":[],"size":3000},{"name":"\\Type\\ResetType","relations":[],"size":3000},{"name":"\\Type\\CurrencyType","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceList","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormConfigBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\DataCollector\\Proxy\\","relations":[],"size":3000},{"name":"\\ResolvedTypeDataCollectorProxy","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\ResolvedFormTypeFactoryInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\DataCollector\\FormDataCollectorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormTypeInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\ResolvedFormTypeInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\DataCollector\\EventListener\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\DataCollector\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\AbstractTypeExtension","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\DataCollector\\EventListener\\DataCollectorListener","relations":[],"size":3000},{"name":"\\FormDataExtractorInterface","relations":[],"size":3000},{"name":"\\&$output","relations":[],"size":3000},{"name":"\\Type\\DataCollectorTypeExtension","relations":[],"size":3000},{"name":"\\FormDataCollectorInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Validator\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Validator\\Constraints\\Form","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\ViolationMapperInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Validator\\Type\\BaseValidatorExtension","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\ViolationMapper","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Validator\\EventListener\\ValidationListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Constraints\\Valid","relations":[],"size":3000},{"name":"\\ValidatorTypeGuesser","relations":[],"size":3000},{"name":"\\Type\\FormTypeValidatorExtension","relations":[],"size":3000},{"name":"\\Type\\RepeatedTypeValidatorExtension","relations":[],"size":3000},{"name":"\\Type\\SubmitTypeValidatorExtension","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Validator\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\MetadataFactoryInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Validator\\ViolationMapper\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Exception\\ErrorMappingException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\ConstraintViolation","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\PropertyPathIterator","relations":[],"size":3000},{"name":"\\ViolationPath","relations":[],"size":3000},{"name":"\\ViolationPathIterator","relations":[],"size":3000},{"name":"\\MappingRule","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormError","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Util\\InheritDataAwareIterator","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\PropertyPathBuilder","relations":[],"size":3000},{"name":"\\RelativePath","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\PropertyPathIteratorInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Csrf\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\Csrf\\EventListener\\CsrfValidationListener","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Csrf\\CsrfTokenManagerInterface","relations":[],"size":3000},{"name":"\\CsrfProviderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\DefaultCsrfProvider","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Session","relations":[],"size":3000},{"name":"\\Type\\FormTypeCsrfExtension","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\HttpFoundation\\EventListener\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\HttpFoundation\\EventListener\\BindRequestListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Extension\\HttpFoundation\\HttpFoundationRequestHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\RequestHandlerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Extension\\HttpFoundation\\","relations":[],"size":3000},{"name":"\\Type\\FormTypeHttpFoundationExtension","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\Forms","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Test\\FormIntegrationTestCase","relations":[],"size":3000},{"name":"Symfony\\Component\\Form\\FormBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Form\\Test\\","relations":[],"size":3000},{"name":"\\PHPUnit_Util_ErrorHandler","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Serializer\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Serializer\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Serializer\\Encoder\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\Exception\\UnexpectedValueException","relations":[],"size":3000},{"name":"\\JsonEncoder","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\JsonEncode","relations":[],"size":3000},{"name":"\\JsonDecode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Serializer\\Encoder\\SerializerAwareEncoder","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\SerializerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Serializer\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\Encoder\\ChainEncoder","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\Encoder\\ChainDecoder","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\Exception\\LogicException","relations":[],"size":3000},{"name":"\\SerializerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Serializer\\Normalizer\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Serializer\\Normalizer\\SerializerAwareNormalizer","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"Symfony\\Component\\Serializer\\Exception\\CircularReferenceException","relations":[],"size":3000},{"name":"\\Cookie","relations":[],"size":3000},{"name":"\\Response","relations":[],"size":3000},{"name":"\\ResponseHeaderBag","relations":[],"size":3000},{"name":"\\ParameterBag","relations":[],"size":3000},{"name":"\\FileBag","relations":[],"size":3000},{"name":"\\ServerBag","relations":[],"size":3000},{"name":"\\HeaderBag","relations":[],"size":3000},{"name":"\\IpUtils","relations":[],"size":3000},{"name":"\\AcceptHeader","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\SessionInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\EventDispatcher\\EventDispatcher","relations":[],"size":3000},{"name":"\\Event","relations":[],"size":3000},{"name":"\\Symfony\\Component\\EventDispatcher\\","relations":[],"size":3000},{"name":"\\EventDispatcherInterface","relations":[],"size":3000},{"name":"\\EventSubscriberInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\EventDispatcher\\Event","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Process\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Process\\Process","relations":[],"size":3000},{"name":"\\PhpExecutableFinder","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Process\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Exception\\ProcessFailedException","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Exception\\LogicException","relations":[],"size":3000},{"name":"\\ProcessUtils","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Exception\\ProcessTimedOutException","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Pipes\\WindowsPipes","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Pipes\\UnixPipes","relations":[],"size":3000},{"name":"Symfony\\Component\\Process\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"\\Process","relations":[],"size":3000},{"name":"\\ExecutableFinder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Process\\Pipes\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Process\\Pipes\\AbstractPipes","relations":[],"size":3000},{"name":"Symfony\\Component\\Yaml\\Exception\\DumpException","relations":[],"size":3000},{"name":"\\Escaper","relations":[],"size":3000},{"name":"\\Unescaper","relations":[],"size":3000},{"name":"\\Dumper","relations":[],"size":3000},{"name":"\\Symfony\\Component\\OptionsResolver\\","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\Exception\\AccessException","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\Exception\\UndefinedOptionsException","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\Exception\\NoSuchOptionException","relations":[],"size":3000},{"name":"Symfony\\Component\\OptionsResolver\\Exception\\OptionDefinitionException","relations":[],"size":3000},{"name":"\\ArrayAccess,","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Exception\\ValidatorException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\OptionsResolver\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\VariableNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\ScalarNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\ArrayNode","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Exception\\Exception","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Exception\\DuplicateKeyException","relations":[],"size":3000},{"name":"\\PrototypeNodeInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Exception\\ForbiddenOverwriteException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\NumericNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Dumper\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\ConfigurationInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\NodeInterface","relations":[],"size":3000},{"name":"\\$keyNodeClass","relations":[],"size":3000},{"name":"Symfony\\Component\\Yaml\\Inline","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Builder\\","relations":[],"size":3000},{"name":"\\ExprBuilder","relations":[],"size":3000},{"name":"\\NodeDefinition","relations":[],"size":3000},{"name":"\\ParentNodeDefinitionInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Builder\\ScalarNodeDefinition","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\BooleanNode","relations":[],"size":3000},{"name":"\\NodeParentInterface","relations":[],"size":3000},{"name":"\\ValidationBuilder","relations":[],"size":3000},{"name":"\\MergeBuilder","relations":[],"size":3000},{"name":"\\NormalizationBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Builder\\NumericNodeDefinition","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\IntegerNode","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Builder\\NodeDefinition","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\VariableNode","relations":[],"size":3000},{"name":"\\NodeBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Definition\\Builder\\VariableNodeDefinition","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\ScalarNode","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\ArrayNode","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\PrototypedArrayNode","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\Exception\\InvalidDefinitionException","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\EnumNode","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Definition\\FloatNode","relations":[],"size":3000},{"name":"\\ConfigurationInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Exception\\FileLoaderLoadException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Util\\","relations":[],"size":3000},{"name":"\\DomElement","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Config\\Resource\\","relations":[],"size":3000},{"name":"\\ConstraintViolationList","relations":[],"size":3000},{"name":"\\ExecutionContext","relations":[],"size":3000},{"name":"\\MetadataInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\MetadataInterface","relations":[],"size":3000},{"name":"\\MetadataInterface,","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\MemberMetadata","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\ValidatorException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Factory\\LazyLoadingMetadataFactory","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\Loader\\FilesLoader","relations":[],"size":3000},{"name":"\\YamlFileLoader","relations":[],"size":3000},{"name":"\\XmlFileLoader","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\Loader\\","relations":[],"size":3000},{"name":"Doctrine\\Common\\Annotations\\Reader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\ClassMetadata","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\Loader\\LoaderChain","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\Cache\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\GenericMetadata","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\ElementMetadata","relations":[],"size":3000},{"name":"\\CascadingStrategy","relations":[],"size":3000},{"name":"\\TraversalStrategy","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\ValidationVisitorInterface","relations":[],"size":3000},{"name":"\\ReflectionProperty","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\Factory\\BlackHoleMetadataFactory","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Mapping\\Factory\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\NoSuchMetadataException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\LoaderInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface","relations":[],"size":3000},{"name":"\\PropertyMetadata","relations":[],"size":3000},{"name":"\\GetterMetadata","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\GroupDefinitionException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Constraints\\GroupSequence","relations":[],"size":3000},{"name":"\\ClassMetadata","relations":[],"size":3000},{"name":"\\MemberMetadata","relations":[],"size":3000},{"name":"\\PropertyMetadataInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\BadMethodCallException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Factory\\MetadataFactoryInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Context\\ExecutionContextInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\ValidatorBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Context\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\ConstraintViolationList","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Violation\\ConstraintViolationBuilder","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Util\\PropertyPath","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Validator\\ValidatorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\MetadataInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\PropertyAccess\\","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\Exception\\UnexpectedTypeException","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\Exception\\InvalidPropertyPathException","relations":[],"size":3000},{"name":"\\PropertyPathIterator","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\Exception\\OutOfBoundsException","relations":[],"size":3000},{"name":"\\ExecutionContextInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\InvalidOptionsException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\MissingOptionsException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\ExecutionContextInterface","relations":[],"size":3000},{"name":"Doctrine\\Common\\Annotations\\CachedReader","relations":[],"size":3000},{"name":"Doctrine\\Common\\Cache\\ArrayCache","relations":[],"size":3000},{"name":"\\Validation","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\XmlFilesLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\XmlFileLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\YamlFilesLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\YamlFileLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\StaticMethodLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\AnnotationLoader","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\Loader\\LoaderChain","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\ClassMetadataFactory","relations":[],"size":3000},{"name":"\\ConstraintValidatorFactory","relations":[],"size":3000},{"name":"\\DefaultTranslator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Symfony\\Component\\Validator\\Validator","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Context\\ExecutionContextFactory","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Validator\\RecursiveValidator","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Context\\LegacyExecutionContextFactory","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Validator\\LegacyValidator","relations":[],"size":3000},{"name":"\\ObjectInitializerInterface","relations":[],"size":3000},{"name":"\\MetadataFactoryInterface","relations":[],"size":3000},{"name":"\\ConstraintValidatorFactoryInterface","relations":[],"size":3000},{"name":"\\ConstraintViolationInterface","relations":[],"size":3000},{"name":"\\ConstraintViolationListInterface","relations":[],"size":3000},{"name":"\\Traversable,","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Validator\\RecursiveValidator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Validator\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\GenericMetadata","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\TraversalStrategy","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\UnsupportedMetadataException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\CascadingStrategy","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Mapping\\ClassMetadataInterface","relations":[],"size":3000},{"name":"\\RecursiveContextualValidator","relations":[],"size":3000},{"name":"\\ValidationVisitor","relations":[],"size":3000},{"name":"\\LegacyExecutionContext","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Context\\ExecutionContext","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\File\\MimeType\\ExtensionGuesser","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\File\\MimeType\\MimeTypeGuesser","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException","relations":[],"size":3000},{"name":"\\File","relations":[],"size":3000},{"name":"\\Expression","relations":[],"size":3000},{"name":"\\Range","relations":[],"size":3000},{"name":"\\Issn","relations":[],"size":3000},{"name":"\\DatetimeImmutable","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\AbstractComparisonValidator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\AbstractComparison","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Exception\\OutOfBoundsException","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Constraints\\Optional","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Constraints\\Required","relations":[],"size":3000},{"name":"\\Isbn","relations":[],"size":3000},{"name":"\\Choice","relations":[],"size":3000},{"name":"\\CardScheme","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\FileValidator","relations":[],"size":3000},{"name":"\\Image","relations":[],"size":3000},{"name":"\\Iban","relations":[],"size":3000},{"name":"\\Date","relations":[],"size":3000},{"name":"\\Ip","relations":[],"size":3000},{"name":"\\Time","relations":[],"size":3000},{"name":"\\Length","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\File","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\Composite","relations":[],"size":3000},{"name":"\\Required","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\File\\UploadedFile","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\Symfony\\Component\\HttpFoundation\\File\\File","relations":[],"size":3000},{"name":"\\Collection","relations":[],"size":3000},{"name":"\\Uuid","relations":[],"size":3000},{"name":"\\Egulias\\EmailValidator\\EmailValidator","relations":[],"size":3000},{"name":"\\Email","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Constraints\\DateValidator","relations":[],"size":3000},{"name":"\\DateValidator","relations":[],"size":3000},{"name":"\\TimeValidator","relations":[],"size":3000},{"name":"\\Luhn","relations":[],"size":3000},{"name":"\\Count","relations":[],"size":3000},{"name":"Symfony\\Component\\Validator\\Violation\\LegacyConstraintViolationBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Validator\\Violation\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Globals\\IntlGlobals","relations":[],"size":3000},{"name":"Symfony\\Component\\Intl\\Locale\\Locale","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\RuntimeException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Exception\\AuthenticationServiceException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Util\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Encoder\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Encoder\\BasePasswordEncoder","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\BadCredentialsException","relations":[],"size":3000},{"name":"\\EncoderFactoryInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Util\\StringUtils","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authorization\\Voter\\VoterInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\AuthenticationCredentialsNotFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationManagerInterface","relations":[],"size":3000},{"name":"\\AccessDecisionManagerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authorization\\Voter\\","relations":[],"size":3000},{"name":"\\VoterInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Role\\RoleHierarchyInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authorization\\Voter\\RoleVoter","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Event\\AuthenticationEvent","relations":[],"size":3000},{"name":"\\SimpleAuthenticatorInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\","relations":[],"size":3000},{"name":"\\PersistentToken","relations":[],"size":3000},{"name":"\\PersistentTokenInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\AbstractToken","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\","relations":[],"size":3000},{"name":"\\Serializable","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authentication\\Token\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Role\\Role","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authentication\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\AuthenticationEvents","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Event\\AuthenticationEvent","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\ProviderNotFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Event\\AuthenticationFailureEvent","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\User\\UserProviderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\Token\\PreAuthenticatedToken","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\User\\UserCheckerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\SimpleAuthenticatorInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Authentication\\Provider\\UserAuthenticationProvider","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\AuthenticationServiceException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Encoder\\EncoderFactoryInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\Token\\RememberMeToken","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\TokenStorage","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authorization\\AuthorizationChecker","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Role\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\Role\\Role","relations":[],"size":3000},{"name":"\\Role","relations":[],"size":3000},{"name":"\\UserInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Core\\User\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\LockedException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\DisabledException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\AccountExpiredException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\CredentialsExpiredException","relations":[],"size":3000},{"name":"\\User","relations":[],"size":3000},{"name":"\\TokenStorageInterface,","relations":[],"size":3000},{"name":"\\FirewallMapInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\Firewall\\AbstractPreAuthenticatedListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManagerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\AccessMapInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\SessionUnavailableException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\Event\\InteractiveLoginEvent","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\SecurityEvents","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\RememberMe\\RememberMeServicesInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\Firewall\\AbstractAuthenticationListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\InvalidArgumentException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\InvalidCsrfTokenException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\Token\\AnonymousToken","relations":[],"size":3000},{"name":"\\DigestData","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\NonceExpiredException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\EntryPoint\\DigestAuthenticationEntryPoint","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\Logout\\LogoutHandlerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\SimplePreAuthenticatorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Role\\SwitchUserRole","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Http\\Event\\SwitchUserEvent","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\Authentication\\","relations":[],"size":3000},{"name":"\\AuthenticationSuccessHandlerInterface","relations":[],"size":3000},{"name":"\\AuthenticationFailureHandlerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\EntryPoint\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\RememberMe\\AbstractRememberMeServices","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Exception\\CookieTheftException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\RememberMe\\TokenProviderInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\Logout\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Http\\Session\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Exception\\Exception","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Exception\\AclNotFoundException","relations":[],"size":3000},{"name":"\\EntryInterface","relations":[],"size":3000},{"name":"\\ObjectIdentityInterface","relations":[],"size":3000},{"name":"\\AclProviderInterface","relations":[],"size":3000},{"name":"\\MutableAclInterface","relations":[],"size":3000},{"name":"\\AclInterface","relations":[],"size":3000},{"name":"\\SecurityIdentityInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Domain\\","relations":[],"size":3000},{"name":"\\PermissionGrantingStrategy","relations":[],"size":3000},{"name":"\\Entry","relations":[],"size":3000},{"name":"\\FieldEntry","relations":[],"size":3000},{"name":"Doctrine\\Common\\PropertyChangedListener","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\AclInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\EntryInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\AclProviderInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityRetrievalStrategyInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\SecurityIdentityRetrievalStrategyInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Domain\\Entry","relations":[],"size":3000},{"name":"\\ObjectIdentity","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Util\\ClassUtils","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\PermissionGrantingStrategyInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\ObjectIdentityInterface","relations":[],"size":3000},{"name":"\\UserSecurityIdentity","relations":[],"size":3000},{"name":"\\RoleSecurityIdentity","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AuthenticatedVoter","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Authentication\\AuthenticationTrustResolver","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Exception\\NoAceFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\AuditLoggerInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Exception\\InvalidDomainObjectException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Dbal\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Exception\\NotAllAclsFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Exception\\AclNotFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Domain\\Acl","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Domain\\Entry","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Domain\\FieldEntry","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\AclCacheInterface","relations":[],"size":3000},{"name":"Doctrine\\DBAL\\Driver\\Statement","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Dbal\\Doctrine\\DBAL\\Schema\\Schema","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Dbal\\AclProvider","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Exception\\AclAlreadyExistsException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Exception\\ConcurrentModificationException","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Model\\MutableAclInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Permission\\","relations":[],"size":3000},{"name":"\\MaskBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Acl\\Voter\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Acl\\Permission\\PermissionMapInterface","relations":[],"size":3000},{"name":"\\CsrfToken","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Csrf\\TokenStorage\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Csrf\\Exception\\TokenNotFoundException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Csrf\\TokenGenerator\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Util\\SecureRandom","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Core\\Util\\SecureRandomInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Security\\Csrf\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Csrf\\TokenGenerator\\UriSafeTokenGenerator","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Csrf\\TokenStorage\\NativeSessionTokenStorage","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Csrf\\TokenGenerator\\TokenGeneratorInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Security\\Csrf\\TokenStorage\\TokenStorageInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Dumper\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Dumper\\CliDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Cloner\\Cursor","relations":[],"size":3000},{"name":"\\AbstractDumper","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Dumper\\AbstractDumper","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Cloner\\","relations":[],"size":3000},{"name":"\\Data","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Exception\\ThrowingCasterException","relations":[],"size":3000},{"name":"\\Stub","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Cloner\\AbstractCloner","relations":[],"size":3000},{"name":"\\Cursor","relations":[],"size":3000},{"name":"\\DumperInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Caster\\","relations":[],"size":3000},{"name":"\\ConstStub","relations":[],"size":3000},{"name":"Symfony\\Component\\VarDumper\\Cloner\\Stub","relations":[],"size":3000},{"name":"\\ArrayObject","relations":[],"size":3000},{"name":"\\SplDoublyLinkedList","relations":[],"size":3000},{"name":"\\SplFixedArray","relations":[],"size":3000},{"name":"\\CutStub","relations":[],"size":3000},{"name":"\\DOMException","relations":[],"size":3000},{"name":"\\DOMNameSpaceNode","relations":[],"size":3000},{"name":"\\DOMCharacterData","relations":[],"size":3000},{"name":"\\DOMAttr","relations":[],"size":3000},{"name":"\\DOMText","relations":[],"size":3000},{"name":"\\DOMTypeinfo","relations":[],"size":3000},{"name":"\\DOMDomError","relations":[],"size":3000},{"name":"\\DOMLocator","relations":[],"size":3000},{"name":"\\DOMDocumentType","relations":[],"size":3000},{"name":"\\DOMNotation","relations":[],"size":3000},{"name":"\\DOMEntity","relations":[],"size":3000},{"name":"\\DOMProcessingInstruction","relations":[],"size":3000},{"name":"\\PDOStatement","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Caster\\Doctrine\\Common\\Proxy\\Proxy","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\Caster\\Doctrine\\ORM\\Proxy\\Proxy","relations":[],"size":3000},{"name":"Doctrine\\ORM\\PersistentCollection","relations":[],"size":3000},{"name":"\\Reflector","relations":[],"size":3000},{"name":"\\Symfony\\Component\\VarDumper\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ClassLoader\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\ClassLoader\\UniversalClassLoader","relations":[],"size":3000},{"name":"\\ErrorHandler","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Stopwatch\\","relations":[],"size":3000},{"name":"\\StopwatchEvent","relations":[],"size":3000},{"name":"\\StopwatchPeriod","relations":[],"size":3000},{"name":"\\Section","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Exception\\AdapterFailureException","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Adapter\\AdapterInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Shell\\Command","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Adapter\\AbstractFindAdapter","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Iterator\\SortableIterator","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Shell\\Shell","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Expression\\Expression","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Adapter\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Adapter\\AbstractAdapter","relations":[],"size":3000},{"name":"\\FileTypeFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\FilePathsIterator","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Exception\\AccessDeniedException","relations":[],"size":3000},{"name":"\\Iterator\\ExcludeDirectoryFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\FilecontentFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\CustomFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\SortableIterator","relations":[],"size":3000},{"name":"\\Iterator\\RecursiveDirectoryIterator","relations":[],"size":3000},{"name":"\\Iterator\\DepthRangeFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\FileTypeFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\FilenameFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\SizeRangeFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\DateRangeFilterIterator","relations":[],"size":3000},{"name":"\\Iterator\\PathFilterIterator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Adapter\\GnuFindAdapter","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Adapter\\BsdFindAdapter","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\Adapter\\PhpAdapter","relations":[],"size":3000},{"name":"\\Comparator\\NumberComparator","relations":[],"size":3000},{"name":"\\Comparator\\DateComparator","relations":[],"size":3000},{"name":"\\AppendIterator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Command\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Comparator\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Comparator\\Comparator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Iterator\\MultiplePcreFilterIterator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Iterator\\FilterIterator","relations":[],"size":3000},{"name":"\\FilterIterator","relations":[],"size":3000},{"name":"Symfony\\Component\\Finder\\SplFileInfo","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Finder\\Iterator\\","relations":[],"size":3000},{"name":"\\Traversable","relations":[],"size":3000},{"name":"\\RecursiveArrayIterator","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Annotation\\","relations":[],"size":3000},{"name":"\\Route","relations":[],"size":3000},{"name":"\\RouteCollection","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Loader\\AnnotationFileLoader","relations":[],"size":3000},{"name":"\\AnnotationClassLoader","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Loader\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Config\\Loader\\LoaderResolverInterface","relations":[],"size":3000},{"name":"\\CompiledRoute","relations":[],"size":3000},{"name":"\\DomainException","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Exception\\MethodNotAllowedException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Matcher\\Dumper\\MatcherDumper","relations":[],"size":3000},{"name":"\\DumperCollection","relations":[],"size":3000},{"name":"\\DumperRoute","relations":[],"size":3000},{"name":"\\DumperPrefixCollection","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Matcher\\Dumper\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Matcher\\Dumper\\DumperCollection","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Matcher\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Generator\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Exception\\RouteNotFoundException","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Exception\\MissingMandatoryParametersException","relations":[],"size":3000},{"name":"Symfony\\Component\\Routing\\Exception\\InvalidParameterException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Generator\\Dumper\\GeneratorDumper","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Routing\\Generator\\Dumper\\","relations":[],"size":3000},{"name":"\\UrlMatcherInterface,","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Filesystem\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Filesystem\\Exception\\FileNotFoundException","relations":[],"size":3000},{"name":"\\ExceptionInterface","relations":[],"size":3000},{"name":"\\Filesystem","relations":[],"size":3000},{"name":"\\FlattenException","relations":[],"size":3000},{"name":"\\&$count","relations":[],"size":3000},{"name":"\\__PHP_Incomplete_Class","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Debug\\Exception\\FatalErrorException","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpKernel\\Exception\\FatalErrorException","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Debug\\FatalErrorHandler\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\Exception\\UndefinedMethodException","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\Exception\\UndefinedFunctionException","relations":[],"size":3000},{"name":"Symfony\\Component\\Debug\\Exception\\ClassNotFoundException","relations":[],"size":3000},{"name":"\\ExceptionHandler","relations":[],"size":3000},{"name":"\\DebugClassLoader","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Request","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\File\\MimeType\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\File\\Exception\\AccessDeniedException","relations":[],"size":3000},{"name":"\\MimeTypeExtensionGuesser","relations":[],"size":3000},{"name":"\\ExtensionGuesserInterface","relations":[],"size":3000},{"name":"\\FileBinaryMimeTypeGuesser","relations":[],"size":3000},{"name":"\\FileinfoMimeTypeGuesser","relations":[],"size":3000},{"name":"\\MimeTypeGuesserInterface","relations":[],"size":3000},{"name":"\\finfo","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\File\\File","relations":[],"size":3000},{"name":"\\AcceptHeaderItem","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\ParameterBag","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Response","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\HeaderBag","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\File\\File","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\RequestMatcher","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\SessionBagInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Flash\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\AbstractProxy","relations":[],"size":3000},{"name":"\\SessionHandlerInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\MockArraySessionStorage","relations":[],"size":3000},{"name":"\\MetadataBag","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\SessionHandlerProxy","relations":[],"size":3000},{"name":"\\SessionHandler","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Storage\\Proxy\\NativeProxy","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Storage\\Handler\\NativeSessionHandler","relations":[],"size":3000},{"name":"\\MongoDate","relations":[],"size":3000},{"name":"\\MongoBinData","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Attribute\\AttributeBag","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBag","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Storage\\SessionStorageInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Attribute\\AttributeBagInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBagInterface","relations":[],"size":3000},{"name":"\\SessionBagInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Attribute\\AttributeBag","relations":[],"size":3000},{"name":"\\Symfony\\Component\\HttpFoundation\\Session\\Attribute\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Writer\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\Dumper\\DumperInterface","relations":[],"size":3000},{"name":"\\Interval","relations":[],"size":3000},{"name":"\\PluralizationRules","relations":[],"size":3000},{"name":"\\MessageCatalogueInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Catalogue\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\MessageCatalogueInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Catalogue\\AbstractOperation","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Loader\\","relations":[],"size":3000},{"name":"\\SplFileObject","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Loader\\IcuResFileLoader","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Dumper\\FileDumper","relations":[],"size":3000},{"name":"Symfony\\Component\\Translation\\Loader\\MoFileLoader","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Dumper\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Translation\\Extractor\\","relations":[],"size":3000},{"name":"\\ExtractorInterface","relations":[],"size":3000},{"name":"\\PropertyAccessorBuilder","relations":[],"size":3000},{"name":"\\Symfony\\Component\\PropertyAccess\\Exception\\AccessException","relations":[],"size":3000},{"name":"\\PropertyPath","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\Exception\\NoSuchIndexException","relations":[],"size":3000},{"name":"Symfony\\Component\\PropertyAccess\\Exception\\NoSuchPropertyException","relations":[],"size":3000},{"name":"\\StringUtil","relations":[],"size":3000},{"name":"\\PropertyPathInterface","relations":[],"size":3000},{"name":"\\PropertyAccessor","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Event\\ConsoleEvent","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Command\\Command","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Helper\\DescriptorHelper","relations":[],"size":3000},{"name":"\\Command","relations":[],"size":3000},{"name":"\\OutputInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Output\\StreamOutput","relations":[],"size":3000},{"name":"\\StreamOutput","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Output\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Formatter\\OutputFormatter","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Output\\Output","relations":[],"size":3000},{"name":"Psr\\Log\\AbstractLogger","relations":[],"size":3000},{"name":"Psr\\Log\\InvalidArgumentException","relations":[],"size":3000},{"name":"\\OutputFormatterStyleInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Formatter\\","relations":[],"size":3000},{"name":"\\OutputFormatterStyle","relations":[],"size":3000},{"name":"\\OutputFormatterStyleStack","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Input\\","relations":[],"size":3000},{"name":"\\InputArgument","relations":[],"size":3000},{"name":"\\InputOption","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Input\\ArgvInput","relations":[],"size":3000},{"name":"\\InputDefinition","relations":[],"size":3000},{"name":"\\InputInterface","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Input\\Input","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Tester\\","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Output\\StreamOutput","relations":[],"size":3000},{"name":"\\HelperInterface","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Output\\NullOutput","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Formatter\\OutputFormatterStyle","relations":[],"size":3000},{"name":"Symfony\\Component\\Console\\Question\\Question","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Helper\\InputAwareHelper","relations":[],"size":3000},{"name":"\\Helper","relations":[],"size":3000},{"name":"\\TableStyle","relations":[],"size":3000},{"name":"\\Table","relations":[],"size":3000},{"name":"\\$self","relations":[],"size":3000},{"name":"\\ProgressBar","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Question\\","relations":[],"size":3000},{"name":"\\Symfony\\Component\\Console\\Question\\Question","relations":[],"size":3000}]; | |
function updateRelationsChart() { | |
if(updateRelationsChart.initiazed) return; | |
updateRelationsChart.initiazed = true; | |
var diameter = 960, | |
radius = diameter / 2, | |
innerRadius = radius - 120; | |
var cluster = d3.layout.cluster() | |
.size([360, innerRadius]) | |
.sort(null) | |
.value(function(d) { return d.size; }); | |
var bundle = d3.layout.bundle(); | |
var line = d3.svg.line.radial() | |
.interpolate("bundle") | |
.tension(.85) | |
.radius(function(d) { return d.y; }) | |
.angle(function(d) { return d.x / 180 * Math.PI; }); | |
var svg = d3.select("#svg-relations").select("svg") | |
.attr("width", diameter) | |
.attr("height", diameter) | |
.append("g") | |
.attr("transform", "translate(" + radius + "," + radius + ")"); | |
var link = svg.append("g").selectAll(".link"), | |
node = svg.append("g").selectAll(".node"); | |
var nodes = cluster.nodes(packageHierarchy(relations)), | |
links = packageImports(nodes); | |
link = link | |
.data(bundle(links)) | |
.enter().append("path") | |
.each(function(d) { d.source = d[0], d.target = d[d.length - 1]; }) | |
.attr("class", "link") | |
.attr("d", line); | |
node = node | |
.data(nodes.filter(function(n) { return !n.children; })) | |
.enter().append("text") | |
.attr("class", "node") | |
.attr("dy", ".31em") | |
.attr("transform", function(d) { return "rotate(" + (d.x - 90) + ")translate(" + (d.y + 8) + ",0)" + (d.x < 180 ? "" : "rotate(180)"); }) | |
.style("text-anchor", function(d) { return d.x < 180 ? "start" : "end"; }) | |
.text(function(d) { return d.key; }) | |
.on("mouseover", mouseovered) | |
.on("mouseout", mouseouted); | |
// d3.data(relations); | |
function mouseovered(d) { | |
node | |
.each(function(n) { n.target = n.source = false; }); | |
link | |
.classed("link--target", function(l) { if (l.target === d) return l.source.source = true; }) | |
.classed("link--source", function(l) { if (l.source === d) return l.target.target = true; }) | |
.filter(function(l) { return l.target === d || l.source === d; }) | |
.each(function() { this.parentNode.appendChild(this); }); | |
node | |
.classed("node--target", function(n) { return n.target; }) | |
.classed("node--source", function(n) { return n.source; }); | |
} | |
function mouseouted(d) { | |
link | |
.classed("link--target", false) | |
.classed("link--source", false); | |
node | |
.classed("node--target", false) | |
.classed("node--source", false); | |
} | |
d3.select(self.frameElement).style("height", diameter + "px"); | |
// Lazily construct the package hierarchy from class names. | |
function packageHierarchy(classes) { | |
var map = {}; | |
function find(name, data) { | |
var node = map[name], i; | |
if (!node) { | |
node = map[name] = data || {name: name, children: []}; | |
if (name.length) { | |
node.parent = find(name.substring(0, i = name.lastIndexOf("\\"))); | |
if(!node.parent.children) { | |
node.parent.children = []; // fix anomalies | |
} | |
node.parent.children.push(node); | |
node.key = name.substring(i + 1); | |
} | |
} | |
return node; | |
} | |
classes.forEach(function(d) { | |
find(d.name, d); | |
}); | |
return map[""]; | |
} | |
// Return a list of imports for the given array of nodes. | |
function packageImports(nodes) { | |
var map = {}, | |
imports = []; | |
// Compute a map from name to node. | |
nodes.forEach(function(d) { | |
map[d.name] = d; | |
}); | |
// For each import, construct a link from the source to target node. | |
nodes.forEach(function(d) { | |
if (d.relations) d.relations.forEach(function(i) { | |
imports.push({source: map[d.name], target: map[i]}); | |
}); | |
}); | |
return imports; | |
} | |
} | |
// Save as | |
document.getElementById('btn-save-relations').onmouseover = function() { | |
var e = this; | |
if(e.className != 'initialized') { | |
var svgc = document.getElementById('svg-relations').childNodes[0] | |
, xml = new XMLSerializer().serializeToString(svgc) | |
, xmldata = btoa(xml); | |
e.href = 'data:application/octet-stream;base64,' + xmldata; | |
e.className = 'initialized'; | |
} | |
}; | |
</script> | |
<script type="text/javascript"> | |
document.onreadystatechange = function() { | |
if(document.readyState == 'complete') { | |
// init tabs | |
document.getElementById('link-overview').onclick = function() { displayTab(this, 'overview'); updateAbstractnessChart(); updateCustomChart(); updateMaintenablityChart(); }; | |
document.getElementById('link-score').onclick = function() { displayTab(this, 'score'); updateScoreChart(); }; | |
document.getElementById('link-relations').onclick = function() { displayTab(this, 'relations'); updateRelationsChart(); }; | |
document.getElementById('link-explore').onclick = function() { displayTab(this, 'explore'); updateTableView(); }; | |
document.getElementById('link-repartition').onclick = function() { displayTab(this, 'repartition'); }; | |
document.getElementById('link-help').onclick = function() { displayTab(this, 'help')}; | |
document.getElementById('menu').firstElementChild.onclick(); | |
// selects | |
document.getElementById('xAxis').value = xAxis; | |
document.getElementById('yAxis').value = yAxis; | |
document.getElementById('rAxis').value = rAxis; | |
} | |
} | |
// default selected elements | |
var xAxis = 'lcom'; | |
var yAxis = 'cyclomaticComplexity'; | |
var rAxis = 'loc'; | |
var data = [{"filename":".\/Bridge\/Swiftmailer\/DataCollector\/MessageDataCollector.php","name":".\/Bridge\/Swiftmailer\/DataCollector\/MessageDataCollector.php","loc":88,"logicalLoc":19,"volume":770.53,"length":142,"vocabulary":43,"effort":6780.66,"difficulty":"8.8","time":377,"bugs":0.26,"intelligentContent":87.56,"maintenabilityIndexWithoutComment":"51.76","maintenabilityIndex":"89.06","commentWeight":37.3,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":6,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":15.75,"rsysc":2.63,"dc":5.75,"rdc":0.96,"sc":10,"rsc":1.67},{"filename":".\/Bridge\/Propel1\/DependencyInjection\/Security\/UserProvider\/PropelFactory.php","name":".\/Bridge\/Propel1\/DependencyInjection\/Security\/UserProvider\/PropelFactory.php","loc":69,"logicalLoc":12,"volume":587.63,"length":107,"vocabulary":45,"effort":3842.78,"difficulty":"6.54","time":213,"bugs":0.2,"intelligentContent":89.86,"maintenabilityIndexWithoutComment":"56.93","maintenabilityIndex":"87.03","commentWeight":30.1,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":9.5,"rsysc":2.38,"dc":3.5,"rdc":0.88,"sc":6,"rsc":1.5},{"filename":".\/Bridge\/Propel1\/Form\/DataTransformer\/CollectionToArrayTransformer.php","name":".\/Bridge\/Propel1\/Form\/DataTransformer\/CollectionToArrayTransformer.php","loc":55,"logicalLoc":12,"volume":350.94,"length":73,"vocabulary":28,"effort":2947.87,"difficulty":"8.4","time":164,"bugs":0.12,"intelligentContent":41.78,"maintenabilityIndexWithoutComment":"57.96","maintenabilityIndex":"84.21","commentWeight":26.25,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":5,"myerInterval":"5:6","myerDistance":1,"operators":1,"lcom":2,"sysc":10,"rsysc":5,"dc":2,"rdc":1,"sc":8,"rsc":4},{"filename":".\/Bridge\/Propel1\/Form\/EventListener\/TranslationFormListener.php","name":".\/Bridge\/Propel1\/Form\/EventListener\/TranslationFormListener.php","loc":81,"logicalLoc":24,"volume":923.47,"length":162,"vocabulary":52,"effort":14467.72,"difficulty":"15.67","time":804,"bugs":0.31,"intelligentContent":58.94,"maintenabilityIndexWithoutComment":"48.19","maintenabilityIndex":"70.18","commentWeight":21.99,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":7,"myerInterval":"7:7","myerDistance":0,"operators":0,"lcom":2,"sysc":5,"rsysc":1.67,"dc":2,"rdc":0.67,"sc":3,"rsc":1},{"filename":".\/Bridge\/Propel1\/Form\/EventListener\/TranslationCollectionFormListener.php","name":".\/Bridge\/Propel1\/Form\/EventListener\/TranslationCollectionFormListener.php","loc":102,"logicalLoc":33,"volume":1340.64,"length":218,"vocabulary":71,"effort":27318.8,"difficulty":"20.38","time":1518,"bugs":0.45,"intelligentContent":65.79,"maintenabilityIndexWithoutComment":"43.23","maintenabilityIndex":"64.25","commentWeight":21.02,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":13,"myerInterval":"13:15","myerDistance":2,"operators":2,"lcom":2,"sysc":28,"rsysc":9.33,"dc":1,"rdc":0.33,"sc":27,"rsc":9},{"filename":".\/Bridge\/Propel1\/Form\/Type\/TranslationType.php","name":".\/Bridge\/Propel1\/Form\/Type\/TranslationType.php","loc":54,"logicalLoc":8,"volume":278.83,"length":58,"vocabulary":28,"effort":1596.92,"difficulty":"5.73","time":89,"bugs":0.09,"intelligentContent":48.68,"maintenabilityIndexWithoutComment":"63.04","maintenabilityIndex":"99.48","commentWeight":36.44,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":3,"sysc":7.17,"rsysc":2.39,"dc":2.17,"rdc":0.72,"sc":5,"rsc":1.67},{"filename":".\/Bridge\/Propel1\/Form\/Type\/ModelType.php","name":".\/Bridge\/Propel1\/Form\/Type\/ModelType.php","loc":128,"logicalLoc":18,"volume":826.57,"length":148,"vocabulary":48,"effort":11918.31,"difficulty":"14.42","time":662,"bugs":0.28,"intelligentContent":57.33,"maintenabilityIndexWithoutComment":"52.06","maintenabilityIndex":"92.98","commentWeight":40.92,"instability":1,"afferentCoupling":0,"efferentCoupling":7,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":6,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":5,"sysc":37.03,"rsysc":6.17,"dc":4.03,"rdc":0.67,"sc":33,"rsc":5.5},{"filename":".\/Bridge\/Propel1\/Form\/Type\/TranslationCollectionType.php","name":".\/Bridge\/Propel1\/Form\/Type\/TranslationCollectionType.php","loc":78,"logicalLoc":14,"volume":618.39,"length":117,"vocabulary":39,"effort":7036.88,"difficulty":"11.38","time":391,"bugs":0.21,"intelligentContent":54.34,"maintenabilityIndexWithoutComment":"54.92","maintenabilityIndex":"88.79","commentWeight":33.87,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":4,"myerInterval":"4:6","myerDistance":2,"operators":2,"lcom":4,"sysc":13,"rsysc":3.25,"dc":3,"rdc":0.75,"sc":10,"rsc":2.5},{"filename":".\/Bridge\/Propel1\/Form\/PropelExtension.php","name":".\/Bridge\/Propel1\/Form\/PropelExtension.php","loc":37,"logicalLoc":5,"volume":166.91,"length":38,"vocabulary":21,"effort":510.54,"difficulty":"3.06","time":28,"bugs":0.06,"intelligentContent":54.57,"maintenabilityIndexWithoutComment":"69.06","maintenabilityIndex":"98.27","commentWeight":29.21,"instability":1,"afferentCoupling":0,"efferentCoupling":5,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":26.67,"rsysc":13.34,"dc":0.67,"rdc":0.34,"sc":26,"rsc":13},{"filename":".\/Bridge\/Propel1\/Form\/PropelTypeGuesser.php","name":".\/Bridge\/Propel1\/Form\/PropelTypeGuesser.php","loc":184,"logicalLoc":34,"volume":4150.25,"length":622,"vocabulary":102,"effort":161454.79,"difficulty":"38.9","time":8970,"bugs":1.38,"intelligentContent":106.68,"maintenabilityIndexWithoutComment":"34.13","maintenabilityIndex":"58.01","commentWeight":23.88,"instability":1,"afferentCoupling":0,"efferentCoupling":6,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":6,"cyclomaticComplexity":53,"myerInterval":"53:55","myerDistance":2,"operators":2,"lcom":1,"sysc":95.93,"rsysc":15.99,"dc":10.93,"rdc":1.82,"sc":85,"rsc":14.17},{"filename":".\/Bridge\/Propel1\/Form\/ChoiceList\/ModelChoiceList.php","name":".\/Bridge\/Propel1\/Form\/ChoiceList\/ModelChoiceList.php","loc":508,"logicalLoc":95,"volume":5746.37,"length":812,"vocabulary":135,"effort":218362.22,"difficulty":"38","time":12131,"bugs":1.92,"intelligentContent":151.22,"maintenabilityIndexWithoutComment":"23.94","maintenabilityIndex":"61.69","commentWeight":37.75,"instability":1,"afferentCoupling":0,"efferentCoupling":7,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":16,"cyclomaticComplexity":49,"myerInterval":"49:53","myerDistance":4,"operators":4,"lcom":1,"sysc":164.42,"rsysc":10.28,"dc":15.42,"rdc":0.96,"sc":149,"rsc":9.31},{"filename":".\/Bridge\/Propel1\/DataCollector\/PropelDataCollector.php","name":".\/Bridge\/Propel1\/DataCollector\/PropelDataCollector.php","loc":147,"logicalLoc":30,"volume":1362.82,"length":228,"vocabulary":63,"effort":13083.07,"difficulty":"9.6","time":727,"bugs":0.45,"intelligentContent":141.96,"maintenabilityIndexWithoutComment":"45.56","maintenabilityIndex":"86.16","commentWeight":40.6,"instability":1,"afferentCoupling":0,"efferentCoupling":5,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":8,"cyclomaticComplexity":2,"myerInterval":"2:2","myerDistance":0,"operators":0,"lcom":2,"sysc":20.42,"rsysc":2.55,"dc":7.42,"rdc":0.93,"sc":13,"rsc":1.63},{"filename":".\/Bridge\/Propel1\/Logger\/PropelLogger.php","name":".\/Bridge\/Propel1\/Logger\/PropelLogger.php","loc":177,"logicalLoc":41,"volume":1734.9,"length":286,"vocabulary":67,"effort":44829.85,"difficulty":"25.84","time":2491,"bugs":0.58,"intelligentContent":67.14,"maintenabilityIndexWithoutComment":"40.39","maintenabilityIndex":"78.14","commentWeight":37.75,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":10,"cyclomaticComplexity":13,"myerInterval":"13:13","myerDistance":0,"operators":0,"lcom":1,"sysc":14.67,"rsysc":1.47,"dc":10.67,"rdc":1.07,"sc":4,"rsc":0.4},{"filename":".\/Bridge\/Propel1\/Security\/User\/PropelUserProvider.php","name":".\/Bridge\/Propel1\/Security\/User\/PropelUserProvider.php","loc":103,"logicalLoc":22,"volume":893.59,"length":160,"vocabulary":48,"effort":13150.32,"difficulty":"14.72","time":731,"bugs":0.3,"intelligentContent":60.72,"maintenabilityIndexWithoutComment":"49.65","maintenabilityIndex":"89.3","commentWeight":39.65,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":3,"myerInterval":"3:3","myerDistance":0,"operators":0,"lcom":1,"sysc":30.5,"rsysc":7.63,"dc":3.5,"rdc":0.88,"sc":27,"rsc":6.75},{"filename":".\/Bridge\/ProxyManager\/LazyProxy\/PhpDumper\/ProxyDumper.php","name":".\/Bridge\/ProxyManager\/LazyProxy\/PhpDumper\/ProxyDumper.php","loc":114,"logicalLoc":23,"volume":1075.05,"length":182,"vocabulary":60,"effort":15453.9,"difficulty":"14.38","time":859,"bugs":0.36,"intelligentContent":74.79,"maintenabilityIndexWithoutComment":"48.53","maintenabilityIndex":"84.67","commentWeight":36.14,"instability":1,"afferentCoupling":0,"efferentCoupling":7,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":5,"cyclomaticComplexity":4,"myerInterval":"4:6","myerDistance":2,"operators":2,"lcom":2,"sysc":98.5,"rsysc":19.7,"dc":2.5,"rdc":0.5,"sc":96,"rsc":19.2},{"filename":".\/Bridge\/ProxyManager\/LazyProxy\/Instantiator\/RuntimeInstantiator.php","name":".\/Bridge\/ProxyManager\/LazyProxy\/Instantiator\/RuntimeInstantiator.php","loc":58,"logicalLoc":16,"volume":526.35,"length":97,"vocabulary":43,"effort":2816.67,"difficulty":"5.35","time":156,"bugs":0.18,"intelligentContent":98.36,"maintenabilityIndexWithoutComment":"54.54","maintenabilityIndex":"86.93","commentWeight":32.39,"instability":1,"afferentCoupling":0,"efferentCoupling":6,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":17.5,"rsysc":5.83,"dc":3.5,"rdc":1.17,"sc":14,"rsc":4.67},{"filename":".\/Bridge\/Monolog\/Logger.php","name":".\/Bridge\/Monolog\/Logger.php","loc":94,"logicalLoc":13,"volume":682.23,"length":130,"vocabulary":38,"effort":6547.21,"difficulty":"9.6","time":364,"bugs":0.23,"intelligentContent":71.09,"maintenabilityIndexWithoutComment":"55.32","maintenabilityIndex":"93.23","commentWeight":37.91,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":7,"cyclomaticComplexity":4,"myerInterval":"4:4","myerDistance":0,"operators":0,"lcom":5,"sysc":22.33,"rsysc":3.19,"dc":6.33,"rdc":0.9,"sc":16,"rsc":2.29},{"filename":".\/Bridge\/Monolog\/Formatter\/ConsoleFormatter.php","name":".\/Bridge\/Monolog\/Formatter\/ConsoleFormatter.php","loc":55,"logicalLoc":14,"volume":574.88,"length":113,"vocabulary":34,"effort":6873.6,"difficulty":"11.96","time":382,"bugs":0.19,"intelligentContent":48.08,"maintenabilityIndexWithoutComment":"55.27","maintenabilityIndex":"88.38","commentWeight":33.11,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":3,"myerInterval":"3:3","myerDistance":0,"operators":0,"lcom":2,"sysc":10,"rsysc":5,"dc":2,"rdc":1,"sc":8,"rsc":4},{"filename":".\/Bridge\/Monolog\/Processor\/WebProcessor.php","name":".\/Bridge\/Monolog\/Processor\/WebProcessor.php","loc":36,"logicalLoc":5,"volume":202.12,"length":43,"vocabulary":26,"effort":721.85,"difficulty":"3.57","time":40,"bugs":0.07,"intelligentContent":56.59,"maintenabilityIndexWithoutComment":"68.47","maintenabilityIndex":"100.03","commentWeight":31.56,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":2.5,"rsysc":1.25,"dc":0.5,"rdc":0.25,"sc":2,"rsc":1},{"filename":".\/Bridge\/Monolog\/Handler\/ConsoleHandler.php","name":".\/Bridge\/Monolog\/Handler\/ConsoleHandler.php","loc":186,"logicalLoc":30,"volume":1829.05,"length":291,"vocabulary":78,"effort":39411.72,"difficulty":"21.55","time":2190,"bugs":0.61,"intelligentContent":84.88,"maintenabilityIndexWithoutComment":"43.86","maintenabilityIndex":"85.31","commentWeight":41.45,"instability":1,"afferentCoupling":0,"efferentCoupling":7,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":11,"cyclomaticComplexity":8,"myerInterval":"8:12","myerDistance":4,"operators":4,"lcom":3,"sysc":215.53,"rsysc":19.59,"dc":2.53,"rdc":0.23,"sc":213,"rsc":19.36},{"filename":".\/Bridge\/Monolog\/Handler\/ChromePhpHandler.php","name":".\/Bridge\/Monolog\/Handler\/ChromePhpHandler.php","loc":81,"logicalLoc":17,"volume":715.19,"length":131,"vocabulary":44,"effort":7782.9,"difficulty":"10.88","time":432,"bugs":0.24,"intelligentContent":65.72,"maintenabilityIndexWithoutComment":"52.5","maintenabilityIndex":"87.98","commentWeight":35.48,"instability":1,"afferentCoupling":0,"efferentCoupling":1,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":5,"myerInterval":"5:5","myerDistance":0,"operators":0,"lcom":2,"sysc":4.5,"rsysc":1.5,"dc":3.5,"rdc":1.17,"sc":1,"rsc":0.33},{"filename":".\/Bridge\/Monolog\/Handler\/DebugHandler.php","name":".\/Bridge\/Monolog\/Handler\/DebugHandler.php","loc":59,"logicalLoc":11,"volume":533.83,"length":101,"vocabulary":39,"effort":5154.18,"difficulty":"9.66","time":286,"bugs":0.18,"intelligentContent":55.29,"maintenabilityIndexWithoutComment":"57.78","maintenabilityIndex":"89.94","commentWeight":32.16,"instability":1,"afferentCoupling":0,"efferentCoupling":1,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":3,"myerInterval":"3:3","myerDistance":0,"operators":0,"lcom":2,"sysc":3,"rsysc":1.5,"dc":1,"rdc":0.5,"sc":2,"rsc":1},{"filename":".\/Bridge\/Monolog\/Handler\/FingersCrossed\/NotFoundActivationStrategy.php","name":".\/Bridge\/Monolog\/Handler\/FingersCrossed\/NotFoundActivationStrategy.php","loc":53,"logicalLoc":12,"volume":604.1,"length":110,"vocabulary":45,"effort":6809.9,"difficulty":"11.27","time":378,"bugs":0.2,"intelligentContent":53.59,"maintenabilityIndexWithoutComment":"56.31","maintenabilityIndex":"83","commentWeight":26.69,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":5,"myerInterval":"5:9","myerDistance":4,"operators":4,"lcom":1,"sysc":7.5,"rsysc":3.75,"dc":2.5,"rdc":1.25,"sc":5,"rsc":2.5},{"filename":".\/Bridge\/Monolog\/Handler\/FirePHPHandler.php","name":".\/Bridge\/Monolog\/Handler\/FirePHPHandler.php","loc":82,"logicalLoc":17,"volume":768.86,"length":140,"vocabulary":45,"effort":9701.2,"difficulty":"12.62","time":539,"bugs":0.26,"intelligentContent":60.94,"maintenabilityIndexWithoutComment":"52.15","maintenabilityIndex":"87.46","commentWeight":35.31,"instability":1,"afferentCoupling":0,"efferentCoupling":1,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":6,"myerInterval":"6:7","myerDistance":1,"operators":1,"lcom":2,"sysc":4.5,"rsysc":1.5,"dc":3.5,"rdc":1.17,"sc":1,"rsc":0.33},{"filename":".\/Bridge\/Monolog\/Handler\/SwiftMailerHandler.php","name":".\/Bridge\/Monolog\/Handler\/SwiftMailerHandler.php","loc":90,"logicalLoc":17,"volume":662.54,"length":118,"vocabulary":49,"effort":5441.07,"difficulty":"8.21","time":302,"bugs":0.22,"intelligentContent":80.67,"maintenabilityIndexWithoutComment":"52.87","maintenabilityIndex":"89.31","commentWeight":36.44,"instability":1,"afferentCoupling":0,"efferentCoupling":5,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":5,"cyclomaticComplexity":4,"myerInterval":"4:4","myerDistance":0,"operators":0,"lcom":1,"sysc":33.42,"rsysc":6.68,"dc":1.42,"rdc":0.28,"sc":32,"rsc":6.4},{"filename":".\/Bridge\/Twig\/TwigEngine.php","name":".\/Bridge\/Twig\/TwigEngine.php","loc":131,"logicalLoc":23,"volume":953.81,"length":169,"vocabulary":50,"effort":8384.67,"difficulty":"8.79","time":466,"bugs":0.32,"intelligentContent":108.5,"maintenabilityIndexWithoutComment":"48.63","maintenabilityIndex":"88.94","commentWeight":40.31,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":6,"cyclomaticComplexity":6,"myerInterval":"6:6","myerDistance":0,"operators":0,"lcom":1,"sysc":20.5,"rsysc":3.42,"dc":6.5,"rdc":1.08,"sc":14,"rsc":2.33},{"filename":".\/Bridge\/Twig\/Form\/TwigRendererInterface.php","name":".\/Bridge\/Twig\/Form\/TwigRendererInterface.php","loc":27,"logicalLoc":3,"volume":55.35,"length":16,"vocabulary":11,"effort":35.98,"difficulty":"0.65","time":2,"bugs":0.02,"intelligentContent":85.16,"maintenabilityIndexWithoutComment":"77.25","maintenabilityIndex":"116.24","commentWeight":38.99,"instability":1,"afferentCoupling":0,"efferentCoupling":1,"noc":1,"noca":1,"nocc":0,"noi":1,"nom":1,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":0,"sysc":1.5,"rsysc":1.5,"dc":0.5,"rdc":0.5,"sc":1,"rsc":1},{"filename":".\/Bridge\/Twig\/Form\/TwigRendererEngineInterface.php","name":".\/Bridge\/Twig\/Form\/TwigRendererEngineInterface.php","loc":27,"logicalLoc":3,"volume":55.35,"length":16,"vocabulary":11,"effort":35.98,"difficulty":"0.65","time":2,"bugs":0.02,"intelligentContent":85.16,"maintenabilityIndexWithoutComment":"77.25","maintenabilityIndex":"116.24","commentWeight":38.99,"instability":0.5,"afferentCoupling":1,"efferentCoupling":1,"noc":1,"noca":1,"nocc":0,"noi":1,"nom":1,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":0,"sysc":1.5,"rsysc":1.5,"dc":0.5,"rdc":0.5,"sc":1,"rsc":1},{"filename":".\/Bridge\/Twig\/Form\/TwigRendererEngine.php","name":".\/Bridge\/Twig\/Form\/TwigRendererEngine.php","loc":185,"logicalLoc":30,"volume":2194.28,"length":358,"vocabulary":70,"effort":65455.89,"difficulty":"29.83","time":3636,"bugs":0.73,"intelligentContent":73.56,"maintenabilityIndexWithoutComment":"42.23","maintenabilityIndex":"84.8","commentWeight":42.57,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":16,"myerInterval":"16:16","myerDistance":0,"operators":0,"lcom":1,"sysc":13.5,"rsysc":3.38,"dc":4.5,"rdc":1.13,"sc":9,"rsc":2.25},{"filename":".\/Bridge\/Twig\/Form\/TwigRenderer.php","name":".\/Bridge\/Twig\/Form\/TwigRenderer.php","loc":40,"logicalLoc":6,"volume":194.51,"length":43,"vocabulary":23,"effort":634.73,"difficulty":"3.26","time":35,"bugs":0.06,"intelligentContent":59.61,"maintenabilityIndexWithoutComment":"66.86","maintenabilityIndex":"101.83","commentWeight":34.97,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":1,"sysc":6.17,"rsysc":3.09,"dc":1.17,"rdc":0.59,"sc":5,"rsc":2.5},{"filename":".\/Bridge\/Twig\/Node\/TransDefaultDomainNode.php","name":".\/Bridge\/Twig\/Node\/TransDefaultDomainNode.php","loc":33,"logicalLoc":2,"volume":122.98,"length":28,"vocabulary":21,"effort":235.72,"difficulty":"1.92","time":13,"bugs":0.04,"intelligentContent":64.17,"maintenabilityIndexWithoutComment":"78.67","maintenabilityIndex":"116.33","commentWeight":37.66,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":6.5,"rsysc":3.25,"dc":1.5,"rdc":0.75,"sc":5,"rsc":2.5},{"filename":".\/Bridge\/Twig\/Node\/StopwatchNode.php","name":".\/Bridge\/Twig\/Node\/StopwatchNode.php","loc":44,"logicalLoc":3,"volume":381.47,"length":77,"vocabulary":31,"effort":1497.64,"difficulty":"3.93","time":83,"bugs":0.13,"intelligentContent":97.17,"maintenabilityIndexWithoutComment":"71.38","maintenabilityIndex":"98.45","commentWeight":27.07,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":11.75,"rsysc":5.88,"dc":1.75,"rdc":0.88,"sc":10,"rsc":5},{"filename":".\/Bridge\/Twig\/Node\/RenderBlockNode.php","name":".\/Bridge\/Twig\/Node\/RenderBlockNode.php","loc":42,"logicalLoc":9,"volume":328.09,"length":69,"vocabulary":27,"effort":2181.78,"difficulty":"6.65","time":121,"bugs":0.11,"intelligentContent":49.34,"maintenabilityIndexWithoutComment":"61.3","maintenabilityIndex":"94.16","commentWeight":32.86,"instability":1,"afferentCoupling":0,"efferentCoupling":1,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":1,"cyclomaticComplexity":2,"myerInterval":"2:2","myerDistance":0,"operators":0,"lcom":1,"sysc":1.5,"rsysc":1.5,"dc":0.5,"rdc":0.5,"sc":1,"rsc":1},{"filename":".\/Bridge\/Twig\/Node\/TransNode.php","name":".\/Bridge\/Twig\/Node\/TransNode.php","loc":113,"logicalLoc":29,"volume":1881.71,"length":304,"vocabulary":73,"effort":60249.46,"difficulty":"32.02","time":3347,"bugs":0.63,"intelligentContent":58.77,"maintenabilityIndexWithoutComment":"43.69","maintenabilityIndex":"64.86","commentWeight":21.17,"instability":1,"afferentCoupling":0,"efferentCoupling":7,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":11,"myerInterval":"11:12","myerDistance":1,"operators":1,"lcom":2,"sysc":70.2,"rsysc":23.4,"dc":2.2,"rdc":0.73,"sc":68,"rsc":22.67},{"filename":".\/Bridge\/Twig\/Node\/SearchAndRenderBlockNode.php","name":".\/Bridge\/Twig\/Node\/SearchAndRenderBlockNode.php","loc":106,"logicalLoc":29,"volume":1283.46,"length":222,"vocabulary":55,"effort":25637.93,"difficulty":"19.98","time":1424,"bugs":0.43,"intelligentContent":64.25,"maintenabilityIndexWithoutComment":"44.59","maintenabilityIndex":"76.4","commentWeight":31.81,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":1,"cyclomaticComplexity":13,"myerInterval":"13:14","myerDistance":1,"operators":1,"lcom":1,"sysc":9.25,"rsysc":9.25,"dc":0.25,"rdc":0.25,"sc":9,"rsc":9},{"filename":".\/Bridge\/Twig\/Node\/DumpNode.php","name":".\/Bridge\/Twig\/Node\/DumpNode.php","loc":84,"logicalLoc":14,"volume":972.15,"length":176,"vocabulary":46,"effort":13907.1,"difficulty":"14.31","time":773,"bugs":0.32,"intelligentContent":67.96,"maintenabilityIndexWithoutComment":"53.54","maintenabilityIndex":"76.54","commentWeight":23,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":4,"myerInterval":"4:4","myerDistance":0,"operators":0,"lcom":1,"sysc":6.83,"rsysc":3.42,"dc":1.83,"rdc":0.92,"sc":5,"rsc":2.5},{"filename":".\/Bridge\/Twig\/Node\/FormThemeNode.php","name":".\/Bridge\/Twig\/Node\/FormThemeNode.php","loc":39,"logicalLoc":3,"volume":240.37,"length":50,"vocabulary":28,"effort":741.13,"difficulty":"3.08","time":41,"bugs":0.08,"intelligentContent":77.96,"maintenabilityIndexWithoutComment":"72.79","maintenabilityIndex":"106.66","commentWeight":33.87,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":6.83,"rsysc":3.42,"dc":1.83,"rdc":0.92,"sc":5,"rsc":2.5},{"filename":".\/Bridge\/Twig\/Node\/FormEnctypeNode.php","name":".\/Bridge\/Twig\/Node\/FormEnctypeNode.php","loc":29,"logicalLoc":2,"volume":53.77,"length":15,"vocabulary":12,"effort":64.53,"difficulty":"1.2","time":4,"bugs":0.02,"intelligentContent":44.81,"maintenabilityIndexWithoutComment":"81.18","maintenabilityIndex":"119.17","commentWeight":37.99,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":1,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":1,"sysc":4.33,"rsysc":4.33,"dc":0.33,"rdc":0.33,"sc":4,"rsc":4},{"filename":".\/Bridge\/Twig\/Command\/LintCommand.php","name":".\/Bridge\/Twig\/Command\/LintCommand.php","loc":236,"logicalLoc":65,"volume":3983.15,"length":562,"vocabulary":136,"effort":178125.16,"difficulty":"44.72","time":9896,"bugs":1.33,"intelligentContent":89.07,"maintenabilityIndexWithoutComment":"32.42","maintenabilityIndex":"53.17","commentWeight":20.75,"instability":1,"afferentCoupling":0,"efferentCoupling":10,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":13,"cyclomaticComplexity":21,"myerInterval":"21:22","myerDistance":1,"operators":1,"lcom":4,"sysc":211.6,"rsysc":16.28,"dc":13.6,"rdc":1.05,"sc":198,"rsc":15.23},{"filename":".\/Bridge\/Twig\/NodeVisitor\/TranslationDefaultDomainNodeVisitor.php","name":".\/Bridge\/Twig\/NodeVisitor\/TranslationDefaultDomainNodeVisitor.php","loc":126,"logicalLoc":26,"volume":1789.58,"length":291,"vocabulary":71,"effort":40025.79,"difficulty":"22.37","time":2224,"bugs":0.6,"intelligentContent":80.01,"maintenabilityIndexWithoutComment":"43.8","maintenabilityIndex":"75.09","commentWeight":31.29,"instability":1,"afferentCoupling":0,"efferentCoupling":8,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":5,"cyclomaticComplexity":19,"myerInterval":"19:23","myerDistance":4,"operators":4,"lcom":2,"sysc":95.08,"rsysc":19.02,"dc":6.08,"rdc":1.22,"sc":89,"rsc":17.8},{"filename":".\/Bridge\/Twig\/NodeVisitor\/TranslationNodeVisitor.php","name":".\/Bridge\/Twig\/NodeVisitor\/TranslationNodeVisitor.php","loc":137,"logicalLoc":24,"volume":1376.56,"length":236,"vocabulary":57,"effort":29355.99,"difficulty":"21.33","time":1631,"bugs":0.46,"intelligentContent":64.55,"maintenabilityIndexWithoutComment":"46.3","maintenabilityIndex":"79","commentWeight":32.7,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":8,"cyclomaticComplexity":12,"myerInterval":"12:16","myerDistance":4,"operators":4,"lcom":3,"sysc":34.75,"rsysc":4.34,"dc":4.75,"rdc":0.59,"sc":30,"rsc":3.75},{"filename":".\/Bridge\/Twig\/NodeVisitor\/Scope.php","name":".\/Bridge\/Twig\/NodeVisitor\/Scope.php","loc":125,"logicalLoc":17,"volume":687.65,"length":132,"vocabulary":37,"effort":7957.07,"difficulty":"11.57","time":442,"bugs":0.23,"intelligentContent":59.43,"maintenabilityIndexWithoutComment":"52.62","maintenabilityIndex":"94.41","commentWeight":41.79,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":6,"cyclomaticComplexity":5,"myerInterval":"5:5","myerDistance":0,"operators":0,"lcom":2,"sysc":26.58,"rsysc":4.43,"dc":11.58,"rdc":1.93,"sc":15,"rsc":2.5},{"filename":".\/Bridge\/Twig\/TokenParser\/TransChoiceTokenParser.php","name":".\/Bridge\/Twig\/TokenParser\/TransChoiceTokenParser.php","loc":89,"logicalLoc":21,"volume":977.37,"length":175,"vocabulary":48,"effort":11277.33,"difficulty":"11.54","time":627,"bugs":0.33,"intelligentContent":84.71,"maintenabilityIndexWithoutComment":"49.55","maintenabilityIndex":"84.98","commentWeight":35.43,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":5,"myerInterval":"5:6","myerDistance":1,"operators":1,"lcom":2,"sysc":19.4,"rsysc":6.47,"dc":3.4,"rdc":1.13,"sc":16,"rsc":5.33},{"filename":".\/Bridge\/Twig\/TokenParser\/TransDefaultDomainTokenParser.php","name":".\/Bridge\/Twig\/TokenParser\/TransDefaultDomainTokenParser.php","loc":48,"logicalLoc":6,"volume":242.5,"length":51,"vocabulary":27,"effort":1108.57,"difficulty":"4.57","time":62,"bugs":0.08,"intelligentContent":53.05,"maintenabilityIndexWithoutComment":"66.19","maintenabilityIndex":"106.82","commentWeight":40.63,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":1,"sysc":5.67,"rsysc":2.84,"dc":1.67,"rdc":0.84,"sc":4,"rsc":2},{"filename":".\/Bridge\/Twig\/TokenParser\/StopwatchTokenParser.php","name":".\/Bridge\/Twig\/TokenParser\/StopwatchTokenParser.php","loc":60,"logicalLoc":14,"volume":605.4,"length":113,"vocabulary":41,"effort":4237.82,"difficulty":"7","time":235,"bugs":0.2,"intelligentContent":86.49,"maintenabilityIndexWithoutComment":"55.38","maintenabilityIndex":"82.18","commentWeight":26.8,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":22,"rsysc":5.5,"dc":3,"rdc":0.75,"sc":19,"rsc":4.75},{"filename":".\/Bridge\/Twig\/TokenParser\/FormThemeTokenParser.php","name":".\/Bridge\/Twig\/TokenParser\/FormThemeTokenParser.php","loc":61,"logicalLoc":13,"volume":657.86,"length":122,"vocabulary":42,"effort":7936.8,"difficulty":"12.06","time":441,"bugs":0.22,"intelligentContent":54.53,"maintenabilityIndexWithoutComment":"55.56","maintenabilityIndex":"92.84","commentWeight":37.28,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":3,"myerInterval":"3:3","myerDistance":0,"operators":0,"lcom":1,"sysc":10.5,"rsysc":5.25,"dc":1.5,"rdc":0.75,"sc":9,"rsc":4.5},{"filename":".\/Bridge\/Twig\/TokenParser\/DumpTokenParser.php","name":".\/Bridge\/Twig\/TokenParser\/DumpTokenParser.php","loc":51,"logicalLoc":7,"volume":360,"length":72,"vocabulary":32,"effort":2580,"difficulty":"7.17","time":143,"bugs":0.12,"intelligentContent":50.23,"maintenabilityIndexWithoutComment":"63.53","maintenabilityIndex":"104.07","commentWeight":40.54,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":1,"sysc":5.67,"rsysc":2.84,"dc":1.67,"rdc":0.84,"sc":4,"rsc":2},{"filename":".\/Bridge\/Twig\/TokenParser\/TransTokenParser.php","name":".\/Bridge\/Twig\/TokenParser\/TransTokenParser.php","loc":89,"logicalLoc":21,"volume":1078.02,"length":192,"vocabulary":49,"effort":15064.7,"difficulty":"13.97","time":837,"bugs":0.36,"intelligentContent":77.14,"maintenabilityIndexWithoutComment":"48.98","maintenabilityIndex":"85","commentWeight":36.02,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":7,"myerInterval":"7:8","myerDistance":1,"operators":1,"lcom":2,"sysc":19.4,"rsysc":6.47,"dc":3.4,"rdc":1.13,"sc":16,"rsc":5.33},{"filename":".\/Bridge\/Twig\/Translation\/TwigExtractor.php","name":".\/Bridge\/Twig\/Translation\/TwigExtractor.php","loc":92,"logicalLoc":19,"volume":942.99,"length":159,"vocabulary":61,"effort":9060.07,"difficulty":"9.61","time":503,"bugs":0.31,"intelligentContent":98.15,"maintenabilityIndexWithoutComment":"50.87","maintenabilityIndex":"89.08","commentWeight":38.21,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":3,"myerInterval":"3:3","myerDistance":0,"operators":0,"lcom":1,"sysc":12,"rsysc":3,"dc":3,"rdc":0.75,"sc":9,"rsc":2.25},{"filename":".\/Bridge\/Twig\/Extension\/HttpKernelExtension.php","name":".\/Bridge\/Twig\/Extension\/HttpKernelExtension.php","loc":88,"logicalLoc":12,"volume":602.54,"length":114,"vocabulary":39,"effort":6688.15,"difficulty":"11.1","time":372,"bugs":0.2,"intelligentContent":54.28,"maintenabilityIndexWithoutComment":"56.86","maintenabilityIndex":"97.07","commentWeight":40.21,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":6,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":4,"sysc":19.08,"rsysc":3.18,"dc":3.08,"rdc":0.51,"sc":16,"rsc":2.67},{"filename":".\/Bridge\/Twig\/Extension\/TranslationExtension.php","name":".\/Bridge\/Twig\/Extension\/TranslationExtension.php","loc":118,"logicalLoc":22,"volume":1033.11,"length":184,"vocabulary":49,"effort":12094.91,"difficulty":"11.71","time":672,"bugs":0.34,"intelligentContent":88.24,"maintenabilityIndexWithoutComment":"49.21","maintenabilityIndex":"82.96","commentWeight":33.75,"instability":1,"afferentCoupling":0,"efferentCoupling":8,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":9,"cyclomaticComplexity":3,"myerInterval":"3:3","myerDistance":0,"operators":0,"lcom":4,"sysc":136.26,"rsysc":15.14,"dc":5.26,"rdc":0.58,"sc":131,"rsc":14.56},{"filename":".\/Bridge\/Twig\/Extension\/ExpressionExtension.php","name":".\/Bridge\/Twig\/Extension\/ExpressionExtension.php","loc":47,"logicalLoc":5,"volume":127.44,"length":30,"vocabulary":19,"effort":238.95,"difficulty":"1.88","time":13,"bugs":0.04,"intelligentContent":67.97,"maintenabilityIndexWithoutComment":"69.88","maintenabilityIndex":"107.3","commentWeight":37.42,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":3,"sysc":7.33,"rsysc":2.44,"dc":2.33,"rdc":0.78,"sc":5,"rsc":1.67},{"filename":".\/Bridge\/Twig\/Extension\/CodeExtension.php","name":".\/Bridge\/Twig\/Extension\/CodeExtension.php","loc":238,"logicalLoc":60,"volume":4297.69,"length":618,"vocabulary":124,"effort":235490.97,"difficulty":"54.79","time":13083,"bugs":1.43,"intelligentContent":78.43,"maintenabilityIndexWithoutComment":"32.68","maintenabilityIndex":"67.77","commentWeight":35.09,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":13,"cyclomaticComplexity":23,"myerInterval":"23:28","myerDistance":5,"operators":5,"lcom":8,"sysc":36.83,"rsysc":2.83,"dc":23.83,"rdc":1.83,"sc":13,"rsc":1},{"filename":".\/Bridge\/Twig\/Extension\/FormExtension.php","name":".\/Bridge\/Twig\/Extension\/FormExtension.php","loc":160,"logicalLoc":16,"volume":948.17,"length":168,"vocabulary":50,"effort":9106.82,"difficulty":"9.6","time":506,"bugs":0.32,"intelligentContent":98.72,"maintenabilityIndexWithoutComment":"52.75","maintenabilityIndex":"95.29","commentWeight":42.54,"instability":1,"afferentCoupling":0,"efferentCoupling":7,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":10,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":7,"sysc":89.62,"rsysc":8.96,"dc":8.62,"rdc":0.86,"sc":81,"rsc":8.1},{"filename":".\/Bridge\/Twig\/Extension\/StopwatchExtension.php","name":".\/Bridge\/Twig\/Extension\/StopwatchExtension.php","loc":58,"logicalLoc":10,"volume":312.48,"length":65,"vocabulary":28,"effort":1747.04,"difficulty":"5.59","time":97,"bugs":0.1,"intelligentContent":55.89,"maintenabilityIndexWithoutComment":"60.58","maintenabilityIndex":"90.57","commentWeight":29.99,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":1,"myerInterval":"1:2","myerDistance":1,"operators":1,"lcom":2,"sysc":8.67,"rsysc":2.17,"dc":2.67,"rdc":0.67,"sc":6,"rsc":1.5},{"filename":".\/Bridge\/Twig\/Extension\/RoutingExtension.php","name":".\/Bridge\/Twig\/Extension\/RoutingExtension.php","loc":100,"logicalLoc":11,"volume":867.2,"length":150,"vocabulary":55,"effort":12884.17,"difficulty":"14.86","time":716,"bugs":0.29,"intelligentContent":58.37,"maintenabilityIndexWithoutComment":"56.04","maintenabilityIndex":"97.21","commentWeight":41.17,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":6,"cyclomaticComplexity":5,"myerInterval":"5:9","myerDistance":4,"operators":4,"lcom":4,"sysc":15.17,"rsysc":2.53,"dc":4.17,"rdc":0.7,"sc":11,"rsc":1.83},{"filename":".\/Bridge\/Twig\/Extension\/YamlExtension.php","name":".\/Bridge\/Twig\/Extension\/YamlExtension.php","loc":67,"logicalLoc":10,"volume":509.05,"length":97,"vocabulary":38,"effort":4897.4,"difficulty":"9.62","time":272,"bugs":0.17,"intelligentContent":52.91,"maintenabilityIndexWithoutComment":"58.7","maintenabilityIndex":"91.22","commentWeight":32.52,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":4,"myerInterval":"4:5","myerDistance":1,"operators":1,"lcom":3,"sysc":14.33,"rsysc":3.58,"dc":9.33,"rdc":2.33,"sc":5,"rsc":1.25},{"filename":".\/Bridge\/Twig\/Extension\/SecurityExtension.php","name":".\/Bridge\/Twig\/Extension\/SecurityExtension.php","loc":63,"logicalLoc":10,"volume":407,"length":80,"vocabulary":34,"effort":2743.46,"difficulty":"6.74","time":152,"bugs":0.14,"intelligentContent":60.38,"maintenabilityIndexWithoutComment":"59.64","maintenabilityIndex":"92.99","commentWeight":33.35,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":2,"myerInterval":"2:2","myerDistance":0,"operators":0,"lcom":3,"sysc":17.42,"rsysc":4.36,"dc":3.42,"rdc":0.86,"sc":14,"rsc":3.5},{"filename":".\/Bridge\/Twig\/Extension\/DumpExtension.php","name":".\/Bridge\/Twig\/Extension\/DumpExtension.php","loc":79,"logicalLoc":20,"volume":813.03,"length":140,"vocabulary":56,"effort":9423.75,"difficulty":"11.59","time":524,"bugs":0.27,"intelligentContent":70.14,"maintenabilityIndexWithoutComment":"50.57","maintenabilityIndex":"71.27","commentWeight":20.7,"instability":1,"afferentCoupling":0,"efferentCoupling":5,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":5,"cyclomaticComplexity":5,"myerInterval":"5:5","myerDistance":0,"operators":0,"lcom":4,"sysc":36.28,"rsysc":7.26,"dc":2.28,"rdc":0.46,"sc":34,"rsc":6.8},{"filename":".\/Bridge\/Doctrine\/DependencyInjection\/CompilerPass\/DoctrineValidationPass.php","name":".\/Bridge\/Doctrine\/DependencyInjection\/CompilerPass\/DoctrineValidationPass.php","loc":71,"logicalLoc":15,"volume":699.88,"length":126,"vocabulary":47,"effort":8019.44,"difficulty":"11.46","time":446,"bugs":0.23,"intelligentContent":61.08,"maintenabilityIndexWithoutComment":"54.02","maintenabilityIndex":"90.65","commentWeight":36.63,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":3,"myerInterval":"3:3","myerDistance":0,"operators":0,"lcom":1,"sysc":23.33,"rsysc":7.78,"dc":1.33,"rdc":0.44,"sc":22,"rsc":7.33},{"filename":".\/Bridge\/Doctrine\/DependencyInjection\/CompilerPass\/RegisterEventListenersAndSubscribersPass.php","name":".\/Bridge\/Doctrine\/DependencyInjection\/CompilerPass\/RegisterEventListenersAndSubscribersPass.php","loc":157,"logicalLoc":45,"volume":2968.93,"length":462,"vocabulary":86,"effort":95093.22,"difficulty":"32.03","time":5283,"bugs":0.99,"intelligentContent":92.69,"maintenabilityIndexWithoutComment":"36.26","maintenabilityIndex":"61.3","commentWeight":25.04,"instability":1,"afferentCoupling":0,"efferentCoupling":4,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":5,"cyclomaticComplexity":25,"myerInterval":"25:29","myerDistance":4,"operators":4,"lcom":2,"sysc":42.9,"rsysc":8.58,"dc":4.9,"rdc":0.98,"sc":38,"rsc":7.6},{"filename":".\/Bridge\/Doctrine\/DependencyInjection\/CompilerPass\/RegisterMappingsPass.php","name":".\/Bridge\/Doctrine\/DependencyInjection\/CompilerPass\/RegisterMappingsPass.php","loc":252,"logicalLoc":39,"volume":1747.03,"length":288,"vocabulary":67,"effort":26971.75,"difficulty":"15.44","time":1498,"bugs":0.58,"intelligentContent":113.16,"maintenabilityIndexWithoutComment":"41.11","maintenabilityIndex":"87.09","commentWeight":45.98,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":1,"nocc":0,"noi":0,"nom":7,"cyclomaticComplexity":11,"myerInterval":"11:14","myerDistance":3,"operators":3,"lcom":1,"sysc":29,"rsysc":4.14,"dc":4,"rdc":0.57,"sc":25,"rsc":3.57},{"filename":".\/Bridge\/Doctrine\/DependencyInjection\/Security\/UserProvider\/EntityFactory.php","name":".\/Bridge\/Doctrine\/DependencyInjection\/Security\/UserProvider\/EntityFactory.php","loc":61,"logicalLoc":12,"volume":648.04,"length":118,"vocabulary":45,"effort":4536.27,"difficulty":"7","time":252,"bugs":0.22,"intelligentContent":92.58,"maintenabilityIndexWithoutComment":"56.64","maintenabilityIndex":"81.69","commentWeight":25.05,"instability":1,"afferentCoupling":0,"efferentCoupling":3,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":4,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":2,"sysc":9.5,"rsysc":2.38,"dc":3.5,"rdc":0.88,"sc":6,"rsc":1.5},{"filename":".\/Bridge\/Doctrine\/DependencyInjection\/AbstractDoctrineExtension.php","name":".\/Bridge\/Doctrine\/DependencyInjection\/AbstractDoctrineExtension.php","loc":489,"logicalLoc":123,"volume":9767.54,"length":1353,"vocabulary":149,"effort":623271.14,"difficulty":"63.81","time":34626,"bugs":3.26,"intelligentContent":153.07,"maintenabilityIndexWithoutComment":"17.87","maintenabilityIndex":"55.12","commentWeight":37.25,"instability":1,"afferentCoupling":0,"efferentCoupling":8,"noc":1,"noca":1,"nocc":0,"noi":0,"nom":11,"cyclomaticComplexity":64,"myerInterval":"64:73","myerDistance":9,"operators":9,"lcom":2,"sysc":414.42,"rsysc":37.67,"dc":6.42,"rdc":0.58,"sc":408,"rsc":37.09},{"filename":".\/Bridge\/Doctrine\/ManagerRegistry.php","name":".\/Bridge\/Doctrine\/ManagerRegistry.php","loc":53,"logicalLoc":8,"volume":263.22,"length":56,"vocabulary":26,"effort":1222.11,"difficulty":"4.64","time":68,"bugs":0.09,"intelligentContent":56.69,"maintenabilityIndexWithoutComment":"63.22","maintenabilityIndex":"102.47","commentWeight":39.25,"instability":1,"afferentCoupling":0,"efferentCoupling":1,"noc":1,"noca":1,"nocc":0,"noi":0,"nom":3,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":1,"sysc":4.5,"rsysc":1.5,"dc":3.5,"rdc":1.17,"sc":1,"rsc":0.33},{"filename":".\/Bridge\/Doctrine\/ExpressionLanguage\/DoctrineParserCache.php","name":".\/Bridge\/Doctrine\/ExpressionLanguage\/DoctrineParserCache.php","loc":52,"logicalLoc":9,"volume":304.31,"length":64,"vocabulary":27,"effort":1912.82,"difficulty":"6.29","time":106,"bugs":0.1,"intelligentContent":48.41,"maintenabilityIndexWithoutComment":"61.66","maintenabilityIndex":"96.63","commentWeight":34.97,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":3,"cyclomaticComplexity":1,"myerInterval":"1:1","myerDistance":0,"operators":0,"lcom":1,"sysc":5.5,"rsysc":1.83,"dc":3.5,"rdc":1.17,"sc":2,"rsc":0.67},{"filename":".\/Bridge\/Doctrine\/Form\/DataTransformer\/CollectionToArrayTransformer.php","name":".\/Bridge\/Doctrine\/Form\/DataTransformer\/CollectionToArrayTransformer.php","loc":69,"logicalLoc":12,"volume":395,"length":79,"vocabulary":32,"effort":3786.85,"difficulty":"9.59","time":210,"bugs":0.13,"intelligentContent":41.2,"maintenabilityIndexWithoutComment":"57.6","maintenabilityIndex":"95.97","commentWeight":38.37,"instability":1,"afferentCoupling":0,"efferentCoupling":2,"noc":1,"noca":0,"nocc":1,"noi":0,"nom":2,"cyclomaticComplexity":5,"myerInterval":"5:6","myerDistance":1,"operators":1,"lcom":2,"sysc":7.33,"rsysc":3.67,"dc":2.33,"rdc":1.17,"sc":5,"rsc":2.5},{"filename":".\/Bridge\/Doctrine\/Form\/EventListener\/MergeDoctrineCollectionListener.php","name":".\/Bridge\/Doctrine\/Form\/Event |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment