From 59ff86d40b306609ee03a75bfd47dc52f5ff1a31 Mon Sep 17 00:00:00 2001 From: Robert Monfera Date: Wed, 22 Feb 2017 14:01:12 +0100 Subject: [PATCH 1/7] parcoords: include dependencies: regl, bumped ndarray, glslify and its transform --- package.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 6af853857bd..8aa4d251892 100644 --- a/package.json +++ b/package.json @@ -48,6 +48,9 @@ "version": "npm run build && git add -A dist src build", "postversion": "node -e \"console.log('Version bumped and committed. If ok, run: git push && git push --tags')\"" }, + "browserify": { + "transform": ["glslify"] + }, "dependencies": { "3d-view": "^2.0.0", "alpha-shape": "^1.0.0", @@ -79,10 +82,11 @@ "mapbox-gl": "^0.22.0", "mouse-change": "^1.4.0", "mouse-wheel": "^1.0.2", - "ndarray": "^1.0.16", + "ndarray": "^1.0.18", "ndarray-fill": "^1.0.1", "ndarray-homography": "^1.0.0", "ndarray-ops": "^1.2.2", + "regl": "^1.3.0", "right-now": "^1.0.0", "robust-orientation": "^1.1.3", "sane-topojson": "^2.0.0", @@ -103,6 +107,7 @@ "fs-extra": "^2.0.0", "fuse.js": "^2.6.1", "glob": "^7.0.0", + "glslify": "^4.0.0", "gzip-size": "^3.0.0", "image-size": "^0.5.1", "jasmine-core": "^2.4.1", From e2621d0c6ea632f323680cb45a5065b403f92f85 Mon Sep 17 00:00:00 2001 From: Robert Monfera Date: Wed, 22 Feb 2017 14:02:47 +0100 Subject: [PATCH 2/7] minor text/comment changes --- src/traces/pie/attributes.js | 2 +- src/traces/scatter/colorbar.js | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/traces/pie/attributes.js b/src/traces/pie/attributes.js index a5eb8aefc6e..ed2a8641fe3 100644 --- a/src/traces/pie/attributes.js +++ b/src/traces/pie/attributes.js @@ -178,7 +178,7 @@ module.exports = { role: 'style', dflt: true, description: [ - 'Determines whether or not the sectors of reordered', + 'Determines whether or not the sectors are reordered', 'from largest to smallest.' ].join(' ') }, diff --git a/src/traces/scatter/colorbar.js b/src/traces/scatter/colorbar.js index 5a6ce7b52f1..9fbaf5823e8 100644 --- a/src/traces/scatter/colorbar.js +++ b/src/traces/scatter/colorbar.js @@ -24,7 +24,6 @@ module.exports = function colorbar(gd, cd) { gd._fullLayout._infolayer.selectAll('.' + cbId).remove(); - // TODO unify scatter and heatmap colorbar // TODO make Colorbar.draw support multiple colorbar per trace if((marker === undefined) || !marker.showscale) { From 32ed2d218bfb78caa260e102ef5277a1075bc4e5 Mon Sep 17 00:00:00 2001 From: Robert Monfera Date: Wed, 22 Feb 2017 14:05:32 +0100 Subject: [PATCH 3/7] parcoords: add squashed implementation --- lib/parcoords.js | 11 + src/traces/parcoords/attributes.js | 158 ++++ src/traces/parcoords/base_plot.js | 75 ++ src/traces/parcoords/calc.js | 29 + src/traces/parcoords/colorbar.js | 52 ++ src/traces/parcoords/constants.js | 35 + src/traces/parcoords/defaults.js | 100 +++ src/traces/parcoords/index.js | 31 + src/traces/parcoords/lines.js | 405 +++++++++ src/traces/parcoords/parcoords.js | 769 ++++++++++++++++++ src/traces/parcoords/plot.js | 118 +++ src/traces/parcoords/shaders/fragment.glsl | 7 + src/traces/parcoords/shaders/pick_vertex.glsl | 82 ++ src/traces/parcoords/shaders/vertex.glsl | 83 ++ 14 files changed, 1955 insertions(+) create mode 100644 lib/parcoords.js create mode 100644 src/traces/parcoords/attributes.js create mode 100644 src/traces/parcoords/base_plot.js create mode 100644 src/traces/parcoords/calc.js create mode 100644 src/traces/parcoords/colorbar.js create mode 100644 src/traces/parcoords/constants.js create mode 100644 src/traces/parcoords/defaults.js create mode 100644 src/traces/parcoords/index.js create mode 100644 src/traces/parcoords/lines.js create mode 100644 src/traces/parcoords/parcoords.js create mode 100644 src/traces/parcoords/plot.js create mode 100644 src/traces/parcoords/shaders/fragment.glsl create mode 100644 src/traces/parcoords/shaders/pick_vertex.glsl create mode 100644 src/traces/parcoords/shaders/vertex.glsl diff --git a/lib/parcoords.js b/lib/parcoords.js new file mode 100644 index 00000000000..80e15d4c30f --- /dev/null +++ b/lib/parcoords.js @@ -0,0 +1,11 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +module.exports = require('../src/traces/parcoords'); diff --git a/src/traces/parcoords/attributes.js b/src/traces/parcoords/attributes.js new file mode 100644 index 00000000000..e906f058bd1 --- /dev/null +++ b/src/traces/parcoords/attributes.js @@ -0,0 +1,158 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var colorAttributes = require('../../components/colorscale/color_attributes'); +var colorbarAttrs = require('../../components/colorbar/attributes'); +var colorscales = require('../../components/colorscale/scales'); +var axesAttrs = require('../../plots/cartesian/layout_attributes'); + +var extendDeep = require('../../lib/extend').extendDeep; +var extendFlat = require('../../lib/extend').extendFlat; + +module.exports = { + + domain: { + x: { + valType: 'info_array', + role: 'info', + items: [ + {valType: 'number', min: 0, max: 1}, + {valType: 'number', min: 0, max: 1} + ], + dflt: [0, 1], + description: [ + 'Sets the horizontal domain of this `parcoords` trace', + '(in plot fraction).' + ].join(' ') + }, + y: { + valType: 'info_array', + role: 'info', + items: [ + {valType: 'number', min: 0, max: 1}, + {valType: 'number', min: 0, max: 1} + ], + dflt: [0, 1], + description: [ + 'Sets the vertical domain of this `parcoords` trace', + '(in plot fraction).' + ].join(' ') + } + }, + + dimensions: { + _isLinkedToArray: 'dimension', + label: { + valType: 'string', + role: 'info', + description: 'The shown name of the dimension.' + }, + tickvals: axesAttrs.tickvals, + ticktext: axesAttrs.ticktext, + tickformat: { + valType: 'string', + dflt: '3s', + role: 'style', + description: [ + 'Sets the tick label formatting rule using d3 formatting mini-language', + 'which is similar to those of Python. See', + 'https://github.com/d3/d3-format/blob/master/README.md#locale_format' + ].join(' ') + }, + visible: { + valType: 'boolean', + dflt: true, + role: 'info', + description: 'Shows the dimension when set to `true` (the default). Hides the dimension for `false`.' + }, + range: { + valType: 'info_array', + role: 'info', + items: [ + {valType: 'number'}, + {valType: 'number'} + ], + description: [ + 'The domain range that represents the full, shown axis extent. Defaults to the `values` extent.', + 'Must be an array of `[fromValue, toValue]` with finite numbers as elements.' + ].join(' ') + }, + constraintrange: { + valType: 'info_array', + role: 'info', + items: [ + {valType: 'number'}, + {valType: 'number'} + ], + description: [ + 'The domain range to which the filter on the dimension is constrained. Must be an array', + 'of `[fromValue, toValue]` with finite numbers as elements.' + ].join(' ') + }, + values: { + valType: 'data_array', + role: 'info', + dflt: [], + description: [ + 'Dimension values. `values[n]` represents the value of the `n`th point in the dataset,', + 'therefore the `values` vector for all dimensions must be the same (longer vectors', + 'will be truncated). Each value must be a finite number.' + ].join(' ') + }, + description: 'The dimensions (variables) of the parallel coordinates chart. 2..60 dimensions are supported.' + }, + + line: extendFlat({}, + + // the default autocolorscale isn't quite usable for parcoords due to context ambiguity around 0 (grey, off-white) + // autocolorscale therefore defaults to false too, to avoid being overridden by the blue-white-red autocolor palette + extendDeep( + {}, + colorAttributes('line'), + { + colorscale: extendDeep( + {}, + colorAttributes('line').colorscale, + {dflt: colorscales.Viridis} + ), + autocolorscale: extendDeep( + {}, + colorAttributes('line').autocolorscale, + { + dflt: false, + description: [ + 'Has an effect only if line.color` is set to a numerical array.', + 'Determines whether the colorscale is a default palette (`autocolorscale: true`)', + 'or the palette determined by `line.colorscale`.', + 'In case `colorscale` is unspecified or `autocolorscale` is true, the default ', + 'palette will be chosen according to whether numbers in the `color` array are', + 'all positive, all negative or mixed.', + 'The default value is false, so that `parcoords` colorscale can default to `Viridis`.' + ].join(' ') + } + ) + + } + ), + + { + showscale: { + valType: 'boolean', + role: 'info', + dflt: false, + description: [ + 'Has an effect only if `line.color` is set to a numerical array.', + 'Determines whether or not a colorbar is displayed.' + ].join(' ') + }, + colorbar: colorbarAttrs + } + ) +}; diff --git a/src/traces/parcoords/base_plot.js b/src/traces/parcoords/base_plot.js new file mode 100644 index 00000000000..1005cb44b09 --- /dev/null +++ b/src/traces/parcoords/base_plot.js @@ -0,0 +1,75 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var d3 = require('d3'); +var Plots = require('../../plots/plots'); +var parcoordsPlot = require('./plot'); +var xmlnsNamespaces = require('../../constants/xmlns_namespaces'); +var c = require('./constants'); + +exports.name = 'parcoords'; + +exports.attr = 'type'; + +exports.plot = function(gd) { + var calcData = Plots.getSubplotCalcData(gd.calcdata, 'parcoords', 'parcoords'); + if(calcData.length) parcoordsPlot(gd, calcData); +}; + +exports.clean = function(newFullData, newFullLayout, oldFullData, oldFullLayout) { + var hadParcoords = (oldFullLayout._has && oldFullLayout._has('parcoords')); + var hasParcoords = (newFullLayout._has && newFullLayout._has('parcoords')); + + if(hadParcoords && !hasParcoords) { + oldFullLayout._paperdiv.selectAll('.parcoords-line-layers').remove(); + oldFullLayout._paperdiv.selectAll('.parcoords-line-layers').remove(); + oldFullLayout._paperdiv.selectAll('.parcoords').remove(); + oldFullLayout._paperdiv.selectAll('.parcoords').remove(); + oldFullLayout._glimages.selectAll('*').remove(); + } +}; + +exports.toSVG = function(gd) { + + var imageRoot = gd._fullLayout._glimages; + var root = d3.selectAll('.svg-container'); + var canvases = root.filter(function(d, i) {return i === root.size() - 1;}) + .selectAll('.parcoords-lines.context, .parcoords-lines.focus'); + + function canvasToImage(d) { + var canvas = this; + var imageData = canvas.toDataURL('image/png'); + var image = imageRoot.append('svg:image'); + var size = gd._fullLayout._size; + var domain = gd._fullData[d.model.key].domain; + + image.attr({ + xmlns: xmlnsNamespaces.svg, + 'xlink:href': imageData, + x: size.l + size.w * domain.x[0] - c.overdrag, + y: size.t + size.h * (1 - domain.y[1]), + width: (domain.x[1] - domain.x[0]) * size.w + 2 * c.overdrag, + height: (domain.y[1] - domain.y[0]) * size.h, + preserveAspectRatio: 'none' + }); + } + + imageRoot.selectAll('*').remove(); + canvases.each(canvasToImage); + + // Chrome / Safari bug workaround - browser apparently loses connection to the defined pattern + // Without the workaround, these browsers 'lose' the filter brush styling (color etc.) after a snapshot + // on a subsequent interaction. + // Firefox works fine without this workaround + window.setTimeout(function() { + d3.selectAll('#filterBarPattern') + .attr('id', 'filterBarPattern'); + }, 60); +}; diff --git a/src/traces/parcoords/calc.js b/src/traces/parcoords/calc.js new file mode 100644 index 00000000000..00fce2e51b7 --- /dev/null +++ b/src/traces/parcoords/calc.js @@ -0,0 +1,29 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var hasColorscale = require('../../components/colorscale/has_colorscale'); +var calcColorscale = require('../../components/colorscale/calc'); +var Lib = require('../../lib'); + + +module.exports = function calc(gd, trace) { + var cs = !!trace.line.colorscale && Lib.isArray(trace.line.color); + var color = cs ? trace.line.color : Array.apply(0, Array(trace.dimensions.reduce(function(p, n) {return Math.max(p, n.values.length);}, 0))).map(function() {return 0.5;}); + var cscale = cs ? trace.line.colorscale : [[0, trace.line.color], [1, trace.line.color]]; + + trace.line.color = color; + trace.line.colorscale = cscale; + + if(hasColorscale(trace, 'line')) { + calcColorscale(trace, trace.line.color, 'line', 'c'); + } + + return [{}]; +}; diff --git a/src/traces/parcoords/colorbar.js b/src/traces/parcoords/colorbar.js new file mode 100644 index 00000000000..c20fcb428af --- /dev/null +++ b/src/traces/parcoords/colorbar.js @@ -0,0 +1,52 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + + +'use strict'; + +var isNumeric = require('fast-isnumeric'); + +var Lib = require('../../lib'); +var Plots = require('../../plots/plots'); +var Colorscale = require('../../components/colorscale'); +var drawColorbar = require('../../components/colorbar/draw'); + + +module.exports = function colorbar(gd, cd) { + var trace = cd[0].trace, + line = trace.line, + cbId = 'cb' + trace.uid; + + gd._fullLayout._infolayer.selectAll('.' + cbId).remove(); + + if((line === undefined) || !line.showscale) { + Plots.autoMargin(gd, cbId); + return; + } + + var vals = line.color, + cmin = line.cmin, + cmax = line.cmax; + + if(!isNumeric(cmin)) cmin = Lib.aggNums(Math.min, null, vals); + if(!isNumeric(cmax)) cmax = Lib.aggNums(Math.max, null, vals); + + var cb = cd[0].t.cb = drawColorbar(gd, cbId); + var sclFunc = Colorscale.makeColorScaleFunc( + Colorscale.extractScale( + line.colorscale, + cmin, + cmax + ), + { noNumericCheck: true } + ); + + cb.fillcolor(sclFunc) + .filllevels({start: cmin, end: cmax, size: (cmax - cmin) / 254}) + .options(line.colorbar)(); +}; diff --git a/src/traces/parcoords/constants.js b/src/traces/parcoords/constants.js new file mode 100644 index 00000000000..25ef3fda72e --- /dev/null +++ b/src/traces/parcoords/constants.js @@ -0,0 +1,35 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + + +module.exports = { + maxDimensionCount: 60, // this cannot be increased without WebGL code refactoring + overdrag: 45, + verticalPadding: 2, // otherwise, horizontal lines on top or bottom are of lower width + tickDistance: 50, + canvasPixelRatio: 1, + blockLineCount: 5000, + scatter: false, + layers: ['contextLineLayer', 'focusLineLayer', 'pickLineLayer'], + axisTitleOffset: 28, + axisExtentOffset: 10, + bar: { + width: 4, // Visible width of the filter bar + capturewidth: 10, // Mouse-sensitive width for interaction (Fitts law) + fillcolor: 'magenta', // Color of the filter bar fill + fillopacity: 1, // Filter bar fill opacity + strokecolor: 'white', // Color of the filter bar side lines + strokeopacity: 1, // Filter bar side stroke opacity + strokewidth: 1, // Filter bar side stroke width in pixels + handleheight: 16, // Height of the filter bar vertical resize areas on top and bottom + handleopacity: 1, // Opacity of the filter bar vertical resize areas on top and bottom + handleoverlap: 0 // A larger than 0 value causes overlaps with the filter bar, represented as pixels.' + } +}; diff --git a/src/traces/parcoords/defaults.js b/src/traces/parcoords/defaults.js new file mode 100644 index 00000000000..a40877d175f --- /dev/null +++ b/src/traces/parcoords/defaults.js @@ -0,0 +1,100 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var Lib = require('../../lib'); +var attributes = require('./attributes'); +var hasColorscale = require('../../components/colorscale/has_colorscale'); +var colorscaleDefaults = require('../../components/colorscale/defaults'); +var maxDimensionCount = require('./constants').maxDimensionCount; + +function handleLineDefaults(traceIn, traceOut, defaultColor, layout, coerce) { + + coerce('line.color', defaultColor); + coerce('line.colorscale'); + + if(hasColorscale(traceIn, 'line')) { + colorscaleDefaults(traceIn, traceOut, layout, coerce, {prefix: 'line.', cLetter: 'c'}); + } + else { + coerce('line.color', defaultColor); + } +} + +function dimensionsDefaults(traceIn, traceOut) { + var dimensionsIn = traceIn.dimensions || [], + dimensionsOut = traceOut.dimensions = []; + + var dimensionIn, dimensionOut, i; + var commonLength = Infinity; + + if(dimensionsIn.length > maxDimensionCount) { + Lib.log('parcoords traces support up to ' + maxDimensionCount + ' dimensions at the moment'); + dimensionsIn.splice(maxDimensionCount); + } + + function coerce(attr, dflt) { + return Lib.coerce(dimensionIn, dimensionOut, attributes.dimensions, attr, dflt); + } + + for(i = 0; i < dimensionsIn.length; i++) { + dimensionIn = dimensionsIn[i]; + dimensionOut = {}; + + if(!Lib.isPlainObject(dimensionIn)) { + continue; + } + + var values = coerce('values'); + var visible = coerce('visible', values.length > 0); + + if(visible) { + coerce('label'); + coerce('tickvals'); + coerce('ticktext'); + coerce('tickformat'); + coerce('range'); + coerce('constraintrange'); + + commonLength = Math.min(commonLength, dimensionOut.values.length); + } + + dimensionOut._index = i; + dimensionsOut.push(dimensionOut); + } + + if(isFinite(commonLength)) { + for(i = 0; i < dimensionsOut.length; i++) { + dimensionOut = dimensionsOut[i]; + if(dimensionOut.visible && dimensionOut.values.length > commonLength) { + dimensionOut.values = dimensionOut.values.slice(0, commonLength); + } + } + } + + return dimensionsOut; +} + + +module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) { + function coerce(attr, dflt) { + return Lib.coerce(traceIn, traceOut, attributes, attr, dflt); + } + + var dimensions = dimensionsDefaults(traceIn, traceOut); + + handleLineDefaults(traceIn, traceOut, defaultColor, layout, coerce); + + coerce('domain.x'); + coerce('domain.y'); + + if(!Array.isArray(dimensions) || !dimensions.length) { + traceOut.visible = false; + } +}; diff --git a/src/traces/parcoords/index.js b/src/traces/parcoords/index.js new file mode 100644 index 00000000000..9076322e089 --- /dev/null +++ b/src/traces/parcoords/index.js @@ -0,0 +1,31 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var Parcoords = {}; + +Parcoords.attributes = require('./attributes'); +Parcoords.supplyDefaults = require('./defaults'); +Parcoords.calc = require('./calc'); +Parcoords.plot = require('./plot'); +Parcoords.colorbar = require('./colorbar'); + +Parcoords.moduleType = 'trace'; +Parcoords.name = 'parcoords'; +Parcoords.basePlotModule = require('./base_plot'); +Parcoords.categories = ['gl']; +Parcoords.meta = { + description: [ + 'Parallel coordinates for multidimensional exploratory data analysis.', + 'The samples are specified in `dimensions`.', + 'The colors are set in `line.color`.' + ].join(' ') +}; + +module.exports = Parcoords; diff --git a/src/traces/parcoords/lines.js b/src/traces/parcoords/lines.js new file mode 100644 index 00000000000..0b849977c77 --- /dev/null +++ b/src/traces/parcoords/lines.js @@ -0,0 +1,405 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var createREGL = require('regl'); +var glslify = require('glslify'); +var verticalPadding = require('./constants').verticalPadding; +var vertexShaderSource = glslify('./shaders/vertex.glsl'); +var pickVertexShaderSource = glslify('./shaders/pick_vertex.glsl'); +var fragmentShaderSource = glslify('./shaders/fragment.glsl'); + +var depthLimitEpsilon = 1e-6; // don't change; otherwise near/far plane lines are lost + +var gpuDimensionCount = 64; +var sectionVertexCount = 2; +var vec4NumberCount = 4; + +var contextColor = [119, 119, 119]; // middle gray to not drawn the focus; looks good on a black or white background + +var dummyPixel = new Uint8Array(4); +var pickPixel = new Uint8Array(4); + +function ensureDraw(regl) { + regl.read({ + x: 0, + y: 0, + width: 1, + height: 1, + data: dummyPixel + }); +} + +function clear(regl, x, y, width, height) { + var gl = regl._gl; + gl.enable(gl.SCISSOR_TEST); + gl.scissor(x, y, width, height); + regl.clear({color: [0, 0, 0, 0], depth: 1}); // clearing is done in scissored panel only +} + +function renderBlock(regl, glAes, renderState, blockLineCount, sampleCount, item) { + + var rafKey = item.key; + + function render(blockNumber) { + + var count; + + count = Math.min(blockLineCount, sampleCount - blockNumber * blockLineCount); + + item.offset = sectionVertexCount * blockNumber * blockLineCount; + item.count = sectionVertexCount * count; + if(blockNumber === 0) { + window.cancelAnimationFrame(renderState.currentRafs[rafKey]); // stop drawing possibly stale glyphs before clearing + delete renderState.currentRafs[rafKey]; + clear(regl, item.scissorX, item.scissorY, item.scissorWidth, item.viewBoxSize[1]); + } + + if(renderState.clearOnly) { + return; + } + + glAes(item); + + if((blockNumber + 1) * blockLineCount + count < sampleCount) { + renderState.currentRafs[rafKey] = window.requestAnimationFrame(function() { + render(blockNumber + 1); + }); + } + + renderState.drawCompleted = false; + } + + if(!renderState.drawCompleted) { + ensureDraw(regl); + renderState.drawCompleted = true; + } + + // start with rendering item 0; recursion handles the rest + render(0); +} + +function adjustDepth(d) { + // WebGL matrix operations use floats with limited precision, potentially causing a number near a border of [0, 1] + // to end up slightly outside the border. With an epsilon, we reduce the chance that a line gets clipped by the + // near or the far plane. + return Math.max(depthLimitEpsilon, Math.min(1 - depthLimitEpsilon, d)); +} + +function palette(unitToColor, context, opacity) { + var result = []; + for(var j = 0; j < 256; j++) { + var c = unitToColor(j / 255); + result.push((context ? contextColor : c).concat(opacity)); + } + + return result; +} + +// Maps the sample index [0...sampleCount - 1] to a range of [0, 1] as the shader expects colors in the [0, 1] range. +// but first it shifts the sample index by 0, 8 or 16 bits depending on rgbIndex [0..2] +// with the end result that each line will be of a unique color, making it possible for the pick handler +// to uniquely identify which line is hovered over (bijective mapping). +// The inverse, i.e. readPixel is invoked from 'parcoords.js' +function calcPickColor(j, rgbIndex) { + return (j >>> 8 * rgbIndex) % 256 / 255; +} + +function makePoints(sampleCount, dimensionCount, dimensions, color) { + + var points = []; + for(var j = 0; j < sampleCount; j++) { + for(var i = 0; i < gpuDimensionCount; i++) { + points.push(i < dimensionCount ? + dimensions[i].paddedUnitValues[j] : + i === (gpuDimensionCount - 1) ? + adjustDepth(color[j]) : + i >= gpuDimensionCount - 4 ? + calcPickColor(j, gpuDimensionCount - 2 - i) : + 0.5); + } + } + + return points; +} + +function makeVecAttr(sampleCount, points, vecIndex) { + + var i, j, k; + var pointPairs = []; + + for(j = 0; j < sampleCount; j++) { + for(k = 0; k < sectionVertexCount; k++) { + for(i = 0; i < vec4NumberCount; i++) { + pointPairs.push(points[j * gpuDimensionCount + vecIndex * vec4NumberCount + i]); + if(vecIndex * vec4NumberCount + i === gpuDimensionCount - 1 && k % 2 === 0) { + pointPairs[pointPairs.length - 1] *= -1; + } + } + } + } + + return pointPairs; +} + +function makeAttributes(sampleCount, points) { + + var vecIndices = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]; + var vectors = vecIndices.map(function(vecIndex) {return makeVecAttr(sampleCount, points, vecIndex);}); + + var attributes = {}; + vectors.forEach(function(v, vecIndex) { + attributes['p' + vecIndex.toString(16)] = v; + }); + + return attributes; +} + +function valid(i, offset, panelCount) { + return i + offset <= panelCount; +} + +module.exports = function(canvasGL, lines, canvasWidth, canvasHeight, initialDimensions, initialPanels, unitToColor, context, pick, scatter) { + + var renderState = { + currentRafs: {}, + drawCompleted: true, + clearOnly: false + }; + + var initialDims = initialDimensions.slice(); + + var dimensionCount = initialDims.length; + var sampleCount = initialDims[0] ? initialDims[0].values.length : 0; + + var focusAlphaBlending = context; + + var color = pick ? lines.color.map(function(_, i) {return i / lines.color.length;}) : lines.color; + var contextOpacity = Math.max(1 / 255, Math.pow(1 / color.length, 1 / 3)); + var overdrag = lines.canvasOverdrag; + + var panelCount = initialPanels.length; + + var points = makePoints(sampleCount, dimensionCount, initialDims, color); + var attributes = makeAttributes(sampleCount, points); + + var regl = createREGL({ + canvas: canvasGL, + attributes: { + preserveDrawingBuffer: true, + antialias: !pick + } + }); + + var paletteTexture = regl.texture({ + shape: [256, 1], + format: 'rgba', + type: 'uint8', + mag: 'nearest', + min: 'nearest', + data: palette(unitToColor, context, Math.round((context ? contextOpacity : 1) * 255)) + }); + + var glAes = regl({ + + profile: false, + + blend: { + enable: focusAlphaBlending, + func: { + srcRGB: 'src alpha', + dstRGB: 'one minus src alpha', + srcAlpha: 1, + dstAlpha: 1 // 'one minus src alpha' + }, + equation: { + rgb: 'add', + alpha: 'add' + }, + color: [0, 0, 0, 0] + }, + + depth: { + enable: !focusAlphaBlending, + mask: true, + func: 'less', + range: [0, 1] + }, + + // for polygons + cull: { + enable: true, + face: 'back' + }, + + scissor: { + enable: true, + box: { + x: regl.prop('scissorX'), + y: regl.prop('scissorY'), + width: regl.prop('scissorWidth'), + height: regl.prop('scissorHeight') + } + }, + + dither: false, + + vert: pick ? pickVertexShaderSource : vertexShaderSource, + + frag: fragmentShaderSource, + + primitive: 'lines', + lineWidth: 1, + attributes: attributes, + uniforms: { + resolution: regl.prop('resolution'), + viewBoxPosition: regl.prop('viewBoxPosition'), + viewBoxSize: regl.prop('viewBoxSize'), + dim1A: regl.prop('dim1A'), + dim2A: regl.prop('dim2A'), + dim1B: regl.prop('dim1B'), + dim2B: regl.prop('dim2B'), + dim1C: regl.prop('dim1C'), + dim2C: regl.prop('dim2C'), + dim1D: regl.prop('dim1D'), + dim2D: regl.prop('dim2D'), + loA: regl.prop('loA'), + hiA: regl.prop('hiA'), + loB: regl.prop('loB'), + hiB: regl.prop('hiB'), + loC: regl.prop('loC'), + hiC: regl.prop('hiC'), + loD: regl.prop('loD'), + hiD: regl.prop('hiD'), + palette: paletteTexture, + colorClamp: regl.prop('colorClamp'), + scatter: regl.prop('scatter') + }, + offset: regl.prop('offset'), + count: regl.prop('count') + }); + + var colorClamp = [0, 1]; + + function setColorDomain(unitDomain) { + colorClamp[0] = unitDomain[0]; + colorClamp[1] = unitDomain[1]; + } + + var previousAxisOrder = []; + + function makeItem(i, ii, x, y, panelSizeX, canvasPanelSizeY, crossfilterDimensionIndex, scatter, I, leftmost, rightmost) { + var loHi, abcd, d, index; + var leftRight = [i, ii]; + var filterEpsilon = verticalPadding / canvasPanelSizeY; + + var dims = [0, 1].map(function() {return [0, 1, 2, 3].map(function() {return new Float32Array(16);});}); + var lims = [0, 1].map(function() {return [0, 1, 2, 3].map(function() {return new Float32Array(16);});}); + + for(loHi = 0; loHi < 2; loHi++) { + index = leftRight[loHi]; + for(abcd = 0; abcd < 4; abcd++) { + for(d = 0; d < 16; d++) { + var dimP = d + 16 * abcd; + dims[loHi][abcd][d] = d + 16 * abcd === index ? 1 : 0; + lims[loHi][abcd][d] = (!context && valid(d, 16 * abcd, panelCount) ? initialDims[dimP === 0 ? 0 : 1 + ((dimP - 1) % (initialDims.length - 1))].filter[loHi] : loHi) + (2 * loHi - 1) * filterEpsilon; + } + } + } + + return { + key: crossfilterDimensionIndex, + resolution: [canvasWidth, canvasHeight], + viewBoxPosition: [x + overdrag, y], + viewBoxSize: [panelSizeX, canvasPanelSizeY], + i: i, + ii: ii, + + dim1A: dims[0][0], + dim1B: dims[0][1], + dim1C: dims[0][2], + dim1D: dims[0][3], + dim2A: dims[1][0], + dim2B: dims[1][1], + dim2C: dims[1][2], + dim2D: dims[1][3], + + loA: lims[0][0], + loB: lims[0][1], + loC: lims[0][2], + loD: lims[0][3], + hiA: lims[1][0], + hiB: lims[1][1], + hiC: lims[1][2], + hiD: lims[1][3], + + colorClamp: colorClamp, + scatter: scatter || 0, + scissorX: I === leftmost ? 0 : x + overdrag, + scissorWidth: (I === rightmost ? canvasWidth - x + overdrag : panelSizeX + 0.5) + (I === leftmost ? x + overdrag : 0), + scissorY: y, + scissorHeight: canvasPanelSizeY + }; + } + + function renderGLParcoords(panels, setChanged, clearOnly) { + + var I; + + var leftmost, rightmost, lowestX = Infinity, highestX = -Infinity; + + for(I = 0; I < panelCount; I++) { + if(panels[I].dim2.canvasX > highestX) { + highestX = panels[I].dim2.canvasX; + rightmost = I; + } + if(panels[I].dim1.canvasX < lowestX) { + lowestX = panels[I].dim1.canvasX; + leftmost = I; + } + } + + for(I = 0; I < panelCount; I++) { + var panel = panels[I]; + var dim1 = panel.dim1; + var i = dim1.crossfilterDimensionIndex; + var x = panel.canvasX; + var y = panel.canvasY; + var dim2 = panel.dim2; + var ii = dim2.crossfilterDimensionIndex; + var panelSizeX = panel.panelSizeX; + var panelSizeY = panel.panelSizeY; + var xTo = x + panelSizeX; + if(setChanged || !previousAxisOrder[i] || previousAxisOrder[i][0] !== x || previousAxisOrder[i][1] !== xTo) { + previousAxisOrder[i] = [x, xTo]; + var item = makeItem(i, ii, x, y, panelSizeX, panelSizeY, dim1.crossfilterDimensionIndex, scatter || dim1.scatter ? 1 : 0, I, leftmost, rightmost); + renderState.clearOnly = clearOnly; + renderBlock(regl, glAes, renderState, setChanged ? lines.blockLineCount : sampleCount, sampleCount, item); + } + } + } + + function readPixel(canvasX, canvasY) { + regl.read({ + x: canvasX, + y: canvasY, + width: 1, + height: 1, + data: pickPixel + }); + return pickPixel; + } + + return { + setColorDomain: setColorDomain, + render: renderGLParcoords, + readPixel: readPixel, + destroy: regl.destroy + }; +}; diff --git a/src/traces/parcoords/parcoords.js b/src/traces/parcoords/parcoords.js new file mode 100644 index 00000000000..e36a487a680 --- /dev/null +++ b/src/traces/parcoords/parcoords.js @@ -0,0 +1,769 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var lineLayerMaker = require('./lines'); +var c = require('./constants'); +var Lib = require('../../lib'); +var d3 = require('d3'); + + +function keyFun(d) {return d.key;} + +function repeat(d) {return [d];} + +function visible(dimension) {return !('visible' in dimension) || dimension.visible;} + +function dimensionExtent(dimension) { + + var lo = dimension.range ? dimension.range[0] : d3.min(dimension.values); + var hi = dimension.range ? dimension.range[1] : d3.max(dimension.values); + + if(isNaN(lo) || !isFinite(lo)) { + lo = 0; + } + + if(isNaN(hi) || !isFinite(hi)) { + hi = 0; + } + + // avoid a degenerate (zero-width) domain + if(lo === hi) { + if(lo === void(0)) { + lo = 0; + hi = 1; + } else if(lo === 0) { + // no use to multiplying zero, so add/subtract in this case + lo -= 1; + hi += 1; + } else { + // this keeps the range in the order of magnitude of the data + lo *= 0.9; + hi *= 1.1; + } + } + + return [lo, hi]; +} + +function ordinalScaleSnap(scale, v) { + var i, a, prevDiff, prevValue, diff; + for(i = 0, a = scale.range(), prevDiff = Infinity, prevValue = a[0], diff; i < a.length; i++) { + if((diff = Math.abs(a[i] - v)) > prevDiff) { + return prevValue; + } + prevDiff = diff; + prevValue = a[i]; + } + return a[a.length - 1]; +} + +function domainScale(height, padding, dimension) { + var extent = dimensionExtent(dimension); + return dimension.tickvals ? + d3.scale.ordinal() + .domain(dimension.tickvals) + .range(dimension.tickvals + .map(function(d) {return (d - extent[0]) / (extent[1] - extent[0]);}) + .map(function(d) {return (height - padding + d * (padding - (height - padding)));})) : + d3.scale.linear() + .domain(extent) + .range([height - padding, padding]); +} + +function unitScale(height, padding) {return d3.scale.linear().range([height - padding, padding]);} +function domainToUnitScale(dimension) {return d3.scale.linear().domain(dimensionExtent(dimension));} + +function ordinalScale(dimension) { + var extent = dimensionExtent(dimension); + return dimension.tickvals && d3.scale.ordinal() + .domain(dimension.tickvals) + .range(dimension.tickvals.map(function(d) {return (d - extent[0]) / (extent[1] - extent[0]);})); +} + +function unitToColorScale(cscale) { + + var colorStops = cscale.map(function(d) {return d[0];}); + var colorStrings = cscale.map(function(d) {return d[1];}); + var colorTuples = colorStrings.map(function(c) {return d3.rgb(c);}); + var prop = function(n) {return function(o) {return o[n];};}; + + // We can't use d3 color interpolation as we may have non-uniform color palette raster + // (various color stop distances). + var polylinearUnitScales = 'rgb'.split('').map(function(key) { + return d3.scale.linear() + .clamp(true) + .domain(colorStops) + .range(colorTuples.map(prop(key))); + }); + + return function(d) { + return polylinearUnitScales.map(function(s) { + return s(d); + }); + }; +} + +function unwrap(d) { + return d[0]; // plotly data structure convention +} + +function model(layout, d, i) { + var trace = unwrap(d).trace, + line = trace.line, + domain = trace.domain, + dimensions = trace.dimensions, + width = layout.width; + + var lines = Lib.extendDeep({}, line, { + color: line.color.map(domainToUnitScale({values: line.color, range: [line.cmin, line.cmax]})), + blockLineCount: c.blockLineCount, + canvasOverdrag: c.overdrag * c.canvasPixelRatio + }); + + var groupWidth = width * (domain.x[1] - domain.x[0]); + var groupHeight = layout.height * (domain.y[1] - domain.y[0]); + + var pad = layout.margin || {l: 80, r: 80, t: 100, b: 80}; + var rowContentWidth = groupWidth; + var rowHeight = groupHeight; + + return { + key: i, + colCount: dimensions.filter(visible).length, + dimensions: dimensions, + tickDistance: c.tickDistance, + unitToColor: unitToColorScale(line.colorscale), + lines: lines, + translateX: domain.x[0] * width, + translateY: layout.height - domain.y[1] * layout.height, + pad: pad, + canvasWidth: rowContentWidth * c.canvasPixelRatio + 2 * lines.canvasOverdrag, + canvasHeight: rowHeight * c.canvasPixelRatio, + width: rowContentWidth, + height: rowHeight, + canvasPixelRatio: c.canvasPixelRatio + }; +} + +function viewModel(model) { + + var width = model.width; + var height = model.height; + var dimensions = model.dimensions; + var canvasPixelRatio = model.canvasPixelRatio; + + var xScale = function(d) {return width * d / Math.max(1, model.colCount - 1);}; + + var unitPad = c.verticalPadding / (height * canvasPixelRatio); + var unitPadScale = (1 - 2 * unitPad); + var paddedUnitScale = function(d) {return unitPad + unitPadScale * d;}; + + var viewModel = { + key: model.key, + xScale: xScale, + model: model + }; + + var uniqueKeys = {}; + + viewModel.dimensions = dimensions.filter(visible).map(function(dimension, i) { + var domainToUnit = domainToUnitScale(dimension); + var foundKey = uniqueKeys[dimension.label]; + uniqueKeys[dimension.label] = (foundKey ? 0 : foundKey) + 1; + var key = dimension.label + (foundKey ? '__' + foundKey : ''); + return { + key: key, + label: dimension.label, + tickFormat: dimension.tickformat, + tickvals: dimension.tickvals, + ticktext: dimension.ticktext, + ordinal: !!dimension.tickvals, + scatter: c.scatter || dimension.scatter, + xIndex: i, + crossfilterDimensionIndex: i, + visibleIndex: dimension._index, + height: height, + values: dimension.values, + paddedUnitValues: dimension.values.map(domainToUnit).map(paddedUnitScale), + xScale: xScale, + x: xScale(i), + canvasX: xScale(i) * canvasPixelRatio, + unitScale: unitScale(height, c.verticalPadding), + domainScale: domainScale(height, c.verticalPadding, dimension), + ordinalScale: ordinalScale(dimension), + domainToUnitScale: domainToUnit, + filter: dimension.constraintrange ? dimension.constraintrange.map(domainToUnit) : [0, 1], + parent: viewModel, + model: model + }; + }); + + return viewModel; +} + +function lineLayerModel(vm) { + return c.layers.map(function(key) { + return { + key: key, + context: key === 'contextLineLayer', + pick: key === 'pickLineLayer', + viewModel: vm, + model: vm.model + }; + }); +} + +function styleExtentTexts(selection) { + selection + .classed('axisExtentText', true) + .attr('text-anchor', 'middle') + .style('font-weight', 100) + .style('font-size', '10px') + .style('cursor', 'default') + .style('user-select', 'none'); +} + +module.exports = function(root, svg, styledData, layout, callbacks) { + + var domainBrushing = false; + var linePickActive = true; + + function enterSvgDefs(root) { + var defs = root.selectAll('defs') + .data(repeat, keyFun); + + defs.enter() + .append('defs'); + + var filterBarPattern = defs.selectAll('#filterBarPattern') + .data(repeat, keyFun); + + filterBarPattern.enter() + .append('pattern') + .attr('id', 'filterBarPattern') + .attr('patternUnits', 'userSpaceOnUse'); + + filterBarPattern + .attr('x', -c.bar.width) + .attr('width', c.bar.capturewidth) + .attr('height', function(d) {return d.model.height;}); + + var filterBarPatternGlyph = filterBarPattern.selectAll('rect') + .data(repeat, keyFun); + + filterBarPatternGlyph.enter() + .append('rect') + .attr('shape-rendering', 'crispEdges'); + + filterBarPatternGlyph + .attr('height', function(d) {return d.model.height;}) + .attr('width', c.bar.width) + .attr('x', c.bar.width / 2) + .attr('fill', c.bar.fillcolor) + .attr('fill-opacity', c.bar.fillopacity) + .attr('stroke', c.bar.strokecolor) + .attr('stroke-opacity', c.bar.strokeopacity) + .attr('stroke-width', c.bar.strokewidth); + } + + var vm = styledData + .filter(function(d) { return unwrap(d).trace.visible; }) + .map(model.bind(0, layout)) + .map(viewModel); + + var parcoordsLineLayers = root.selectAll('.parcoords-line-layers') + .data(vm, keyFun); + + parcoordsLineLayers.exit().remove(); + + parcoordsLineLayers.enter() + .insert('div', '.' + svg.attr('class').split(' ').join(' .')) // not hardcoding .main-svg + .classed('parcoords-line-layers', true) + .style('box-sizing', 'content-box'); + + parcoordsLineLayers + .style('transform', function(d) { + return 'translate(' + (d.model.translateX - c.overdrag) + 'px,' + d.model.translateY + 'px)'; + }); + + var parcoordsLineLayer = parcoordsLineLayers.selectAll('.parcoords-lines') + .data(lineLayerModel, keyFun); + + var tweakables = {renderers: [], dimensions: []}; + + var lastHovered = null; + + parcoordsLineLayer.enter() + .append('canvas') + .attr('class', function(d) {return 'parcoords-lines ' + (d.context ? 'context' : d.pick ? 'pick' : 'focus');}) + .style('box-sizing', 'content-box') + .style('float', 'left') + .style('clear', 'both') + .style('left', 0) + .style('overflow', 'visible') + .style('position', function(d, i) {return i > 0 ? 'absolute' : 'absolute';}) + .filter(function(d) {return d.pick;}) + .on('mousemove', function(d) { + if(linePickActive && d.lineLayer && callbacks && callbacks.hover) { + var event = d3.event; + var cw = this.width; + var ch = this.height; + var pointer = d3.mouse(this); + var x = pointer[0]; + var y = pointer[1]; + + if(x < 0 || y < 0 || x >= cw || y >= ch) { + return; + } + var pixel = d.lineLayer.readPixel(x, ch - 1 - y); + var found = pixel[3] !== 0; + // inverse of the calcPickColor in `lines.js`; detailed comment there + var curveNumber = found ? pixel[2] + 256 * (pixel[1] + 256 * pixel[0]) : null; + var eventData = { + x: x, + y: y, + clientX: event.clientX, + clientY: event.clientY, + dataIndex: d.model.key, + curveNumber: curveNumber + }; + if(curveNumber !== lastHovered) { // don't unnecessarily repeat the same hit (or miss) + if(found) { + callbacks.hover(eventData); + } else if(callbacks.unhover) { + callbacks.unhover(eventData); + } + lastHovered = curveNumber; + } + } + }); + + parcoordsLineLayer + .style('margin', function(d) { + var p = d.model.pad; + return p.t + 'px ' + p.r + 'px ' + p.b + 'px ' + p.l + 'px'; + }) + .attr('width', function(d) {return d.model.canvasWidth;}) + .attr('height', function(d) {return d.model.canvasHeight;}) + .style('width', function(d) {return (d.model.width + 2 * c.overdrag) + 'px';}) + .style('height', function(d) {return d.model.height + 'px';}) + .style('opacity', function(d) {return d.pick ? 0.01 : 1;}); + + svg.style('background', 'rgba(255, 255, 255, 0)'); + var parcoordsControlOverlay = svg.selectAll('.parcoords') + .data(vm, keyFun); + + parcoordsControlOverlay.exit().remove(); + + parcoordsControlOverlay.enter() + .append('g') + .classed('parcoords', true) + .attr('overflow', 'visible') + .style('box-sizing', 'content-box') + .style('position', 'absolute') + .style('left', 0) + .style('overflow', 'visible') + .style('shape-rendering', 'crispEdges') + .style('pointer-events', 'none') + .call(enterSvgDefs); + + parcoordsControlOverlay + .attr('width', function(d) {return d.model.width + d.model.pad.l + d.model.pad.r;}) + .attr('height', function(d) {return d.model.height + d.model.pad.t + d.model.pad.b;}) + .attr('transform', function(d) { + return 'translate(' + d.model.translateX + ',' + d.model.translateY + ')'; + }); + + var parcoordsControlView = parcoordsControlOverlay.selectAll('.parcoordsControlView') + .data(repeat, keyFun); + + parcoordsControlView.enter() + .append('g') + .classed('parcoordsControlView', true) + .style('box-sizing', 'content-box'); + + parcoordsControlView + .attr('transform', function(d) {return 'translate(' + d.model.pad.l + ',' + d.model.pad.t + ')';}); + + var yAxis = parcoordsControlView.selectAll('.yAxis') + .data(function(vm) {return vm.dimensions;}, keyFun); + + function someFiltersActive(view) { + return view.dimensions.some(function(p) {return p.filter[0] !== 0 || p.filter[1] !== 1;}); + } + + function updatePanelLayoutParcoords(yAxis, vm) { + var panels = vm.panels || (vm.panels = []); + var yAxes = yAxis.each(function(d) {return d;})[vm.key].map(function(e) {return e.__data__;}); + var panelCount = yAxes.length - 1; + var rowCount = 1; + for(var row = 0; row < rowCount; row++) { + for(var p = 0; p < panelCount; p++) { + var panel = panels[p + row * panelCount] || (panels[p + row * panelCount] = {}); + var dim1 = yAxes[p]; + var dim2 = yAxes[p + 1]; + panel.dim1 = dim1; + panel.dim2 = dim2; + panel.canvasX = dim1.canvasX; + panel.panelSizeX = dim2.canvasX - dim1.canvasX; + panel.panelSizeY = vm.model.canvasHeight / rowCount; + panel.y = row * panel.panelSizeY; + panel.canvasY = vm.model.canvasHeight - panel.y - panel.panelSizeY; + } + } + } + + function updatePanelLayoutScatter(yAxis, vm) { + var panels = vm.panels || (vm.panels = []); + var yAxes = yAxis.each(function(d) {return d;})[vm.key].map(function(e) {return e.__data__;}); + var panelCount = yAxes.length - 1; + var rowCount = panelCount; + for(var row = 0; row < panelCount; row++) { + for(var p = 0; p < panelCount; p++) { + var panel = panels[p + row * panelCount] || (panels[p + row * panelCount] = {}); + var dim1 = yAxes[p]; + var dim2 = yAxes[p + 1]; + panel.dim1 = yAxes[row + 1]; + panel.dim2 = dim2; + panel.canvasX = dim1.canvasX; + panel.panelSizeX = dim2.canvasX - dim1.canvasX; + panel.panelSizeY = vm.model.canvasHeight / rowCount; + panel.y = row * panel.panelSizeY; + panel.canvasY = vm.model.canvasHeight - panel.y - panel.panelSizeY; + } + } + } + + function updatePanelLayout(yAxis, vm) { + return (c.scatter ? updatePanelLayoutScatter : updatePanelLayoutParcoords)(yAxis, vm); + } + + yAxis.enter() + .append('g') + .classed('yAxis', true) + .each(function(d) {tweakables.dimensions.push(d);}); + + parcoordsControlView.each(function(vm) { + updatePanelLayout(yAxis, vm); + }); + + parcoordsLineLayer + .each(function(d) { + d.lineLayer = lineLayerMaker(this, d.model.lines, d.model.canvasWidth, d.model.canvasHeight, d.viewModel.dimensions, d.viewModel.panels, d.model.unitToColor, d.context, d.pick, c.scatter); + d.viewModel[d.key] = d.lineLayer; + tweakables.renderers.push(function() {d.lineLayer.render(d.viewModel.panels, true);}); + d.lineLayer.render(d.viewModel.panels, !d.context); + }); + + yAxis + .attr('transform', function(d) {return 'translate(' + d.xScale(d.xIndex) + ', 0)';}); + + yAxis + .call(d3.behavior.drag() + .origin(function(d) {return d;}) + .on('drag', function(d) { + var p = d.parent; + linePickActive = false; + if(domainBrushing) { + return; + } + d.x = Math.max(-c.overdrag, Math.min(d.model.width + c.overdrag, d3.event.x)); + d.canvasX = d.x * d.model.canvasPixelRatio; + yAxis + .sort(function(a, b) {return a.x - b.x;}) + .each(function(dd, i) { + dd.xIndex = i; + dd.x = d === dd ? dd.x : dd.xScale(dd.xIndex); + dd.canvasX = dd.x * dd.model.canvasPixelRatio; + }); + + updatePanelLayout(yAxis, p); + + yAxis.filter(function(dd) {return Math.abs(d.xIndex - dd.xIndex) !== 0;}) + .attr('transform', function(d) {return 'translate(' + d.xScale(d.xIndex) + ', 0)';}); + d3.select(this).attr('transform', 'translate(' + d.x + ', 0)'); + yAxis.each(function(dd, i, ii) {if(ii === d.parent.key) p.dimensions[i] = dd;}); + p.contextLineLayer && p.contextLineLayer.render(p.panels, false, !someFiltersActive(p)); + p.focusLineLayer.render && p.focusLineLayer.render(p.panels); + }) + .on('dragend', function(d) { + var p = d.parent; + if(domainBrushing) { + if(domainBrushing === 'ending') { + domainBrushing = false; + } + return; + } + d.x = d.xScale(d.xIndex); + d.canvasX = d.x * d.model.canvasPixelRatio; + updatePanelLayout(yAxis, p); + d3.select(this) + .attr('transform', function(d) {return 'translate(' + d.x + ', 0)';}); + p.contextLineLayer && p.contextLineLayer.render(p.panels, false, !someFiltersActive(p)); + p.focusLineLayer && p.focusLineLayer.render(p.panels); + p.pickLineLayer && p.pickLineLayer.render(p.panels, true); + linePickActive = true; + + if(callbacks && callbacks.axesMoved) { + callbacks.axesMoved(p.key, p.dimensions.map(function(dd) {return dd.crossfilterDimensionIndex;})); + } + }) + ); + + yAxis.exit() + .remove(); + + var axisOverlays = yAxis.selectAll('.axisOverlays') + .data(repeat, keyFun); + + axisOverlays.enter() + .append('g') + .classed('axisOverlays', true); + + axisOverlays.selectAll('.axis').remove(); + + var axis = axisOverlays.selectAll('.axis') + .data(repeat, keyFun); + + axis.enter() + .append('g') + .classed('axis', true); + + axis + .each(function(d) { + var wantedTickCount = d.model.height / d.model.tickDistance; + var scale = d.domainScale; + var sdom = scale.domain(); + var texts = d.ticktext; + d3.select(this) + .call(d3.svg.axis() + .orient('left') + .tickSize(4) + .outerTickSize(2) + .ticks(wantedTickCount, d.tickFormat) // works for continuous scales only... + .tickValues(d.ordinal ? // and this works for ordinal scales + sdom.map(function(d, i) {return texts && texts[i] || d;}) : + null) + .tickFormat(d.ordinal ? function(d) {return d;} : null) + .scale(scale)); + }); + + axis + .selectAll('.domain, .tick') + .attr('fill', 'none') + .attr('stroke', 'black') + .attr('stroke-opacity', 0.25) + .attr('stroke-width', '1px'); + + axis + .selectAll('text') + .style('font-weight', 100) + .style('font-size', '10px') + .style('fill', 'black') + .style('fill-opacity', 1) + .style('stroke', 'none') + .style('text-shadow', '1px 1px 1px #fff, -1px -1px 1px #fff, 1px -1px 1px #fff, -1px 1px 1px #fff') + .style('cursor', 'default') + .style('user-select', 'none'); + + var axisHeading = axisOverlays.selectAll('.axisHeading') + .data(repeat, keyFun); + + axisHeading.enter() + .append('g') + .classed('axisHeading', true); + + var axisTitle = axisHeading.selectAll('.axisTitle') + .data(repeat, keyFun); + + axisTitle.enter() + .append('text') + .classed('axisTitle', true) + .attr('text-anchor', 'middle') + .style('font-family', 'sans-serif') + .style('font-size', '10px') + .style('cursor', 'ew-resize') + .style('user-select', 'none') + .style('pointer-events', 'auto'); + + axisTitle + .attr('transform', 'translate(0,' + -c.axisTitleOffset + ')') + .text(function(d) {return d.label;}); + + var axisExtent = axisOverlays.selectAll('.axisExtent') + .data(repeat, keyFun); + + axisExtent.enter() + .append('g') + .classed('axisExtent', true); + + var axisExtentTop = axisExtent.selectAll('.axisExtentTop') + .data(repeat, keyFun); + + axisExtentTop.enter() + .append('g') + .classed('axisExtentTop', true); + + axisExtentTop + .attr('transform', 'translate(' + 0 + ',' + -c.axisExtentOffset + ')'); + + var axisExtentTopText = axisExtentTop.selectAll('.axisExtentTopText') + .data(repeat, keyFun); + + function formatExtreme(d) { + return d.ordinal ? function() {return '';} : d3.format(d.tickFormat); + } + + axisExtentTopText.enter() + .append('text') + .classed('axisExtentTopText', true) + .attr('alignment-baseline', 'after-edge') + .call(styleExtentTexts); + + axisExtentTopText + .text(function(d) {return formatExtreme(d)(d.domainScale.domain().slice(-1)[0]);}); + + var axisExtentBottom = axisExtent.selectAll('.axisExtentBottom') + .data(repeat, keyFun); + + axisExtentBottom.enter() + .append('g') + .classed('axisExtentBottom', true); + + axisExtentBottom + .attr('transform', function(d) {return 'translate(' + 0 + ',' + (d.model.height + c.axisExtentOffset) + ')';}); + + var axisExtentBottomText = axisExtentBottom.selectAll('.axisExtentBottomText') + .data(repeat, keyFun); + + axisExtentBottomText.enter() + .append('text') + .classed('axisExtentBottomText', true) + .attr('alignment-baseline', 'before-edge') + .call(styleExtentTexts); + + axisExtentBottomText + .text(function(d) {return formatExtreme(d)(d.domainScale.domain()[0]);}); + + var axisBrush = axisOverlays.selectAll('.axisBrush') + .data(repeat, keyFun); + + var axisBrushEnter = axisBrush.enter() + .append('g') + .classed('axisBrush', true); + + axisBrush + .each(function(d) { + if(!d.brush) { + d.brush = d3.svg.brush() + .y(d.unitScale) + .on('brushstart', axisBrushStarted) + .on('brush', axisBrushMoved) + .on('brushend', axisBrushEnded); + if(d.filter[0] !== 0 || d.filter[1] !== 1) { + d.brush.extent(d.filter); + } + d3.select(this).call(d.brush); + } + }); + + axisBrushEnter + .selectAll('rect') + .attr('x', -c.bar.capturewidth / 2) + .attr('width', c.bar.capturewidth); + + axisBrushEnter + .selectAll('rect.extent') + .attr('fill', 'url(#filterBarPattern)') + .style('cursor', 'ns-resize') + .filter(function(d) {return d.filter[0] === 0 && d.filter[1] === 1;}) + .attr('y', -100); // // zero-size rectangle pointer issue workaround + + axisBrushEnter + .selectAll('.resize rect') + .attr('height', c.bar.handleheight) + .attr('opacity', 0) + .style('visibility', 'visible'); + + axisBrushEnter + .selectAll('.resize.n rect') + .style('cursor', 'n-resize') + .attr('y', c.bar.handleoverlap - c.bar.handleheight); + + axisBrushEnter + .selectAll('.resize.s rect') + .style('cursor', 's-resize') + .attr('y', c.bar.handleoverlap); + + var justStarted = false; + var contextShown = false; + + function axisBrushStarted() { + justStarted = true; + domainBrushing = true; + } + + function axisBrushMoved(dimension) { + linePickActive = false; + var p = dimension.parent; + var extent = dimension.brush.extent(); + var dimensions = p.dimensions; + var filter = dimensions[dimension.xIndex].filter; + var reset = justStarted && (extent[0] === extent[1]); + if(reset) { + dimension.brush.clear(); + d3.select(this).select('rect.extent').attr('y', -100); // zero-size rectangle pointer issue workaround + } + var newExtent = reset ? [0, 1] : extent.slice(); + if(newExtent[0] !== filter[0] || newExtent[1] !== filter[1]) { + dimensions[dimension.xIndex].filter = newExtent; + p.focusLineLayer && p.focusLineLayer.render(p.panels, true); + var filtersActive = someFiltersActive(p); + if(!contextShown && filtersActive) { + p.contextLineLayer && p.contextLineLayer.render(p.panels, true); + contextShown = true; + } else if(contextShown && !filtersActive) { + p.contextLineLayer && p.contextLineLayer.render(p.panels, true, true); + contextShown = false; + } + } + justStarted = false; + } + + function axisBrushEnded(dimension) { + var p = dimension.parent; + var extent = dimension.brush.extent(); + var empty = extent[0] === extent[1]; + var dimensions = p.dimensions; + var f = dimensions[dimension.xIndex].filter; + if(!empty && dimension.ordinal) { + f[0] = ordinalScaleSnap(dimension.ordinalScale, f[0]); + f[1] = ordinalScaleSnap(dimension.ordinalScale, f[1]); + if(f[0] === f[1]) { + f[0] = Math.max(0, f[0] - 0.05); + f[1] = Math.min(1, f[1] + 0.05); + } + d3.select(this).transition().duration(150).call(dimension.brush.extent(f)); + p.focusLineLayer.render(p.panels, true); + } + p.pickLineLayer && p.pickLineLayer.render(p.panels, true); + linePickActive = true; + domainBrushing = 'ending'; + if(callbacks && callbacks.filterChanged) { + var invScale = dimension.domainToUnitScale.invert; + + // update gd.data as if a Plotly.restyle were fired + var newRange = f.map(invScale); + callbacks.filterChanged(p.key, dimension.visibleIndex, newRange); + } + } + + return tweakables; +}; diff --git a/src/traces/parcoords/plot.js b/src/traces/parcoords/plot.js new file mode 100644 index 00000000000..90cc3353846 --- /dev/null +++ b/src/traces/parcoords/plot.js @@ -0,0 +1,118 @@ +/** +* Copyright 2012-2017, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var parcoords = require('./parcoords'); + +module.exports = function plot(gd, cdparcoords) { + + var fullLayout = gd._fullLayout; + var svg = fullLayout._paper; + var root = fullLayout._paperdiv; + + var gdDimensions = {}; + var gdDimensionsOriginalOrder = {}; + + var size = fullLayout._size; + + cdparcoords.forEach(function(d, i) { + gdDimensions[i] = gd.data[i].dimensions; + gdDimensionsOriginalOrder[i] = gd.data[i].dimensions.slice(); + }); + + var filterChanged = function(i, originalDimensionIndex, newRange) { + + // Have updated `constraintrange` data on `gd.data` and raise `Plotly.restyle` event + // without having to incur heavy UI blocking due to an actual `Plotly.restyle` call + + var gdDimension = gdDimensionsOriginalOrder[i][originalDimensionIndex]; + var gdConstraintRange = gdDimension.constraintrange; + + if(!gdConstraintRange || gdConstraintRange.length !== 2) { + gdConstraintRange = gdDimension.constraintrange = []; + } + gdConstraintRange[0] = newRange[0]; + gdConstraintRange[1] = newRange[1]; + + gd.emit('plotly_restyle'); + }; + + var hover = function(eventData) { + gd.emit('plotly_hover', eventData); + }; + + var unhover = function(eventData) { + gd.emit('plotly_unhover', eventData); + }; + + var axesMoved = function(i, visibleIndices) { + + // Have updated order data on `gd.data` and raise `Plotly.restyle` event + // without having to incur heavy UI blocking due to an actual `Plotly.restyle` call + + function visible(dimension) {return !('visible' in dimension) || dimension.visible;} + + function newIdx(visibleIndices, orig, dim) { + var origIndex = orig.indexOf(dim); + var currentIndex = visibleIndices.indexOf(origIndex); + if(currentIndex === -1) { + // invisible dimensions initially go to the end + currentIndex += orig.length; + } + return currentIndex; + } + + function sorter(orig) { + return function sorter(d1, d2) { + var i1 = newIdx(visibleIndices, orig, d1); + var i2 = newIdx(visibleIndices, orig, d2); + return i1 - i2; + }; + } + + // drag&drop sorting of the visible dimensions + var orig = sorter(gdDimensionsOriginalOrder[i].filter(visible)); + gdDimensions[i].sort(orig); + + // invisible dimensions are not interpreted in the context of drag&drop sorting as an invisible dimension + // cannot be dragged; they're interspersed into their original positions by this subsequent merging step + gdDimensionsOriginalOrder[i].filter(function(d) {return !visible(d);}) + .sort(function(d) { + // subsequent splicing to be done left to right, otherwise indices may be incorrect + return gdDimensionsOriginalOrder[i].indexOf(d); + }) + .forEach(function(d) { + gdDimensions[i].splice(gdDimensions[i].indexOf(d), 1); // remove from the end + gdDimensions[i].splice(gdDimensionsOriginalOrder[i].indexOf(d), 0, d); // insert at original index + }); + + gd.emit('plotly_restyle'); + }; + + parcoords( + root, + svg, + cdparcoords, + { + width: size.w, + height: size.h, + margin: { + t: size.t, + r: size.r, + b: size.b, + l: size.l + } + }, + { + filterChanged: filterChanged, + hover: hover, + unhover: unhover, + axesMoved: axesMoved + }); +}; diff --git a/src/traces/parcoords/shaders/fragment.glsl b/src/traces/parcoords/shaders/fragment.glsl new file mode 100644 index 00000000000..52ab460d1ae --- /dev/null +++ b/src/traces/parcoords/shaders/fragment.glsl @@ -0,0 +1,7 @@ +precision lowp float; + +varying vec4 fragColor; + +void main() { + gl_FragColor = fragColor; +} diff --git a/src/traces/parcoords/shaders/pick_vertex.glsl b/src/traces/parcoords/shaders/pick_vertex.glsl new file mode 100644 index 00000000000..6b529841588 --- /dev/null +++ b/src/traces/parcoords/shaders/pick_vertex.glsl @@ -0,0 +1,82 @@ +precision highp float; + +attribute vec4 p0, p1, p2, p3, + p4, p5, p6, p7, + p8, p9, pa, pb, + pc, pd, pe; + +attribute vec4 pf; + +uniform mat4 dim1A, dim2A, dim1B, dim2B, dim1C, dim2C, dim1D, dim2D, + loA, hiA, loB, hiB, loC, hiC, loD, hiD; + +uniform vec2 resolution, + viewBoxPosition, + viewBoxSize; + +uniform sampler2D palette; + +uniform vec2 colorClamp; + +uniform float scatter; + +varying vec4 fragColor; + +vec4 zero = vec4(0, 0, 0, 0); +vec4 unit = vec4(1, 1, 1, 1); +vec2 xyProjection = vec2(1, 1); + +mat4 mclamp(mat4 m, mat4 lo, mat4 hi) { + return mat4(clamp(m[0], lo[0], hi[0]), + clamp(m[1], lo[1], hi[1]), + clamp(m[2], lo[2], hi[2]), + clamp(m[3], lo[3], hi[3])); +} + +bool mshow(mat4 p, mat4 lo, mat4 hi) { + return mclamp(p, lo, hi) == p; +} + +float val(mat4 p, mat4 v) { + return dot(matrixCompMult(p, v) * unit, unit); +} + +void main() { + + float x = 0.5 * sign(pf[3]) + 0.5; + float prominence = abs(pf[3]); + float depth = 1.0 - prominence; + + mat4 pA = mat4(p0, p1, p2, p3); + mat4 pB = mat4(p4, p5, p6, p7); + mat4 pC = mat4(p8, p9, pa, pb); + mat4 pD = mat4(pc, pd, pe, abs(pf)); + + float show = float(mshow(pA, loA, hiA) && + mshow(pB, loB, hiB) && + mshow(pC, loC, hiC) && + mshow(pD, loD, hiD)); + + vec2 yy = show * vec2(val(pA, dim2A) + val(pB, dim2B) + val(pC, dim2C) + val(pD, dim2D), + val(pA, dim1A) + val(pB, dim1B) + val(pC, dim1C) + val(pD, dim1D)); + + vec2 dimensionToggle = vec2(x, 1.0 - x); + + vec2 scatterToggle = vec2(scatter, 1.0 - scatter); + + float y = dot(yy, dimensionToggle); + mat2 xy = mat2(viewBoxSize * yy + dimensionToggle, viewBoxSize * vec2(x, y)); + + vec2 viewBoxXY = viewBoxPosition + xy * scatterToggle; + + float depthOrHide = depth + 2.0 * (1.0 - show); + + gl_Position = vec4( + xyProjection * (2.0 * viewBoxXY / resolution - 1.0), + depthOrHide, + 1.0 + ); + + // pick coloring + fragColor = vec4(pf.rgb, 1.0); +} diff --git a/src/traces/parcoords/shaders/vertex.glsl b/src/traces/parcoords/shaders/vertex.glsl new file mode 100644 index 00000000000..2f785a8a5ff --- /dev/null +++ b/src/traces/parcoords/shaders/vertex.glsl @@ -0,0 +1,83 @@ +precision highp float; + +attribute vec4 p0, p1, p2, p3, + p4, p5, p6, p7, + p8, p9, pa, pb, + pc, pd, pe; + +attribute vec4 pf; + +uniform mat4 dim1A, dim2A, dim1B, dim2B, dim1C, dim2C, dim1D, dim2D, + loA, hiA, loB, hiB, loC, hiC, loD, hiD; + +uniform vec2 resolution, + viewBoxPosition, + viewBoxSize; + +uniform sampler2D palette; + +uniform vec2 colorClamp; + +uniform float scatter; + +varying vec4 fragColor; + +vec4 zero = vec4(0, 0, 0, 0); +vec4 unit = vec4(1, 1, 1, 1); +vec2 xyProjection = vec2(1, 1); + +mat4 mclamp(mat4 m, mat4 lo, mat4 hi) { + return mat4(clamp(m[0], lo[0], hi[0]), + clamp(m[1], lo[1], hi[1]), + clamp(m[2], lo[2], hi[2]), + clamp(m[3], lo[3], hi[3])); +} + +bool mshow(mat4 p, mat4 lo, mat4 hi) { + return mclamp(p, lo, hi) == p; +} + +float val(mat4 p, mat4 v) { + return dot(matrixCompMult(p, v) * unit, unit); +} + +void main() { + + float x = 0.5 * sign(pf[3]) + 0.5; + float prominence = abs(pf[3]); + float depth = 1.0 - prominence; + + mat4 pA = mat4(p0, p1, p2, p3); + mat4 pB = mat4(p4, p5, p6, p7); + mat4 pC = mat4(p8, p9, pa, pb); + mat4 pD = mat4(pc, pd, pe, abs(pf)); + + float show = float(mshow(pA, loA, hiA) && + mshow(pB, loB, hiB) && + mshow(pC, loC, hiC) && + mshow(pD, loD, hiD)); + + vec2 yy = show * vec2(val(pA, dim2A) + val(pB, dim2B) + val(pC, dim2C) + val(pD, dim2D), + val(pA, dim1A) + val(pB, dim1B) + val(pC, dim1C) + val(pD, dim1D)); + + vec2 dimensionToggle = vec2(x, 1.0 - x); + + vec2 scatterToggle = vec2(scatter, 1.0 - scatter); + + float y = dot(yy, dimensionToggle); + mat2 xy = mat2(viewBoxSize * yy + dimensionToggle, viewBoxSize * vec2(x, y)); + + vec2 viewBoxXY = viewBoxPosition + xy * scatterToggle; + + float depthOrHide = depth + 2.0 * (1.0 - show); + + gl_Position = vec4( + xyProjection * (2.0 * viewBoxXY / resolution - 1.0), + depthOrHide, + 1.0 + ); + + // visible coloring + float clampedColorIndex = clamp((prominence - colorClamp[0]) / (colorClamp[1] - colorClamp[0]), 0.0, 1.0); + fragColor = texture2D(palette, vec2((clampedColorIndex * 255.0 + 0.5) / 256.0, 0.5)); +} From ded8f66ebc9ab441d4772bc336c51a69c0a465f2 Mon Sep 17 00:00:00 2001 From: Robert Monfera Date: Wed, 22 Feb 2017 14:07:58 +0100 Subject: [PATCH 4/7] parcoords: mocks for image comparison and unit tests --- test/image/baselines/gl2d_parcoords.png | Bin 0 -> 132431 bytes test/image/baselines/gl2d_parcoords_1.png | Bin 0 -> 12949 bytes test/image/baselines/gl2d_parcoords_2.png | Bin 0 -> 31829 bytes test/image/baselines/gl2d_parcoords_large.png | Bin 0 -> 231493 bytes test/image/mocks/gl2d_parcoords.json | 77 ++++++++++++++++++ test/image/mocks/gl2d_parcoords_1.json | 28 +++++++ test/image/mocks/gl2d_parcoords_2.json | 38 +++++++++ test/image/mocks/gl2d_parcoords_large.json | 77 ++++++++++++++++++ 8 files changed, 220 insertions(+) create mode 100644 test/image/baselines/gl2d_parcoords.png create mode 100644 test/image/baselines/gl2d_parcoords_1.png create mode 100644 test/image/baselines/gl2d_parcoords_2.png create mode 100644 test/image/baselines/gl2d_parcoords_large.png create mode 100644 test/image/mocks/gl2d_parcoords.json create mode 100644 test/image/mocks/gl2d_parcoords_1.json create mode 100644 test/image/mocks/gl2d_parcoords_2.json create mode 100644 test/image/mocks/gl2d_parcoords_large.json diff --git a/test/image/baselines/gl2d_parcoords.png b/test/image/baselines/gl2d_parcoords.png new file mode 100644 index 0000000000000000000000000000000000000000..199e830096a30aafed894a09ae9b7833d2dab699 GIT binary patch literal 132431 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�^kPZMTCiqZ*b|Q zJ*;*^`95DPHA;0Hu%A~9G#;g^DmEEx_GDa!bqfB%dyEYg9zj$)f$O4tyj+PpCph0h+bxkoA5$ z!!;H_Mq7)h*i)r7HS3wPHkqSfo~UE}OFudLx2BSXb*%Bq!04$A2luStXI!EX>D}JNhaS7$CG|EEaQwp>M!?oS@D!u8bp@yC8v$W z#lw}3QHkRdm6mkhLja-!v#iAm%^W1&-ljO{viI4^y8PrdHaGMTd`B6 z<;E|xT!qxy+G-BImcsDrJvQ6PXX=^lMh8Vqa^tP0RTNTwz@V&e{V2G{Yv^hd`0$`_E1GIL2r!0-(WV>|x+(%Ybhp4&N&Ap!xGZ zQ%d3n4FZ`8>VRM2DHOq(4Kg?{(dmC`cg7o2oxm;0HT3H_uKdrL03%}L;xZxJV4TS^H8x%%m+s5AT#|u+#T4pVc*S+8=^mBQP zC07{Bv>zlNB={JNwOs7*X$!Z3(=2(4IND+>Cfrc6gIbjzZv4$k#;2?!-i3U6Kbh)| zDG9cb+IF8!jJ|kAMFG(L|APt@fD1W*8a@9dNYrGuX_luT{`_V8uYLdl3Q+zdj%4sB z1g`SVF7-Q^kPsL^-#nsy3TG6qQ5~K)ffi_vZq1rCo3x`T%5i}tJPvpAxb+y*kS<8N-2_A2%B`WpTT=Bwu*~Tin{S2#Bm%Q?e zu6;f@2Q~7~J_rWu=G1&kWUs6_)#9Q>#_}Ky$?|v>)Y$iOs@Or=ROAX~_xv3gJF3ho z2C^E+!88(29rq73Eg%V!S!qsPCG!z4ac%EaMI12YwW}jSc0J8^%tM4!borS!$TBFR z2=BMHp_;Bjb09VBR+|8Kc}z!!vqPekO_Uj1>rY zYKi3ubPmF8x|@z5IF?pf3R9CZ@4uvCJs|`t9I2nBe_v^RI>J_xy+2T~_Yot^{T7)~ zk;MYY7_aaQdBf@GLz`fE7jRooOa=aU;UDZ>MAdKe@}t~o@w{7E(&K?sYjSLu&|Uho zko!Y6$CK!)2Q6Au6O8;JB>hS7NCWE=2}-a$=p64?`&DZHR*NF{6g2m#Nw8<})>b8L z^k%?+2ZKC}Hf`w=24Ut=$d~9gaC@z^)(Hp*`f*yzkEXMY*v zJ^Q^(HF@G>!Jhb_ZdxAyxZ-pV~F0`&e%^z205`DessNv~r`#Hmd69z z6`|{LItuYW%>ttz$hb>8`%oK017P6?dgta#9$K_4TCsctYScpIRKEC4ql;48qa#M% z$ocx2w-a0YreXy|Li}!ABV0{_9uF^rGNr_Cs3cPv_i2WZpS2=a`7Jjh!x{$CYRPh< zB!(m9PHCiHiTk#fTKwq=l4@XCa$P&fs_^ytFv)Y=WbgISA|9OJF!xQBaoS*>@Fir{ zzH(SPSF|Y$aMG=I2SMhf|9BwcG!JFGy-QdOE=zyj)kYhLxgvQ4=5yDw!;u^sEa;$V z{~Yo7_4FHf_%uW4V4G#DO^S?DuZjf6a(LZx+yGu(w?QZXN~%{IOsepOrTL#Oyuta@ z{UzJjh>m|=^haJVVxhpCCLr-tlDv739JGLUziUiv)DW0{BMiS6#=9&UF{D~U;oKJs zFGhaa>y>2Z=F}Zx(iGE8t{2-qku3n^bvde4GVo)FGu5F!kEL3pVSsGnC_128c8~dd z_Zn!2c&kDMw{G-!>E?JIWDFu+fb;oe0H0RfTd?o71wk@akp`ag16=z$1MXkZ{Sxx_ zUoGnYxFSyGO5&VHz*P%SfO~-NPwU55OXSxHhKb!@H8YNPN#GJBuE^>Lm=uHnBc%Zi z32fhPRbgQSPN`YzC@N-~r^|kGeOgRF&hl;qgD;*>VhN^_r?BQ17lQ8Fl7aH)WU-Z`&b_6!Q8iSmU$#2tny0)C`p-#4r25+E=8uN16>6 zFMR^cEc&}>8P>o|YR^E$mt;+A)V!v1}PoWR7X&D;O5@fNhaC@eZ^L^U?TE@ev5W#ro zveV4Fgvpoo{W6u&YZ{LG0TNHk?K2)|4-wu;v zaC3FEg?Jc(XSWktp+|7sN2N=^5TdZTFCnu|ylCL8fqg)~zuPyBZ|yp0y21?y!8&Fn zsfwJ>5lN6$`LC~xW69-Gs4t~GL@Zn^Z zwcRKos|h@@+p?h=&XVE_JfL*uPO#~y#kozwQ0h5KQZConqT>H9aXL1@_mMoV3Oa-e z%242mP4||^W&3f^DF8|UoHcQI4+$zGM=IKV^vbb85roiy{MnBtOqIS>5%e!f&SxJB%Yk=t7~z)ls@p%rvjErvaM?}qy1)lrBQBXT*Hs3afQw0eUBl0 z@qHw6={~R@BY7Qm9qiE%nu7>n(oG9=POjK9qc4jSDB#CYr>#D#BlGnU3RO$SJ(mEi!?EMF#FEFz!&k85^wA_n z%I}O4EdvDvE=!yE?Ej5I*ABlzUuZ(yi4az4oHgWDfFH-uan`mP;mFruW-_C@QCw21 z1M~DP*rs4Sejw@i^*K~KMfbvub30;G$(^CERN;aA&SGU z1GaXwvF`ZUt5Xi&dtHD2x=AqLva4F(-~@m^a4U18+GTb})VN_Y#Krgm8C5{E<+Zrw zW7pBHPrsM(qkZtJ0=l%8`slrFLkMKg_6G}mkv+4?i^CcR)BK$=fdybw(tK+j*%!!V zpWTLxNH)iN8ty=q8vS#v*>+7a;ro{Hl2*Pb#TTdmuXM^^V}5*+g_BGpLBH&$e>MJx z)FqW#>P-aO#lXR_^2c)%=(xN0=3m^f9-`gtEr=~e$g5!YVo&Elh;GlfpI;fWijm(V zekt{`!}+KQcRiPRTfRt77}Z*?Po<^&p_Y~@DT}+%?JPot0eGC;94)DMKfZ?Eq+;2% z(0KxQ$p`zMZ6hhG>17MGH*UFHIa;=N3}H8)YdBOE+OQV{IR@qjwpx8)^K5dJ4=aR< zPQ==A6qeJE`|FX-$^iSVB!bv~BhX1Sc>6-|(SUym^&K#_EJ3k2n^zIhc63k#QoH=% z+d&0MxK}-~JE87_5;Y$Qj9#;%`X|u*A2!$Do|#15D>oW5Kg>sjEP4YVD7l;b z9FkmzV(E;M`jjN~#6#{J^7<#NpTayEJmPDrt0z0>;{F^y#RM#-^Ko|X0@Et}uOXO& zUfA9}NY?1{3NNNwpugszh0w;T`^r*x$?t1LL+t<3YZIX^-l)`UfDat;w6S@UiEChp z@kvvQLrx)l0i#5Jd4*{`(*5(Qn7^GUZ8?HpZN>;F$Ldob^BM)8$DmM|7vZZbTUV^<0Z8G*kJsB6(*Gm*{_o*=%Wkl0MV zXbnDZD@%oBD)dkPTth1Jz!fUi)&FcH#cq+$qofKBB~n?C0u?O}=niK}{(g~_hEy8n zEVhg*Tq*|}7Kv*EcI6z$-z?$%(3ML_NGFp_qK!{yfM=bj;g(@~_7$_sMYd5o4L(2n z8y6TGwK&&w6u41F2gnnmTc{c0NAVvKUhs#u{uz=6-JZ0nuC|NW^XlIAnKFFuL)eEo z`nM=gw1nVV8;YncQHMIzc<6P1ZhG^(t6UE0n#Z&?P{ZAv$mA<3C23GS3{XcQzGBJ0 zyQeHTFu~~RLT#e+8e10-H?PEAyKt79iVcp>! zY`^~vmT<+v*gV)uib|41p-Y;5u>WyBr7xv%(q32@4eK8+2axU8IO}!~p zqKz4Byi3LI>#umlr7w<5m8-u29EB9xRH>LOe$Aenr+VP1X)0?mF+;!k;CmKtsQE|c>@JxP}W=%a-Uq&2I4Z5p5yj@qSkbK zY8(`^#NoQbDb6^g@!Zq;7bVJ=e}|8e`0s={z}HckgTw?kRaWa{+i zAo8BmC_{-3E00@G!lPCcC=ZbPAyuQ?;io-hHu8OAsbI4}e_CDyfGGUlXgN1-s#W{Z z0d`Eu`LI=nQDuAlU6=i@G8RA0sxs@p?GzBvcdHi1(ADEV(Go372n^?O0b{Oput~#Z3)j}r?YKGo*Y|ljdL4c3rj5usC~HlbG{S8J zG@XlbH@dFhOFrp6h2Q9Uahz9GNC~C=OxW~rWYNEQJkhGPj$bSDIn72^f~Qis^r%;p zJ^AvJlOs~LtfKvKh&uVS6ss~&w0}H01;Z>B{K@5iZZ>~9bsJTpEoVnft&+K%oNjqe6And9EVU#WJ2RepKCtHL=14{d zw}?QCnnL85_;P|DuL06*zpFh{!R53<^|2YSG3lHvWWfv!n=A5Pt~XWH$8{Eg`;~}U z)^D@X*0T?%j&rV*dA_n6o<#}9@rC33uLWz0)z?nrOZgSsf6qP0Sv#FET-Nt-uu(${F zO-2r^4k2^FYtSzqh=FqT=aopKV>YQdDK$~@7#^!m0?Hha86BMj9-Gcv&-Tq;R!-Mb z(tpL6OGmtT$HZw4JtwYqsJgFpOtb)nRj>ID%J)wq3^DTbdwiCFAE|L`Gt;R5klVL| zkfNIg!5-`%;PK2$3}zd!gGKA0@34yl;67VpBiNnAGce<3{w;28o;j_<{n8Fl`u?ys z1yHqN34Qyov3OC@W8Z5bjBfTsCU^}5nOCSywhHHv4mH^D9V-rL5K>JM+=&A>Y)vu~ z53VG0k4nHGZ%Y;5q>@4coJhSexgNEcCfa1oO_JP05Q}$!XSgng9a+d4Ei%b}1~g;M zjyZY043pLf;)?|CBM0AL)2}!Gamyrnj}v7WSs?c6aBlqwz`O`W_P>y{5w1x#h)6^2 zXa|`~s`o*q;^93!9amL9;3#tM`hiQU-a_;~U(^(4;dEdze(+OS$2$;eVCU*?cwi9e z1j!ShOjz}ls!J2)DlhoyMnLeP%q|GD?SgOFV83JwtRYe@nXW+<%59Nf|R zeU0W(0DT2n3X2{YT;;5XLmdtW1BT>nC9C~H=I@(86(uV9@nQ(V0R8N7ls~MGzuuq^ z>SP%glxi0bnM!ZX3yH5-VMM28x&r5GIzj^Wq%8(8o<)I}>N)Jo$uK^m#GcU^u)l2r z!Yg{n6-QLn&Uh1CbaX|iwe@YQbvOx1V0>BYgA&g?o5`7&rDxfv9zu_B8a8QXvO7<% zAiP$2#U>Tbn~Rnxh4HD6XTN4xT03_cGl$OI{^q243X!8E**6Es!oD4PaZh}jU-I=< zmRC0~jguL{@XsaFplYC#FQDgA4q($j3$+uPyZJgsW1D66~jTGZA2el zhoSus#~T91TSPIQ^;YPz`%$3bBC~61^KhLHin1XmEUfMDtif9o4A#+-3I5e>o=G#{ zOZYh?Otr;5Yb^9H)#^nOH0yL0nY177m@=j~5jk5fdsi*17Q@MxyKo;5i@KD$W4iRc zJfMlFE^utgt7!}>r_u28s{!U(L@uTurp>JL#G@dmy6>eg0V;Gh*&0~1Z=S9ZRyd#R?N_dl}Tz|{P^%ywQ)<3RyBNzszfPnuZ zoTlJ3Q8KuTbJJ5Hn2Mv85gnEHi0t{oz2_7UpPM_l3)=N-DSY6wBlu&N&s(YEtUl@t zOjEl7S8;2A&B;8^8<&2EDmT5&v$v49QjdhE&HPVUaCbYtqupxunm$`l0qxq9qoY;U zE)q9=>{|qn^)^&uNKlFfe6~#sYW3&MYrL?S2MD%R0xw4esJ)@a5z~CNh0JI*oj0SE zHt9(Q1iPa7GkI_UF znPCAVk*qLB>C#~G+97>rpE1KT{Z}bsvkn_p(5;7-y^A%OoT~&ya=#U3@^;LWrp_s5S5mg%sYhv#&88sm{zPjA5EYTAp7d}?F!v*iLDM#Oe#w@bkg zldjb>hN#d}dUv=OGa_p#tQt@EnR}zL*S@lKdt;ehiRw9-^%rq6 z#h+_Bc^o^_VrZ_nHdoty^05%!2nO@HBEhUokp^6b)u=?=(}BwBI*y@GsbG$uU>i71 z06M9tNu`M8{u^k4NhR-6?o}HBwWib^P!ISw>kU+B7VZFC8Eto>t%ORe4$ZMfFp{nj z`O2p(qr;mX{mYSxW@5QS2U~rQFB#K=e0i|)+wl8B8F6KO?Zt#Z4D2F5*iOGIME+;dwE8J9K>5gF(BGNOG1#?j%d!J z_OKFoM@Nb@J^YI-;15k_@jOT%Lfu)ACr-=+%B`&pR0JR7NCpf*o}{h*HIA~{RUF80 ziw|gDBJdUW^1)5FSw!^t06|A$bahy8&On=la440jS&#iofas=|9fuJrXkwxMc&PWA zZOD2xq33xP`y0qEmL~16fU* zx&fkKga=bFCwXrWACEAM)UP$lYgUS?4asiV6%qi`i+JLN_X@}bp!ed;gUffmf&*l( za2FcW0W~mI?8`PolqWbwVvc7VwlhK&>3_~~A@i1hukvM2G4sSEo_>gCnyOqghv877 zk1lbhHsPFZNp=rCwX0vGEoi}Uv94HX*++ZpHYeDBW6SM*fvSaml~WXu;C|W;2Hnjm zOm#{_=5~PxH4zl;9V&qN05d=rcAQ4X<_t{jopHjAnT8U^wq+p}5`kgj@XU!)wW~D^ zplXTeCo4u+4zKNN_SdPqpP#Skuf?yGxwb>_f2YJ5zyn~b(Wd;OSSZ6%pT zkfl1xHTsI~v0IfqrVuDESez8q;0@Pbp-fyMjG6r!V(r~g1H_2lhQkSvMxyKnYAsGo zg64U{LTc;x^hviziw(y}q)UFjcml%x4%tMj*SOtU8P?G9nxdzSpNk*dS3FElP1m}9 z=3vuUuW+#1>-@X9jBMX;N}HTIAXe^ba7(@OfCO;3_2aS$>yw_`o%62@#Mp zz4O2d?f^xGwy15nh|)M3oWCTYOLqGHg5`a-VLARbI!?GqdK`~ob{Y=FgGURU@3Epv z;mtVHQOwEy=iFG#GDD8dlAi4QE%sb@Ca=lQ)qB}%3v=M|klXD2v>Dwx%vtoIc&b*3 zvO<$kXHUx`eXXhKNBkdq2vs2W*b!rfzk@%>RR-k1`kXG3L4FfLz5x35!q67(<1(ao zvlB)teYx31oDMBEs`&n&$L`Nkb(wMr??T>`(5KGBmcKvGS#3WN9bzsP>I^(UyF?C1 zd6?thZ7e(i4DL>3}2Lv0+pxje- zAey_DZi+V5{O{-`1PDL7bXP?!#Q)%9C~Xw_kT1z(uLA!`W}aRuc*H+P(AyBpippC{^rZcvxwD*3%Pv)Qo`x>N-2;FBI)6Z8`v(gfWea?#J^qSO|^ zHM`;U;Iz|gKd*&IdPZo7jP4~r6sQhL{LEKCxpcV26ir>?hMHihe0?A~30H1w@X%xG z=%QouOy&Bf^8kCo*-)*oLA0P6cnQ!byb$c8LOY8rvJG8h4HMS?Jgn<6IxC#FugXI1 z`VG1dtdScHA~fxZx|b=~OoJ%6=}nSMuGr+L{|Us6&~CK5hg9ShnludhzB);<_k1Sk zShH|O{BKAP(RiKvO3V-Hb>tvyi=8{RhrCz&Ap|PN?>18Q$xS(4DwrEE@!x7o{`WuS zKw9SV$XHdv91t0lR8L7H&WV&UNafT0AyB@0xY%R|nXk)eY5w*sC>+hTOw z$~Ok$SQ~@ld|#`DYzu4;nlZQfwB{^fDjcst`h+PxbWNYC(Ig4nvia+X1f>Gvc-E`e zhcX}U!xr9wNvIt5t3n}{y_3#z-#IJqZGqK)4;3)VSKb{w6?~dl(ZtbREMuhc-_h3e z+4ZU+FvM%UqgHMx{=XMMA=H2Sad7NPL}p~xwq`7L%~wqAq$T|A;4aB@@vO~hSE?s* zN#9%I!+ZY2X^a?cgepfi?frp>QGM$T?YKdM6#sf+!sP6``dC_bXYtu>)j4Q*PjXC6 z|Fiwiwa`}D&e}Pd^TA|-%*P`n&r!%{ih0R+f_ILGdT}?GOl6Kc^HMX<^@KD~$S?PG zt9q=mR*%nz*0Z}IcrIiFBCphMl>fR1CNJJU+t7)tW-?<2A!OD(H@QnPt|tC1i8X|f zcqp}K)3?gz8Ssz)oBLRrmH=wUC?yyNPq$Y*vSiXh4S?~sG~f}jjeVF*=bt=u2cz!} zV9?C5OP6hH`(Q85NW9=EvGEiPqypcg8uQwJKz$+%D8$Y}34iBGp)w){B%^tVqH3V8 z+SS;QkZ+F+*+4GucRw$|%{E>~>T#l=s90Z(*rhTYs@dQ|MAzqH&Yz-NX~@$t(cBc* zUl(Q~XuvsqAX-KlaZUzs{BiCxaNCI~g^cU@bN zJ;kYlY!cZOcdtOP$y6#wt@04xRZ>k>}JCOB<^S_l`sjS)b)sEw;c z6v3FLN>#{USlN@iE z=9b1+h_Tr6>ZP(}Qr2IzSm5I`iwaU;=}`Dd8a5Qw^ImNXM;;(jC~(3PpKC=oYkoz# zWg)h!C^ieX-RWlbYI;^kIOjc}mwsFq@Gy`1%jWef<0b`q_}?uHrc){W-q;H`bK3lq z~us#Av+BFc8I;z{vOY*xM0p{BIKOrBjJM& zZn<#sq{3M3>ZG!ng7wSU9jei|-b99g`qmH;6m-5p?fPmi3|}O95=LD1Hi-y!N@eo_ z!^@cUsSCjGg;jMeVgYnjwc`Q1#%>_wd#fEbeD_E-_BHA*v1w^b=iy~i!8Ac4Embgz zeMGlKm)5_>_YXT)%dp++r?8*9GFD={dG3laFi_WE?bnr_dYs2=wxU8QJI)(W>ZR2P4Zw!X zZgl*C!vEY$iO1yv+*ZCcFDkJu;lC<-Z&v49z&WGz?Jv=k59bFJSD9{SV?!Ni4nt&7 z{^6Tm2?**9boiiKQycYKBblu3!!YJm`CvavMr40(A8TPjUO(*1ELE;P%|#1>Xqr&i zbh>=jsaSMWE;@&kvmW4r&ZBk_#)CjAKTkaGEI=T`vLmN?0))@%N!XY1rGu@0_4WS<|%Hb=XvR8i5e&i zkg0U}rg9zJ>A(-rA(}0_JauH(*+Ya$2B3J}&jzu)@TA-qE+u{ipY&$ABZn_q{Ys0! zLuuqU`^3|fTeN35kr!GvpUuY1hZG7%GnVw-d_q>GgwV=1$w>h$inlXo#J<~uhHG$@ zWU+#H#a^9roI2@30o1E0kXIpqS~yP&AiF1+4dRw(w3luDEs&hlTVl+=tdcfWw}P6S zDM+tf2b$I4I`jpFRFMBR_i&d%*$_a^j-u6ma5HaxM}*r{(30FtNV~b5YX|G5P|Sl4 zD5Ump(pA1k)SX~Ma|z_`khagd5QZaV`+2bIo_Hy z$aHl@!3Mq7wueQSl9X#XhUadrxkcS3vYojBvNG@<8e2KUc&lf0#YEJ{mML-*j;EQs znlB5JAEad(I$*Lk@iHbMv?`pcWkr+0VV$buw$*X7JFfsLYB3wtqwHY=_Tb&!Zdv&cwQt+j37r9bxV z>(x#pU5k|O_HYNg=zwGLzX0VH?MT{hB!Kd45*mQ;KtRbs7F^Vw)t3$)PG8re$`Am{ zQ5Py2f`@@}eQ#16EOKpxNWq)e9^m^zkRoI+0(sbRVd$Vd;l=v1X18L^oPh!bsxj(v zd*v=eT%PZ)-%7DD7aYSCMCt5yvb>nRAXepX;suCZO>ZF@FqdE{2o@#H8ftHqE*mDl zHBUp4>~b0(GH)G^*EA~AEsA)#V-N5pGckr=XMye9cpG!B8ZKn?Gz<%XXiEL}cVwV! z-J|Y|d0kzxs)^60rAvm9C1^lbLxeiHjrt0QK>eYu86wojXuSUG`B?J-1Z$c5QfJMp5ms>z z{LnW|&gJgB7x75UsQ9wLlU`simPRHW)k~4E=0_iGgJ(_~ks#4VTG+~MSTJA18O8LQATkZhM(PWzX<6@xO z$su?JF@#U|LyNgYBvO|BN?b7wqVn)u)Q;%~ebdBTl>#zi)QE_jjgB zSDm*ikk3Pcy&a!x$DC04b?guOq@P0&%7c{23fN4|KbUO5`=@Wwq|6>S$RFOg!La<$ zfcx|})kRC)ZiuoXs_XUEM^oizGc-WTrpad@3nrjcesEw&)(K_7?bMo>L`-GQ6zH&k zZVK<>1T>qph3EW*DCd^YSni7B;?z@dG5RciE)@cMt0R-;uT^60d9=ezMy#awXXwW#FbO zYDCci)I3k&cvF!&WEx==#NOmDL(R4;f>ALn-Ug8aOV$RJpT3s9zl2NYp*roL^nHD; zL}H-xd_dwE?F8H5_rB`gQ+)fUfRA zS)1x(tT~OVS*FA@Y>ZR0C`eSZ#3pgShe*`Gd1G`B`)@J)f)Fs*pfi-r#4KZWI2%qiX*S z^zT0mCFNRKm-#ck4~xoQ>Fke8yUiu%Ao#mh3~y`JjXH#H0}WJcx^KEv$@#qc zH%vcR9t)A{r2psiQf};kS-F0sI@=i{+{QO%i+P3{)`xO}^!nZU>0yc(+w8 zp~YHSZ%t=~m2YR8itP|;yG?3$&QY?%i>@HqCqp;~x#ivI?BXp=`8coX)^FA3L*@C< zQzMDy*`)6&uE}j^`s(N?iX+*!Un*B`LNmAaG&4qTzN4 zkxMX}`B@zS4JbWZgaID7RkW>Yn_*^i#A!5OPH+|otJ}-2w@5dQxknjx*;!~SJPCF{ z{F3}LM?1C{L~TSBS3GP=Y7CP?Y@neVtZ%?LU>3<^V@6X?+yOrw*7QWessAmyQf zHzBpt5O6>!Xh9TVa;5-9S#^IIa+6WwwGO#>EFC*H=2H1chOs|j>v8|(GIeaGvf)?V z`PZFD^^DWCF1Jp0?3atp8kh{I?tb|rgIfuRJObZV+ID(un4EM!T6kQ=?4|HaMDPjLM3! zir`l4P*=RhZ?Xs1EKWA}+*^zwbacu{Fw+bsS?3aY9p%}b*V)*4v{|p3z$|sE$e6rN zm!YP=GpfW`a$WYQP488});8LlH#N<-#O1`W*X9h%T(;2zn{T|k^Z8@_3Rq5UYCcD$ zXFo0~<)f(>khbkf(Lrq77f?l+XdAh(;U|T4=$cQN%{l`ksTY5kePg41r>bvtb1?X4 zdQ+N+C5#WeP|UX`g+O_K#~7!W^6uj{(GzN63eGy+3}y%SZpN5zJu_H$hUFcVmKAky z*_R7Ns4v30o9MAa>dQUosYR%3kC+#m1gLqr$uJ{N@gLtqu|saMlzp;V$RJ9oK$I(` zuE&4(+OyHJi5??tzIi_Y6z|!0d)`}M18!z~8#qhb^S{F^*>R$Ju;wPEv1)S&TG)rB z$C(MV$*}`?Aslu^xg1&|clzY>5P9X=ObJ_9bio3>(@9y$A|f%YOFdzboA>ygB`Gbm zcqo8Mx0^rCy}SHqLaAcg(lAPv`g}qj3GwBsf{WmsIPMq}sHhe$+P*G49PT7KdQ0jF zF7{^OKO|SA+ETyl)P^D63QG0Cg@S6okz8Lasm$FBcP$0`fI4r%vr0@C@d*irW)$7+8lN^#7iH8q^WL{(GdHY z)Y>lB9Y(75Z-&FXY^Dw$vKh=)QgE`r9&(+rE}8&>tEB0fD8SS$I|f^I_htL~?3|`H zM4$OaFMZ37gXgo?VifgK{GjtV)w6(6L{&`8CqkR=rQ@o>oECPb$KF#UiUm0P8VdG) ziOr4UFP&fPSxhlG&SessBiGYH%W1Vw4w2~fdd1ud#>5VPh>%$w+}T_G8*sM zQN5}eWcfvJydk>LvshK#H<}9U9GD{KWi{fr5^$)x4OG*K14_IyuWV&t8emb0tWS2|Jp7Q-a1 zL-)rSje%7#a#}dyS*M8|WP<9F#!}^dMAb8|DNrGo+c4EP<}$Ec@XciOzxSb33OWSHA?rQ4Cy+;45Ap$-;ET@kQ>T4N0F<_)qMrvHKS*Qlxt zfv@NTEV3#5xP}k>hv6fz)f|iPUg32Sm!4|9TQ8mHU_0|6(F4sAF_P#nY&2Q9Vr@xm zG`D%B#qDIj=~u0l22p`mEopo)M}V*Z)zXMr6>;pB6Dg+qwI4$hsjenDBmml`z7L8$ z&~m^Hgn|VHv$2sulAR2aRcLR?1F#&3EY#fc&0|w{92j!BZD2)uO2MW)W<|dl-=FgD5<^>iy;+6#z$n&pF0+f=#>A#@m z5CRy%x=lQ5#lu43#90yv0BK z-iEv0u#+b;!F@Mp{`2iZ(vur;byXd zvE~K01eKPgTHjb_(sdbz{QMr;XJz)pY+*A3MUm{(TaO@)LFR8XVZ_^X7 z(cu&pwZTD>Zm%FiUd^lT`!kap0e#y$5&ku0*;5+a6#r0PaeQuO3|-9xo6tMqpsaut zbk*?~J}*xMAveU$zGTS)PkRPiZpRJs>9tYyQ_A zfpPZ8IEG>aoQ;z7Xd7J!1B1phypG7i18h@xWpZ5DXER&if17s~3Hgf#Bz@k1{uIKC z-Niu%B^r8zkWzuMEv*T@rmBo`%`kv~A}J+}(%s#SG}0Z?-JK#J-7O*AF*HLwr_b+mzk~T>&pwZRthK(2wDA_o z(45Ovcum=5YqYlDQ{$;uJTf;HdpcnVBt+ghQEI;7oR1Otu{p2f7-hI`RXg~m_K=tT zw>6^Tbzqlw*@#wNQ#-fKKw4h!#hizX7#rsaX z&*Ej?AlGp+^~eeE1B3QSR-4d>!36}QZ}8!4aA1>TrEo4fgIBp$C=sg9g}S<(su%AA7*wb{XfYwsNmcXVowBz7CLUc~05uA#qN%lYTDFwe=WKQt+qUzru)Jj_trjQ- zAI#1|C`p&sm1nrFM8FRi9k<#~EA>^5fK>U=Ta9+6U8`htTEJZ)?0P<3q?iow zPlw^>1GK{>u3hZAQJ)zQV@*ls-6LrzVON;DRNNCTWyNS=LOY!4pXNlD^^bgUS++-0 zJ@JlS_l{M$r3apyMPgSM{6l9iUSCHeXEt7JZRlMzj0oFJ7cvV9VmZ7=SXY@WzOdWq zvqI#%3Wvir`>OejHx*!0<>M=;N;n2XR2M;H@71&=qV)KAF!HuhxC)$n3>GZ?W;;|$ zT@sEV?9prMhK%D5Yu6>Gf8knn=8zaXp{k8V3bbM836r-Hq}))+ouynn@sAxOdxF_b z=!m6kg9Nm^l#n?;GJy^Mq2289(eJtB|B2-2WRf>$i&n+!La^VNC&k;ym~?X!`&im8 zd8|zHqnP1_p4OOP(GxTurAG^p?A6MonGWkKp8e6i9 zr41!6%lZqgdoJaECg;F<}{pr4vFGMc$xpJ7GYcZBu zY{UdBd-QJd)Bl~PXwoO3Q+2hHsHvf(bj_`Kk#TycM`0w{*PZ!Ua|lUEj^8-zrH!7T zp|{CE9R5Vu?DP%vO?$``3s+?ucF+)VmJ&YgbR7n0>!X+n@=zsdr_W^~t4lN6@;qM^ z*S^<_&Pl^DSJ3-ZTdOiv*xN>aqRfx(mie};OEufvA_{jwp!g?g?rgVnX%L1r#=03m z+DKBHTYPu#1=WS7i)!#uv0XhgOC z5q#eR^7YCZtEDaba{1C5;p6&vLn+aV5$@Wj`vy9a`H$Xoh4Qj93_NSr!iR3qYV)Cm zs%Axaw`u2%KV_~@fd|<(mfL2>KW9-OKGbggzkoU^$3O9769T@Q&*Ez8k!YD|A(a~& zz`mMk_`g*@>cFR4&pJ~O(8m7BVrwT>`2^#zB+UDz-#eE|WtuU=yE-nYXN~(|Os5j6 zTR-R4AwS3$%(jmc;-uSqZH`k8`wRFo%y8Rtl zwVfh4qFT!cUK~0iDta8@yUY<`J+!Q2`?5OS5GRZ`N#I;Bxj&x~{1%E)$Cgn;1BJ*S zi&~vG&$AXd&#r1Avrf;@N=>xE9^k$uZMq;8c8|e@n0{^_atX)@0tMO#p@_eE2e-;< z|29bnTQ&KRuAoD9RY69Avpf3EUxAQ~EW@3}pIL8-!_WUi#j@B@*IH#ssO=9{2fuOS zx9-yYK@lNNTr=bouA3`uD;>n@vWTHEWO@FYV1gK?A!=;7 z)zle?n{DpQmR^KbepV^G1hF02ib|gNgIluNcLeo+41!&UHZljBuC*QW-rW^O45riG zB)ujf6}0No-3}Fd$Q5>KYHS?(*KspI<5^Di(6MQBrIwti{{&BlkNZBU00)cR{eHiQ z`nL9NqGIbxL+`sH^zI!H;zVyb?L_43clq$H_?ZF)pw3acr4tn7T8{AcNltFB^dVIT z_`&OC)X-wxh;k}$x&kPRt>f~O;Bo!5ju0rj+vDqRoj)41I)CnKE@Jsj;$D!Sy)$Jd zXGXOu7W3{X)FEF+kAy6U7GQ?^{Wih(+t3(TpAd&;Io8Bs!JY&q#<)8`{cS_URyg?(D{tWS_-WWB4ie920ba z+oBrMz|^o{LpDO#fAxKKYXT5JD3|Ud(u0j*QLX$cb<-jE)~F3jI$>y5&QsK=cOiJ0 z9_fXAuM|jdH_Up<%^!zr$JaaXuqlE-ehL_ubyp_X|KkFvN)Wt4wVT?8U_s1<1w^){ zn9-+RBe0x7bb%lQn#bg9lSnIzdq9=$h!=LTs8VQ(QsbZ2;|gVm1a{OQ36X?v*Cbr* zoPsQnYw~4=7-D18_iZIxC2skpTh4ujGl}U+4BbTwU{TxLIvV&;fK;al&>>>N%A@g# z)L<$6tgnjHuT*23O*M2voKJn1h$HxdC*Or&xVLj2U9@tgaa5~`@-(+WPUTFo%eFCDbn(8m zA@R;`HT{94^BGrF9x{c`ZYp=PiQ|LSfZT;v#(MC1eZjYB;VZT#;9xX9m??p8EMFLp zA;tyiuwehO?dEv6_LH0b?pl4+@qr!)JN%{(6{xmI)^&*k+;&rg`XDp5maYF%frzM~ z)}noCQ`KFHygV~|+>9|wV*MQwwgm84O#Yyy8{X&{%hrMGkU6Dy(%o;c?w`_Su7Ocr z)X1D&_EvhhW%>7m;mKf?A+ejqQrX6+oFz)m_%f}RWKd(mOP7QU*T&p=r>&+xU(c`m zP)~~3!&qw6MQk+sCa(1*%d60KR-Q(BcpK%YA;v$09Mun=;_ZtR1A}dCLcIJ4cW+%ahwCqN30;oC-<2C|u;EY$?Gx zgaK$y-L>|6EnoOsZs)CEOUT*ZtWNXglB>r!z zr6ve(8hAd{NYuxUcBzO%4vAyZ^H%L96qohZXjJ>^0JV;e09Ce4z2lcKR^mk0jrA%g z-B4}rCse;$$BwdpYn~!$>SA7uSu@a3X;9K}U{to3V$%LB3*nr0rOJPuTmt|F%dpXE zQDQ9-HCF(g^&>OSnBlsDY)3h051BkgVbPuxfp_{P+2nUDJzE(OK(8q*YSfl(ONb&Y zvs`o{O*%cwGCamiJnpJ2)wdE^?v2b+q41kJL_1C=Fc|vG)qfJ7rA^+uUTcom{@MLT z+o*07G0dz%yV3vDgHFq0*dJ-nmpS*@5Vz%mwrVh0-7G#SiNsYoQ~+RXmtLN(>37y5 zT#c7`5re>#db)bti8#UY3;1$@j3)s5N3Y!ns0=I(GoRQxaX&MJ>I!Nst(9^(JDvH< zyIU0~b$yAMjc7KfI%aajiW+0fEivGf7@}76Hu&Rn_V5}3WvVtVp<_*WWY4n!p z+tkj@0g*1e#S&aNM^Z$-cQLw}JQ`ZF9%6PPcA7%ucUCuSqu5P;K*ir-QH5!dSI_== zHOeq|l#d(t$v4{BkI+cOT#4BH46c!$Rqf(iZ=E+%8P7#DUdvVGZhqOf_wj_`s zy$WtWR1zh2>7;@05;m8$FqQ$4f3XMwQ{ztE8rA3f4a64$EYwSoGOqzKnF~fgUxNC1 z0jI;-b8F3e5&`&16!#mV)gON+}!#_ z&YK#st%N7j;=bvU}l#6njPZwT%T~?&X=6S=NI{C)I>bcMIdkvi`&BC%;Iir3D1*$|}zndss z0=`#X?A}Gb%4zd3vn9h$n!MPY%T?sSLX*@@*k=#yWzWXre?)t2n-=4ujxS%BY~S0| zuml3n_SQY*EIyVoTQ`I0Mxx_fJ0)T-Eu+Ijqwb~QA&W8sV<`zY;H0h1rA5m5r4{$91@_2z)5$|Rry0qVHRH)q`RGooAR=>9L7d)Cg z9#p6949svmo@YJi029kn6xRf;8+_0%DC&J1aK&RJXug!!g-mi4Y{QsdFscUjxo5Gx zHyQ}yim8Z;?l9@DBtigoz)R}>64b2X3WLo9Y(qcgKVtPmZ)bap?}G&>GTu1*KMbR!Z6I zT?tbvuTw+Z8rJhHImm+G=?#jRhv`nQxq-5d~C6;xzBHb2pR!G3I__`xUa(lz2F+ijKS0vO2@2(~W$ zKYC6~8xZ+Hf&lj`Tg!bInbruLkA2ilmRGKlpJF(O2}xqxz3+lr%aBg%z38}1oeZ@V zO=C@ib#0}H5uXPk6PJy3<}eM~S7c&Cy9MPcG~D=s&iPYbvaPxg>aSS)JAmiQN)L{U zqFt}=xJF}gx>yFQ3cv2#j|#h#pIoh9^)ffmtbipFQFFWua1RTD0SkTT5+p(I$BtI9 z9;b_{MK(zksW#B&(Ztawv*N{beB1BJbQ@F~ta|F@l6`4RbyJ~s(=1iE z+U}`7+Tyr7ROS0S6xdz z&Z1q{{n3X2KQLRmO=}4bC7+zSrZMp%pk=Sne?9NB^!FI>xF6k|dg`$fw0(YUJX5U9 z_MG7T+8Ot(fEdt#la(o)e#44N>31d;%%EJ`YHo+E@?c0JQql!)J@7Rr(LU8>_ zt>=1DD{c=h6JL&DaFc;Venkc#ROz<^O{wkna8a_7_Eiw~flLd=GY?)k#;!dY4d+4F zGM?mvL6{0v=Sj8B`Gd z8*A8ik;xq+99Jr4Lu(GNWb3Y92IK5YC;1sh<9e^H zFu<*qOINz|+ECv%qks;OTVO8ckNJB= z&VA3r%>~ASf`veysf_q}MXZs@P5<#nnZ1jr%HuK3_5SN-`clmxNwgOwZCO)3GmkXw za=1#yww`Y?Cf62~k#H%&FnpWrOL;8Pu9xVJ9>v3i4p*aLE9IBM2{Gkw^k-irGkH*i zP0?I@N@KzI+lYeUN}6qGXObym6JqoU9X9@|Ba7&-&AZ%r!S$IY4OOrALH z;=U>_T`7*UayY>O_MSX2SAg8`?SQbJ#l3opB?<=WY`mh_&5@V!TBXu%!E~X1mTXa@Xc7c<|G}1oj3ndb+whQcx_v6>3r1053kou^}#=8^cb~N zZN=uw6rohYmejohM|hTZ-kx{Nm%66)1wG0y^G}t!YDs-ShGa;hWZ&bo>COGIlWIY1 zIUCKDYt~N5G7mdegIOxM*#|BpbNSbwy-8`TDBm z8`)I>_@ZqMLiPO{$#i0G*re6^tZ@YnN1 z0W1axvz;zhjp@!q0gj^MpI?Z_$8%xp7^lQ;TgYJnuzvOVx!?DC6&OnyvNim~r%?}N zRX!8vKJQIu@3;o}PX*pDWqWi@7io#sqsa+YeZ_i*tn4z1@Bhhtd)TkC)K#kATKM9S zm+rd)!~71#@m6I^J9l2yZfpat6!LZwu{2%yE)2I>o6-vEuGNG+HRqBG=#jl!xtAc8 zpN;G@=iNbRc1yC0OA@I_bP4JMhLrZ!J+_{D!-nGYJ{p4qQ3*2Pk***m+QGY8?ZW{n zXqoUy#peAW7gs58M%!LLXA+(juWJ^@U;m6-BDyCDji-nRF_eL%D{#4yx41PmZHEmf z_;~WhN8ndZB-NN(QexgBhM23I0*C?%I!HxRLN`KTj2&d$z9K*3CX^`mPnAqY!vhXK zqa+0DJ;0Zino<^fThZE5I_2xiV8yYb5KnDlc=*8et1|f;$6{R!=^kENT*T2BR^lp! z|D|;XXJWeternVb@LfNz{PWq_*9j@|0F*1i|1AoXtF!|Ex!+&^aU93-`zp#q5X|Mr z3rZxu^v;s6nQ5qbaee^Kh4)KLIvsnRVcOOo=cw7W1x$Xuu$j@Be%vlQ4frat=ul7| z7e(f&n<-tsb_89T-LBc+^^eo3yA-Gi8Nd`UPn8}BO~b-7RUO`J{n5h|pcp$!a@>_L z()l+Xz7fGLv@8#bA<=bGUc9CB99qzSURbp90Q%3jJl7CeDs6%O=U)c0Sl8C<@Fz0IegzvhftUm%?+3m z^oR@&rpq=}P=A70B>m#{{$&Q_UIazbZ=eM8#UatfbAu|aihhRiBC#?2^;fF$Oda<4 z-3>i;{iwDm{X(h8d}2ymIPKoA!dh!_*f60co=IbtCN}yIIoql0EU$S#y{v7(pl!j= zej`4eToGB+iots^(v6&Xr&wdfRCRosl*)s34vzd3A{dFC-TJzYFadibk^FbAZJ|dB zV;P$+6Z%-w0>ys6QzGs*YA!)fZ^)GOeoDX)TY_Hbk&x+)+bde6+|TIcj)weRoQ~x= zltFaD{w4uRssjwgC?Kq?bElTLXyg2){z45AN{twqPUczVte8*t<;w2+P9T_kvZL|M z9Ddu&JA<^QNNx4|AwZ>4ZECzHW#u0B!z$?wZnsmNJ*>xyw?<;D2F@ucGl*x^!ssB8 z(5>4r03XCkP@O6Xp%n9JSJAwnP70?PvG!uC{jJEbOP{NO{lk6cEJd#gdihcwcjh)E zL3iZn%SvIg>pC-*#2pBfEtCbABbL7x5F_O@`(G<5!>c6jQ^d>1xs|I~bYsu+f;IaJ zK-h;E?)83eK;++u1gzB~wz`A2NnLS3C?F-vO3m|Pmrdkpql+GEE`x5+?lx}ZxbvK* zOp=bnhr2cOqQU273u5=vjvJ~ylr{xWDnX9PfEV<39a+<+1#5Y$7oRzlwD=lV@Id+Q zG6c)67j7Q-+{xQFzt#fsQ|yy}jbws$bAhdoNat2B?@h4m-0`VpyXdv7VzFc+pv+}D?PA;K0dle6b%ZI7ahu9Fnf2~odV&DpKPHVtKaARUR* zg8j?=8aO|i#I%hA)YKRaqcyo0F4Y=DbfL7ALzP9)M3EsAlAw)6`MUqCDGiTb!oJlK z22Jg#e3nk?E8YBJV;M4C?Py|jopV+(2O5kw7HD*aLa$AJunmVFS-M*)Pr8C~powck zdKIT6kM)(e{L$LVNwKt-ASLI9jV{Ch4O)UWU7|&1+uzAj7d2Zd8?b+LlRf?Lo3iun zp7hLvkHypWH3nW3Cvy=X^OQef7$dhNBx^`1^WOJ#iYQ`znMHbZEds&aj5aV%HLk)E zO=TJV3+9`JqNyTMZtu@G?v0WZHOTs|0ZQ)IIZnPcBT$Z)sF4y>ZWZEw{6yDkSy31r zi+eTJ%j|Pmx%L{TZ&Xpd4o-SC+00ZyK|>!IwY4b>Vnu%WNzm*SeTaY4a-`t(NNB#a z+je4mC}$vUgZ~z$T<%40@W*vxM=0Q#bv-XTxL?;bP-!V$tDHK#Go}K4MfAq%PGxQ& z&-tYC)_CssNoiG;{;|$vm;1Cr?1$xU%#zi`-ZrRTXm=4hjT@}<>8h%YZRx`IiC%2Y z(tgpd7dO*l1xO)p;l!Of9xvA}yc~7dounKDmY=V!t*vW;8nHR2!|bO^#sQ2>KI=43 zylX}zszSPQyY6H7s+w?H*A*2A*&=(`vj{&9qnihC=y#Y4?zkmRiuhiN)e8LJ^Dd6h z_yrH9+PLL1Te5LB_l5o>nusLf&_sg$Q&nbD!$6?0VHHym_klL1MfKy9jg3SHW?WWD z^~=E@o$w7%%sO(O#Cn{Gl&-5+-I1e>R9`jZHh-HT3E41t2?u4ytF{W2c2G|8`Kw;e z=-xR;z3tw)%)q;e_MDL@p}Qj-a{}3>5`}TsZ~O5w-rWfR`KeOU%r>m#)V!tP&JX*Y z`mz9Wek)Q~sqzZ4o1kZwf!?S1;LVw|hw3--PHms4ZGTOh4qjzb@5xohp6_#0=OLy> zvwLYA58P04c?iQx-IB!3)gB;aw>zPUCB;zfcZ3Y}7)gusQ=~I?av-I;t$D7z25#<} z7yF@8x6{o}wJ8t9z&2_~`srtpHMtUfx`Nuo2NhrM@*;x0Ur{8-#$XJJ|B8G>7)4VQ z7P{Tze+EZkhmiy{f3v(4o#W>yci+nmZ8g(*xa6nbTDGAh@tXQs&1P9HaxL2Pik6_S zFEaFs;EZU=pyMZy?RmBJ_Z{|ZdAxBR&k&@A)iKijKOwJQC|KCU@!|{-gSx)5@h^qGu;h7whlta~VP% z;^W)`mYe0CkEq0rv_&oCYI1h>iz}$z1uJ@p;>{MlaD>dMkNm5ePXKy#A>3zFh{`=r zecdCniANQlN9jI&fL(UL1+D%;Zq@U^2cA9ts`txx%gv?1Fw+2VrP*|5kzGy$oR=eFU*aPx z3i0=lyY4(w;qyb=;U~8A}i@FYfiVrrvjCE z<+5W7+;9}z0}!wEu7xBM~ps29oqvqegeZs5Bm7pW){3{p@Z$V8Xknv=j zLE8c6$LQLBr?R(v#tDME_eoRG6JYt3s6SdRZK@BTU6qJ0Uxgd4@QDyvXirQ1SS-My;ad_9x)6@4TrVC$-H8OardGx1?Oz zAkg+_MK#G#EmKl{)}*T$OsCR=s_CmYs0QAMqHIlS_j(4~C^wAyoWz19_|7Xdn0-$x z(4L7($c>_Rdq2ha+w!cW3{NA87*(2xr0)9KrD<`~`*(kQh0GBwVIauj6^2wJB|@)_ z;yO_fP2!w#IollxRZ|(znBKnzZq`ONW4>I~x#<8QGZJuAMm3>_*K4*Ba#h8AKlNU$YPU%n#dF|} zx?F%irG5Kyi06pLrs`kp*{OW4jt)C79_MrQ`wx+@cE6K`roan9m7Kx=HS=tKvwEG` zs7FYz@*Q`3nqz%|;cU=}<>OH4@xIG$^K4GpHIv!y+fLlU(OglY@xkJO8>MONK4(}0 z*XOLEgrEHGp3UiwZEMV27w+aQXP#{M3w*)+qNTgUUnKt`MCgV}vtB~2Q4F&z?}kdN zwrfHG)fyxC68!G&T5%NXk~8-#3N80Y%E9dM&Bq2{NjFubNULcSCzUZ|-{td|VTdNA z;rG~1tf4ch(00_cYU%W9t{@JfRZWmZDzH12tUm;w6Y&JE7OGv-kx^QR>_ul^*f+0uL%Hk0@3 zq<3gPmhDlHe^iV)f9ct2%Z>@IcVCZ3jV~t$XRk1xxW;lud$}6A?#=UMLo|%7;(;qy zs+&0gl&=VH4W(E$0IM#3vqM4`TG&FQQ~P0 zl&s*3oD3fMjSB6$ry-|f`Zs18B!`0GZ;^~;uwgBy*Y4H-bzq6eH=Bha`x%UQe|w!| zS7i``ZKZuAs%_n%*6%QNh3tmssT)?e@D&hvZ9Dgm>_s0hryYPrYTGbTsno$~j!?@Y zYSr*Vqsv{st!=7k)o2tode+1KBTmo;|CwI%c9QlS59@|MXK?qh$wQRWA2%-xdBMhc z`9*#M3r+XT3xC6i0v)2WO)C`>ly!>?(>RL^9!@o7f^z^Z<%NU!~)l@s%w zJk-W6s_xY<^2>|xQD*Am&fR6P1-#p}lJ+d0@eOfqB*PpBrAZJ7lyW zP4(l~_{Ie#MD0!289WRh=D};=pnzR-(4v5_MCH%hA>>>PRiJW{TXvtE-9*pN8N4oJ zoK4K_yhZ!CCj$qdiT&>X^-=wLCe?Gx)$uy-JBbHCSEIUb4De3trxj95LKHGJy}O;! z9V^OzgeWb&9S6f2hR3&a=E6w_POvnhDOu#P>ef5sHfhu8*^J>c$si0&4 zcfPSEMW=JRB}}%%I>SR8LeqWBS~NC*PId2Ri*lvl?Zcj=u7$<0z-?gp+DA z49~2g=kFA3QkI3;W?wX!K=-}T*UYYjMxP2+7XL zk5-JUg_Jx&k%^)oir&vg6Q&UC)mi(*@9dT#}|S> zwyxp1O)1#Q?Mk?ya!df(ux9=v{)&^Cr*~4BvErwFw}_vQKHqg8lxK15!PN%(ZMV%W zMr_c+wKHMV4?eL37f2D zvC(vcN0|!B6;vp~B#9-FRIFqgXNyM}g#@X31~BR^YiXJ^eM^QNI(HY~y6*|Y93C&L z!uN55$S@L{Y)l<}xKF_&16(;kKpP7c z#@H0L)+nQH%slfVXR>M9<;P#)mrI?JF*Yi+w?Q{)-|{c&B7}Vg@U9--C<+vz6RrKN zF2g5h>1qHIQ+T?gyLnK9_jY-S$ZIhBa0~SaWIZ1wwV>l}RzPn}sO`lJ<*Vfw1EQdX z+3d1C_e~Q_aqPo(@?XdDF9?{N35O_)u%~-!tbD6G=!v42o(Ab+)4sNMDT9b?QoTJM z+`U6O-vb8PYcyI8R1?GZ1UFH-BESl`V7I}fj_XlrwMJ;^MhZCjL2(K+XTQAQe!cCd zhv599ds>8U{b=h;A7xk}^H9#ToGt^Ua&$r~VoqDw#aYY}B&)A_w?%p6EHF{D;QjJ8 zAFzGi=Fh6LcryR;`bppXSfR*$r@-CJWou$PI-+{~M`{awTo&;w+#(IP1g0`v#f(#W z_q+mT`OB|%|L4oHpTe7P;s3Z4p4>z#7@O5N(YHpPc|DnsDYwx)bE2psVwWlc#<46O&q@5BGI<#Rt zWAkb5z!QW_z;pO5v51=aX^!-_TR(3)9m!_q^KYdaM%4=fp1|0P(Wa^ccT<0yd_(IG zcUDP)YOKaF|CxtaNfi9%ZM z4vq#^6T32t~T(mkJTr7t7!u$lBb2K+|q21&c3NEk~;yrFt2!66&P>>5qM2A=S&Kq&Ls8DhHz}W ztLxT!qrsvi8<`|N4F+Rf^dK_>u3${#U@lrvL2xRO($9Ik&L>Q27!Px)c?BNv^!%K8 zC3#sru5oa&l2|@f<=1tU7wU4U=dt(l;datr7!uxCeeH%>W_^Jtz-O=}wntYIpxD%x zpN43{36TnpmMpuP0^ASW{tD$BcXL#Dz*5`!!u*w7d_Pn~=rVX)HpJi(Yw_QTy!OTZ z?DYZ$5ib06pgF!UhTt>qbe39u3yZg5^fc?Y9rls%3do#0q&|jDvc)C=Gvbw7DCMK- znK>N4OSMjM|9Z#}*-}uETZH;nMJ*nD=$}I{uRGu;WaH4To%FfBf0^QVa1Xx%w?qVa zU4Vz7+B#PuUz5r$^pOZQ7{?CO7Av}2F=}I;45aO&py78AT5?GGT57^QaAyxoJNzUm zluk7bqj-(hyZw=zML0OuM+q!k1&H+R`-r36?E!UISjpmOp~m5`qDhES?fGF>EHjPH zY7P{H#B5l1q4yop$=?kYT?%2|P3u&We1fbs&TFJ7-yE&jzps`qIL{hkq>wAp0Rn?L z_rU)o!5!^gwpoljA9Z#G*GgwDH+aL&<{tF6gT_)_b(q$rlG8K}9q;a%u)-y*cDH2D zoNj2xaNA-{>reaPA`n7_Kw~`V=}IA#Sk4&^dVOx4d}pV1*uerR!)cfW2>)YaUK*#2 zmvjkw%yDQ|edaEZT~aHFZO+`wg3VLkXHRz^UHh9CwjH=BLrt3J$>(C8GZ*FPsL8C;O??!E?5=5KHn4D_0g%0)vI||7UfVFnM{n<`;gK7a-G~x`54@B=^Os1QBW-LtCE~&O z{Fk4vp2$<-?RvZ-NQ&lO`i;?6yKoO0>f#Hax|JzFVp21(#fwR+k5;c;Qdf z75VUc5FQMp}qkqn^}quG|A^%WD3mcB)W;k0D~=I{vi#{n@wGe#nIxBhw}P5a#!TQDBF# z2R+)gwg+IFfNFB0yN;ta+E;@68xpIW(hYEfsYy_Pzb!n?M@ zB1o$e&XcUaANg8Llx!b8mx3V@-SL%fF9>AI@_QCIt)PEl*!UGds8-MS(V6kN*S{YS zC;z`f2(+#&Emrw!5sVT1i>+n=k0rd=`>QJ7<8CG|?z2czl(DuwYaBy4Jzoihz=BE9RhDg%tqhndv3p7SS=A-DH3t|f04ch0%BAXXsC-`X0~w`SFH&0)=D$etBTnVwmMG2*Q;E67c^PCK$T=kF)}mK##jC zg_yQ?dLxE_{`oDkF!wLw$Ch}0X`)(MHzy{bgM0dy-oUB(BVJS8{%akjf@B8BJU28p z3YD%+%Fwa`Smr#It_L_?T;J9YJ*L>DT*=T@DWO>oE%j3rhOJJ%+9tszXLiO;(dPB0 zXjA@O0w8kAvy6#NX?|D(o#8oB(rN42yEmt2oFUP5HpGD;`8QdQh$(jD$KlZLX#9FZ z#E<9Gc1*iFD2jevYA%E^baOP@Q!I;`3&BXNV8DudDaS#BeT+w@Ci>jx$va$1$->Bd zX%kly(RGRw;N$zLuKi+Pr^PyX+bB^@9djqH3G=SI2-TfnhS~)DhQ^Jo$jtY4L1hJ3 zqM*@QxraXH3lQ!b>Qwyl@!T)>qFSPg_~=ElW%^0oj9`Km?R9YHuL<{}!XKLj*V+dH zVaI`;@cV1x4h^1G>fw5oRsO4b`Ni7&Ywg8Lm99E;^U>zthGO*Iqfc|bmS^9R*@QX` zv;K5_j+#6txcG+7LA79yDP!wOZ(@OUYjl{%`95-p8n4ETmW$y;)Hc@2@zX%?HlUa! zErynu+Zz9ARuN;VF}p5){QJ1FM&eexW-u=D9Cf^6Sj~I+XNrZ8rk@?U!M$tu%62t4 zMPW&u;HGq;uW(#B>ID559POe6-h-_Gc?ymkyY4<)DnG!jVP~2^WdY>~$MM5D5N|ta zE&B%uKRG)4%@8AS#iFC2?>wu<2A#PS$SS$sH%c?~VZUI%wJCDd8HU*Y<-c}2u}%^# z-MlkGS_{S)=rXAj824Ax)*`ul*^5<+jtpb+7@5<%yoI99>>Ck1&*BU9f0GmFg`*?Jb=_h%6h3;0=+j!%N9B~_~FL;WnTz&p67<57Zg6jXE7_EZfGg6%5UOeIQ z>F*&Ok$(Y5m(#kMD>^#Nn@>xtYh@IGcS^n^IR)pmwsn2ny@3z23qO9sh4m1>db9lL zBkQ(^0VpRRntwsjKuVdN_=vH+H=ho9=%By@n}k#11R+gJa+bvxbV;vhwtR!!QjZx zsD@k^N%&P99Q3t2rRSKM#PtDp89Coqd$vpUDs|$P6^m@?-uwBfq;`(W+eqoT&$uSZ zMAKBSuWVF#b1jjZU!Mg-BKUq3t9HfvY}k+^7uOjv&)wNf5(FwcLCOsuS>{6j${Jg= zz$}}ZF15Mk|Ebeikv8G#?`Q02U9iNWWb{e;%SWT-qW4|q{>^(!1X}2eHo3h)tAPiD zb$iVa!nI0YdtId$GK?KK(FH>Z_8ORmxkOygJXltN@CJ-X*`EWv;S31Wn91Tyuau$;6i( zU#hA1*{%5Lt0MN&d(y{h$aY0yGFJgtefBTv86tDGs zB!w|km3|S!>L2XM31Ff@QoRq!L4~?K4 ze3UP~6VeH2C711AQj0(24*R>IRA4x*cPK{1uF-dljHOzZW09c}f;&4PuZlQrte#(z z6+|Ty3Urvx-?7>1>P6dIx0Rte;d10*bZgO-ns;nd{g@#ALs5Oz%47@%SYed!6wW97QUgh4XU>%V~l)En;! z(0*~6k{nOVKr5E~ezti1!)i(Y?n(Oj5GcelNV6C5f3BCaN-8XD3w=k>%*f=_eT5BL z&XdSHqd_1NY}?MNdddPq#iEPc@OiNBYr}X7wdYZC5SQu`oduX*X_Dk*yhZW5dkZP%{iW!3@Sr22qq!s5h&wO5> zNTYekf)eoPF2><7Lq2^UbDhHilaOt^LP{C>^=+23YSeBMLsl5&r^cJEzX0W7Vz*I- zim{7AP~y7Nu~mf2xv;$wCxKg3ziXd!DY09H=6Ax9%~gP6#Cr zp?5oZ9S?@jJ-8xKQHSU6&)#Zm!{@2FJ?m4QSs@B@%pOKQR%QuG0EPA_}ec; zPJt3=R05?}=xT?gPYkNSvTe{GI7!r|yJ^Ra0ghoZr$%XsKOY14Z)X}X-qrX@$T4Mx zQuCKbpgDNCYjFgH3{p$V*5n!ec2H1L(_aXhqh2v_d7kd7ICp6Oaj>_wi8fy^y1LIh z)g)#ioscA6-{U>bZW&O<)Cav;B1orlUd1 zEC4z~KtoUJ~hR}8}n8 z3XzmNxF?&i{=8$^9AvxqsHr(It7$gFrz0ARZB$&aM!7X2?TU?^Ug67@U~+Y-E(9iV zaNt62RT&Ht%^i?J5mZar9D_=129 zzqy-?^c7UY`m??#>3__RRTU*L(|4eU2C24IaS`FnoH=d73JQ-ptR$e4u>7)UuW>2t zoic}%YJ*M7akb>#n?(5aD~(uL_T&Z)2SX%><^2n_vd+ccZ|?zvBVpEF_pN( zQ;uSDT=Zd{X3VwqI;^2ij+C6gn!7Gg7ZaxhaGd9q*-M!w3R+Kt^S<|Y1%0;* zLv<|a=+ITy_jWc_@>;0=qEKOTd-fL&gr0ghGjhJ7Yb%oK*!eqB`(BLl5C8f`nAy4t zlq0h8|FH|KD|&~#S`-cL!LQjlF#e#}xw?b%Cg*ENps|XwhY!qZHVa zuzSV|=F5zZc`UjyE_*ZV0SfvF{mlL3(q0C4{Oz!~85^ZjSf<8$9w#cff5}Q#Aj)4m z<`PwZNbHMjBwbzVZuAbEKMNzW?!LQzy_jXH zdhmDZZmcVS?Ln)lQPCL#N2a>*S8@l~F#;(HKeE$a8#d~)3LJ|8I>-Q1Pz4`K#`p^! zvvM&#B}5u>4wQBY}`0~@u zn(uSSUV+72{PpM1zC^j#@)7kBf|RN20dw2^g~xTY!L|~i@LEuU0=vt)KEX&)il~2W zgyuo+nnK9Jmkwn*qFMAyfn57J04j8@tWF$b5LIZ7APE$iKm!pCVS=!T+#g~Dz4jhY zhvlohSgbAC7_8MKpUz%=%i*W5?Kl&;BACY@QCXC#IuiKmBh_X53WGTP)ZKat($hmz z{0Y%+<-31cevqMFgb~#x(wKnSAmN-FTa`)t3n$OfW_fvY!NX{|WYwq4bY$x))kfIz zN4^;~B`4p3{Ex|FRogD!JScQ0Ad!{;eT0#WrYQ2=A{rt@z2nCUbw^drDHz&=!GmO# zvObZ&OW4Esi}51a!qos8yi2NFLusaG z$5PivJ?&l;B(1DxtLPFfEwXf2Vnk%Y*&JD;25MkKL?;bUtZtDl()${7w*6++a~vFr z<07Zk!fV7Zg#OMSR|+k!v)DCf>^`}LrNhF#N*zQNq{^2-!|j5zL7gp5eY$W{<&Y+Z zGRXV6-%a%+6~edbgnBI0hLZZ(FNZj2U(T%T_-3)7hmmgk7^38J{{*(TopHrRp_GJEw7eNpfY!8nQ2w(SxGc8 zhpC`>F(HZc!S_m$C0?9i8nd*fB&rQYP_wmS1-&dt`bnU6ewk4KQ^T)goXduGqela! zL0BEORxqWWz&MFN3UEH+Rc7?ZyT|h8V_M%6oZ-ARyTh^mV1*DsyQ4p8`K|s25Kw{`_ zY3XiBN$Cy+>F(~%p+olbetYjcvdd$5mg`acea=~VnVUX|K zU#(e*g0JS> zRCZBv0SuOWF(qrb%wje@D9SJaC2u9;jY;U$NQ(Mrbo_oXcS&N6&)O~kYmcW8Srtr( zy&sEb=C2|ya2!m&f)s>IgzeAft{(iGw{RCF_iqq`rSMS(xdI*WJF<(Nj4X%;LDf@Z z&NV-VWSjUGdAn7hC)1OWy}toLn{ckXFJ9s@K`o@7bgX_PnqKaWN4EuawE?D`nE17n zu-fmxj!{p^Fh9S06?O|0{h8$S7;=PJ7r@v)LE58)LU{){;!*lTySVy3p5p3)Rd|ht zzarANfdGiRU()gOi8=U3>C(JolHQOSL8d@QtBe;mu=aQB3Ga}R@3$fdmv+|HXk|b& zvrFcZLqRz?r1%4(OAID7(uP61IIW_tE6o#NrwT7b=3>UfXYopB?L(x=@Tn%trJ7Cj zyD0?6pmqqJT*F3n&-Spj!*RsVRJn2VL73>>JrFUi1QOCe zRe1+LmxT<#TdMwj<{166dMNPXPe?#>1s*830P+rLjb;HuhK_jX3t?x^{SSZfh0iiR z9+BU*!*|Uji)Y`nXX6+zwgKQ;&i_TnN%_IQ>&v*3QM3#-iU8QM=JPXv79rLZKt1ML z_sw3HU6n2&{Qx_IP!jJVuj!nbgjN%S26i3%-3y%^Sz>DF_tp9wfhN{5k{B zbH7F`xvW>ID5voNJ7t4HUw%;V<@&dm0&{C4{KRPlEn2`3a^9wN=g&X`-D)!RI~FJL zRhO4vX4R7ZF|bg z>{rSQ!@gXpEP5f|77%nk{zW$M8VM}W&}Pkdw1|r6X(u9sG>=N>5DgGrGzPo2^UMFr zTbf9qNKEZFz5`D;hEP<@2ieZfczK)L0NF!T6A;8Bu{ zE}}eKI^!}BOCrTt0rOzrJdG8`Th*NFw9?f1%m1renjDMuPf0b^>w@DwFI7vVhBI3n`X3YLGx+6lS9OvBUS3^F|kjV+N&S zU{wK``SQP_Zv`m&LgBn1extCzen3Obq8y+Br&<(u+_vk77_=RKzYtHMgkoLH_g1aCZhJ)x{}H>B?Z`i%o|tqb zkfMwH4y&|xUHOAaW95QLt^OZZLVAtJ7Od^}(yWSyo{ka<8W4mjprJV=SP~s#)Q_rachu zAXl8Kel&{cikIV0G*b4!U=RkuoR~W4GV>Ty?VtBL6;+I==85fG=BYBJlkLI7XWqDBH6}eXJ*DFZ*VAU5|M>0q2Iloik#kbo&E-_(V&GG&UnH?t zA0h)bh5ckoRT!eyAvaF*<0{0UFQ_=+kn3h zG?Nq62OpZJ5+H`H&bO_U8a3Bx2;WM11?*>dHroU7XM0i|I2vV4tM<8`hUaC zCm`HB9{?@Gsf;W-K$~p8s@c`9L*qjUZ~g_!Hni}=sUm4?+Ow>LQ<%-Bs-%Z1HW=)I(s@prMe%WK zyPXJcJPrOWa|301S2Xjg?uL{sZ*;7F=`u3~H8TQBKlPFfk2@O^JYOeGJC=gqYEaj4 zRbt|MAYx`MX+P{dgo0WT!&;wZX{fvC?ig8=Oq+bSOT9Dk7Fo=pty5^$mRZ}I+`o<4 zwegbd#Vow$YWASnmSEX@L}f~~(%kk-N+aEEfw*tT+$CUReD}&sYCi%Quj+P3U{HgA zGTc@p1=H`2V3>v#+Y;DL*9M+0b=KpQFOqnDK+C@LVj`3?*}l(&=@{sFKiMs&(Iq6o zrCloY9gE$q4aZM@w06>7FNPP%qt_I8rM(5yVXs6UQ^(AE~q*6uy@aT5;RtjJTl(s3^6k(Bhl5JMiVSj!-^6Tfj zw#{|HzP(NpCgF6byHomg&V_08*gt=-pX;}2=m*`j_nW3q zgF3ovf7xb42^uz*5XG8^}?>Ubn7&y zkF_jd>QvqWN0l5W8d+(Xuu2t-r8c|x2-gg@_qsFdK+L{9=T>pq&4VXxAX zBy5ZW{}aH(*HjqOyg@gN*?Fw}$>Jp|kO3atudlvnBnY!6udA+&@_lV0vwxbKB)EOO zUg5<*>NE!(;Y?8N|AmmMoFobA78QDHo&BhQ-kRT0i+Ed$17gw6Yp7klD<6^#DqH1_ z&!BM5I#MUVl!MPQAj)1iEH~Y5kMlTM0vmIp(6FE5D3bhn1kbQZzcmnP1zCYh?wi-x ziL-q2AHUT`@R8toN34mme2sI;$5XyfQT=M?Y^JdwoqjWv%FAnV8nyR0_^xBAX$q!p zSsOcoV*a965jYiD&J7R!ry$&#eB9^ppp2rXS6-p{zZ5nuz=*jmDz;Dyoa!AM|H`|n zkyJ1CacPUjx@~vd@`rw5QGvrV8)o_zjK*7-K6dC2*IeXr)C@5U^BDd5mkIV~n=PFD zvK4=K%+pdX?pc|N<3)DRAdjMITf|^vp|3Od@7mw9x_;{P*p2N1_Pz1x;l_1@)D{y7 z3T{FgCHd`zpr$*{rEnR)SRZ*mo{>TDpQ8E*2&R!dP`!rl_0xK92d_+K=t1AE=bmW)hZ~Z-m`kH zdd%}_w!+k!C`xV>@8s`P7F8yAbOvbl$|yCOj?f&BCQz)bc8E3}M$laF*F|YDfA8kj zMce#DH}_H!G@wSPBb@KN)_%PcZ_BbK#CG^JSTI>tpC^5sKZtyF;muj8`A zjB2-Dj7~ARCo8x!Pu8-4=Y9x>QwNF*1%94S*u4VGl@i>+}<~ z055)e`ROTmU{p=GoFYp;N4t6qPiXZps+Q(V!QQc1^~yZxaxee_xViok10=Q+6B7*o z?Q|lkML(O5W*xUC(+>k@AfwgYhO-u#@EHfW6fUCx$($@+i)gB^ok)%gRz>iGQ{cE= zgdpUW#?HBmQ*MaV7U1T^U77_k;|a27EMK#+3jSUhQB2 zRF8kw*aX@!yY@2sP{wH<1#_ZCTEbpcMnLjn=lu#&w`=h@dy%^QOR+zk9bUn~-H%>u zUYZ?uk^mKLb|wlvuQ?7+;~nOo`v=Lv8mCbofO-0KStJ3sevz!}_>E6caQ01C4ZI=e zBwh5{Fua}mpR9rZtmv^G)+%lNQ6y8LMRNKJ=vCPHQP@vFLs=7Q+b-=S1U8?lw)doU@xMOJ?ybkL%T3*ww z=@hYJCSqK2RiOX!I`Ee>E97e0Xlc8sF46g8f@MG~9#i?m=)^(qhmqrNMk4IUPq4msy+I5(;TP|VvyXK5PQ0T`dXS)_z_=?N zsL!wV2(7-f002|Hi09XvMkpTt?sk7QPYUG3} z(munIoB+f{hnK4_*4l9WrmFjB4yW$c>PZAO8-L~{d;^Jp&-E6G{$^2U++JVS1O-XoKiMeF9e_ZAZY#%slk%F%A#=u#}@FN zBqE5|ICYhZNJ*fv4TeQ&r=~eH8R>;IvJ?&GAMPLi{$d(pQ)o}h-Y4(!*z`58b@D+a zJWmk+998z%1c!92q;D(d?H@o1`Uo${cvyA<bjtsvVCuen9dN4)Jpd25h?XRFYKfUDnA=1NHvNEE{}Gf($vi>3L{*Q`=1KqazA&e@MGBErN;k4}28S zfv9Be{DAA}lXz{A)#2jdm}?!X zD|k)L=diAYL^}0wF=Hfbn5DrfscwwzBeYF=7rp+6o$K*LN+H|zD8U!Ev zI(nqh4dq%auJ{%AxQta{FuHLSC61$D635JjHnVEVPk`%55kAI)5@L5W`9JI&ex%6b zS&tczU*ND`0AHaga2UwdM_Cfrb0!rm09xsLe>}6Olr)A{2k>k}NfQ43yXkmtGZEqj z&q4kZj1FQ1h%Q)^{77=dcqe87ZvXe;1=RuhQj~f>Kt|8BlW}Pi&VNy~5Geihb#fe- zf25T<_LP(2vNG%y)WbDz(mCI2OP1n-G(hD z7^GYNo3rsCr9fsTGiflu{D6Pw>`Dz(pC_WOjoIS4#5xcy62alm>p_4DmWE@80=p67%5^yOV=#Wt7_TraSFm2V~!ys=Xr zdYw*&`RafuGcI83&H*k}Uvd5;$s@Zp}nIf?-MU^SkMryvTVpw^u<7MA+V3z#Mmk zhFH3IH9P<+xAVo;mel=}3<`-#`cC;@yxk(STBySCW1G-?c5tu?5;F}Gb-}5i99kK= z6L>A2iV(o$(R049XEy_}WS^Y@h%Qkna%&_*Mp*NHA##=FX4G5#7iZ6Pv-)rUVvJj|WtUa$i3nYL8cVU2|tmphlz%=cTL9>^YPlb6)JDOWch`n5w z@(PVa+Izv0kPY&x@;gRn3fC9suDuE$MB-btShj`Lp`s&Kxy5&osuMOsYpH8;G&*n0 z@ovupDVc^}W}^G9F0H#!zN;x->Jpn2Jy&WvM|BK05L^xCw%3nk3JDY$BNz6_PAIo%Lr+3FF45@<6#DeX$TN+)5D0A12f#|h?Vlzc!CzdWRta6{M!WSE>$h1 zS?AJD{m4*v6XGka95%OjV2Xm*Oz!955yl5wLXrIOQ}emn;jdqf$X0b=D6EROu7&vQ zn?vo_T^&?PG;r6P5bBmxAiCLg2B3UNS0b!p2L)5Qh%tlY%r*8raU|E1T-&bxNqDXz zacVfUKOeWLOG!#vVK*mfI~K5i z$TS?2k^6ei1?*m2E-;Cwx)L;J_t$}ZU?P*Hc*#hLW&blX5+&&e<9mF`*GmO6t?o_~ zVs2Fve@)PdgJho{R-f56U)brUK)O`)+C1u-t+gRBf`4@FhvLr6WY^moC5b7=98#=n z%5C8XyaHbL&1D9EcOCWgYfQfx=ly5lK2Qgg04IuvRTiUJ!lYtVGi%_xZk%^4g_Qu9 zIvs})Q%As#wAJF}T(SuPNImv2Q^A?)8Yoh6!K#bH7b;Vt*}R!m^G3tUq_=Mbzx?Ip z6*g<(r9(?@xr0!pH6$$r^)~qqQl2QCxYVZ~H)e_4kiDPs+O_3XM}c^GW-g`pU-3QH zizki{1&qok_f_g+WK_I6`|XWdzj^#riRnDJ-6*xm#*Vq&6A<^LWuPhiZpoGL@Z-$) z5q$!-z|n<}8~BZUD#pGY8yWg z+%2jN9Pr)H)j+TI9qX_!T z{8-0mN2P{JikM)7dLXnO{tg#Yqm0vSl9$ginE?e#Tf|xi!SchlNw-xySDv!c=Tdq_ zPl|oFd78zK7nVG8^OkYv z0dp!w_bpT?Oi7={zI2UVI{Z#2d*Y)#*R0SjvBN_{DFtq7t?jbJ+BEmAyw?N>{s60JQ^A+uC$T(-&t;)-Lt8jalU@ z3BjAb$82z*+LJ`VPUHB`5?)b$B>exZ{;ADT-?$PveY0LJYst8&7$Q zoV}}V7_;7w07+bL_OvA;Z%L|2Dl+qtvnFoHyRs63O&2kj<4E3jgRa{h<94A0cMQp| zfGSB{A4~Q;80~|sM20b)wOzJ=aMhd(H^>6ni3pi5kI>OcrcQ@uR6Fj)_F#y#$E%+7 zx1C{9ERX1)OEO;DG_u&7xZz5#>w#2LdV~#W1+DM>!_ zR&>ZIE+c>!nO(?QS4rs?5W;-DI(O5ZGzUDkL{~z5hAywZZNpE6N~)t@&u1O_%=BId zW=Wacg;3f-?`Nt=*FCV*-qTB$Vhghdf8g)rbYn6Z5*R-S(Iq=$-3vlpjc1rFMBb

$*?syBnC`A2ewhV8xLnIM~UeB6vVWY$hh|Q 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 literal 0 HcmV?d00001 diff --git a/test/image/baselines/gl2d_parcoords_1.png b/test/image/baselines/gl2d_parcoords_1.png new file mode 100644 index 0000000000000000000000000000000000000000..7fe742b670f3dd080ff7bb8f1d130ac6e7565195 GIT binary patch literal 12949 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

QT0hrFp$kKtmP;uJ_a&cduo`8 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 T;Scb-a4Zc~ZIx0bi{SqUXv&|` literal 0 HcmV?d00001 diff --git a/test/image/baselines/gl2d_parcoords_large.png b/test/image/baselines/gl2d_parcoords_large.png new file mode 100644 index 0000000000000000000000000000000000000000..843955bf6c6113a4cb1a43fa2cef84d279112ce5 GIT binary patch literal 231493 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 EABg4VUjP6A literal 0 HcmV?d00001 diff --git a/test/image/mocks/gl2d_parcoords.json b/test/image/mocks/gl2d_parcoords.json new file mode 100644 index 00000000000..f2bdad6c60f --- /dev/null +++ b/test/image/mocks/gl2d_parcoords.json @@ -0,0 +1,77 @@ +{ + "layout": { + "width": 1184, + "height": 400, + "title": "Widget parameters and cost" + }, + + "data": [{ + + "type": "parcoords", + + "line": { + "showscale": true, + "reversescale": true, + "colorscale": "Jet", + "cmin": -4000, + "cmax": -100, + "color": [-41, -1317, -164, -1856, -79, -931, -191, -2983, -341, -3846, -278, -3019, -523, -2357, -985, -3447, -211, -2842, -458, -4388, -784, -2563, -935, -2253, -313, -3667, -1479, -1030, -632, -623, -1945, -1324, -1221, -878, -947, -1615, -697, -575, -482, -905, -869, -433, -484, -349, -667, -248, -1135, -888, -1019, -223, -2067, -729, -579, -659, -334, -340, -554, -455, -377, -375, -453, -834, -934, -334, -369, -290, -354, -497, -490, -329, -729, -1794, -151, -1162, -3935, -1013, -509, -825, -997, -320, -680, -422, -785, -542, -563, -489, -1283, -680, -78, -450, -514, -449, -548, -661, -641, -503, -570, -257, -394, -450] + }, + + "dimensions": [ + { + "constraintrange": [100000, 150000], + "label": "Block height", + "values": [32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 86600, 163400, 162600, 90000, 93100, 163000, 140500, 130000, 100700, 164500, 147700, 121700, 107500, 176600, 133600, 111100, 93100, 72400, 130100, 54500, 182600, 160300, 218100, 66500, 95800, 164800, 107200, 101600, 91100, 91100, 78100, 63300, 75700, 69600, 88500, 115800, 195700, 88900, 74800, 65400, 74900, 115300, 91400, 67800, 85300, 171300, 32000, 227900, 163200, 122899, 112300, 101500, 111199, 73300, 120800, 93100, 117200, 118500, 104800, 108500, 146500, 90300, 32000, 93000, 110700, 103500, 93300, 106300, 118500, 93000, 67600, 51400, 89000, 94000] + }, + { + "label": "Block width", + "range": [0, 700000], + "tickformat": "", + "values": [268630, 489543, 379086, 600000, 489543, 268630, 600000, 379086, 268630, 489543, 379086, 600000, 489543, 268630, 600000, 379086, 268630, 489543, 379086, 600000, 489543, 268630, 600000, 379086, 268630, 489543, 436900, 373600, 268630, 439000, 381800, 491200, 402800, 381400, 485600, 600000, 372200, 394700, 383800, 401100, 356500, 313200, 487100, 490700, 432299, 530300, 521500, 456700, 333800, 343200, 394000, 328200, 487700, 383600, 317700, 324600, 482900, 515100, 500100, 562700, 486000, 453400, 352900, 331300, 496200, 469099, 472500, 354700, 507700, 509000, 439300, 525300, 347600, 379000, 432800, 378800, 383200, 523800, 600000, 313600, 497700, 411300, 420000, 381100, 342800, 385900, 268630, 495800, 488000, 446400, 397900, 373300, 385700, 396500, 475700, 510600, 586800, 596000, 407600, 439200] + }, + { + "label": "Cylinder material", + "tickvals": [0, 0.5, 1, 2, 3], + "ticktext": ["A", "AB", "B", "Y", "Z"], + "values": [0, 0, 1, 0.5, 2, 3, 3, 0, 1, 1, 2, 2, 3, 0, 0, 1, 2, 2, 3, 3, 0, 1, 1, 2, 3, 3, 3, 0, 2, 3, 1, 0, 1, 3, 1, 0, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 3, 2, 2, 0, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 1, 1, 2, 0, 3, 0, 2, 2, 0, 2, 0, 2, 2, 0, 2, 2, 2, 2, 0, 0, 2, 2, 0, 2, 2, 2] + }, + { + "label": "Block material", + "tickvals": [0, 1, 2, 3], + "range": [-1, 4], + "values": [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] + }, + { + "label": "Total weight", + "visible": true, + "values": [160, 1324, 252, 1711, 173, 624, 228, 2474, 371, 3103, 312, 2408, 460, 1727, 754, 2457, 227, 1963, 354, 2797, 377, 1327, 462, 1009, 166, 1415, 1118, 1063, 593, 498, 959, 1331, 1146, 645, 921, 1596, 663, 568, 492, 833, 630, 445, 504, 394, 647, 314, 1039, 829, 911, 282, 925, 681, 581, 506, 368, 373, 628, 538, 418, 419, 478, 884, 847, 369, 410, 344, 396, 501, 510, 379, 733, 1649, 239, 1035, 1839, 967, 514, 875, 794, 414, 664, 447, 839, 540, 636, 499, 1059, 743, 173, 473, 519, 465, 623, 726, 631, 521, 643, 323, 424, 472] + }, + { + "label": "Assembly total cost", + "visible": false, + "values": [1125, 9274, 2735, 16920, 2193, 20704, 4814, 34689, 5565, 46554, 5225, 38887, 9746, 37715, 17798, 55250, 5697, 49083, 11226, 81939, 24258, 62488, 27363, 61924, 12511, 106196, 24444, 7443, 9111, 12527, 50738, 9320, 12291, 17571, 9508, 11176, 9142, 7687, 6724, 11219, 17825, 6506, 6367, 4966, 8495, 3860, 12844, 10688, 13026, 4007, 57281, 9790, 7335, 13748, 5358, 5393, 4401, 3769, 5233, 5058, 6047, 6188, 11899, 5297, 5154, 4406, 5061, 7022, 6358, 4721, 7723, 16745, 2651, 14194, 100772, 10504, 7021, 6131, 16730, 2904, 8334, 5968, 5876, 7394, 4454, 6800, 18376, 5204, 2190, 6146, 7013, 6412, 4361, 5082, 8028, 6484, 4504, 3832, 5687, 6174] + }, + { + "label": "Assembly penalty weight", + "values": [9, 794, 34, 1409, 17, 536, 39, 7133, 115, 9843, 107, 7017, 273, 5131, 1210, 9032, 82, 7312, 252, 16778, 760, 4349, 891, 4228, 123, 10800, 1593, 467, 260, 226, 2940, 803, 689, 420, 422, 1229, 275, 198, 150, 423, 423, 134, 146, 89, 248, 55, 612, 401, 546, 52, 4208, 307, 194, 257, 91, 93, 178, 133, 99, 98, 131, 345, 461, 90, 96, 69, 91, 160, 148, 81, 274, 1332, 31, 667, 11733, 502, 163, 354, 480, 67, 252, 120, 303, 181, 162, 153, 1142, 251, 17, 131, 165, 135, 162, 222, 230, 154, 198, 58, 109, 132] + }, + { + "label": "Height st width", + "values": [236630, 326876, 347086, 437333, 457543, 105963, 568000, 216420, 236630, 326876, 347086, 437333, 457543, 105963, 568000, 216420, 236630, 326876, 347086, 437333, 457543, 105963, 568000, 216420, 236630, 326876, 350300, 210200, 106030, 349000, 288700, 328200, 262300, 251400, 384900, 435500, 224500, 273000, 276300, 224500, 222900, 202100, 394000, 418300, 302200, 475800, 338900, 296400, 115700, 276700, 298200, 163400, 380500, 282000, 226600, 233500, 404799, 451800, 424400, 493100, 397500, 337600, 157200, 242399, 421400, 403700, 397600, 239400, 416300, 441200, 354000, 354000, 315599, 151100, 269600, 255900, 270900, 422299, 488800, 240300, 376900, 318200, 302800, 262600, 238000, 277400, 122130, 405500, 455999, 353400, 287200, 269800, 292400, 290200, 357200, 417600, 519200, 544600, 318600, 345200] + }, + { + "label": "Min height width", + "values": [5137, 113712, -5909, 102666, -16955, 135803, -28000, 124758, 5137, 113712, -5909, 102666, -16955, 135803, -28000, 124758, 5137, 113712, -5909, 102666, -16955, 135803, -28000, 124758, 5137, 113712, 42910, 126039, 135736, 46100, 54920, 113880, 100220, 91860, 52140, 104500, 110480, 82230, 69120, 136490, 97950, 79780, 44390, 23330, 86870, 1469, 130450, 114629, 184720, 32180, 56400, 131980, 58430, 63240, 59330, 58640, 29810, 11790, 25690, 13330, 39900, 70460, 160410, 55770, 25179, 18490, 27650, 79830, 40630, 16900, 41369, 118770, -2760, 190000, 119920, 85020, 73980, 49120, 51200, 41940, 71030, 51970, 75200, 80390, 70520, 69910, 119636, 40720, -16800, 48360, 70910, 66170, 54730, 66650, 70930, 41940, 8919, -8201, 48240, 50080] + }, + { + "label": "Min width diameter", + "values": [98453, 319366, 234498, 455411, 391333, 147711, 479081, 208910, 124041, 344954, 280876, 501789, 368624, 98453, 429823, 234498, 170419, 391333, 258167, 479081, 319366, 124041, 455411, 280876, 147711, 368624, 315981, 203423, 170419, 318081, 237211, 321023, 258211, 260481, 341011, 429823, 273989, 296489, 285589, 302889, 235581, 214989, 388889, 392489, 334089, 432089, 423289, 358489, 235589, 244989, 223823, 229989, 389489, 262681, 219489, 226389, 312723, 344923, 401889, 464489, 387789, 283223, 254689, 233089, 397989, 370889, 374289, 256489, 409489, 410789, 294711, 380711, 203011, 280789, 288211, 234211, 284989, 353623, 479081, 143423, 399489, 313089, 249823, 282889, 172623, 287689, 170419, 325623, 389789, 348189, 299689, 275089, 215523, 226323, 377489, 412389, 416623, 497789, 309389, 340989] + }, + { + "label": "RF block", + "values": [1417, 23377, 3376, 33336, 5635, 10812, 6898, 21273, 2484, 35126, 5626, 51096, 7384, 22020, 18912, 52449, 7498, 87528, 11359, 107154, 9197, 18159, 13115, 41120, 4254, 53966, 17129, 14957, 12469, 12882, 19875, 23547, 16325, 15238, 15452, 31817, 18210, 16237, 13815, 24070, 14163, 10748, 16292, 12787, 19559, 10597, 34781, 25859, 23121, 7331, 19298, 17056, 18788, 12009, 8997, 9280, 10990, 9825, 13690, 14547, 15443, 14758, 22429, 9324, 13396, 10915, 12615, 13307, 16842, 12533, 11312, 29347, 2923, 28796, 42332, 12953, 14401, 16151, 23973, 4730, 21716, 13116, 13175, 15085, 8140, 14046, 15629, 13231, 5612, 14571, 14929, 12812, 9048, 10826, 20129, 17258, 12673, 11513, 12391, 14423] + } + ] + }] +} \ No newline at end of file diff --git a/test/image/mocks/gl2d_parcoords_1.json b/test/image/mocks/gl2d_parcoords_1.json new file mode 100644 index 00000000000..124436b3278 --- /dev/null +++ b/test/image/mocks/gl2d_parcoords_1.json @@ -0,0 +1,28 @@ +{ + "layout": { + "width": 284, + "height": 400 + }, + + "data": [{ + + "type": "parcoords", + + "line": { + "showscale": true, + "reversescale": true, + "colorscale": "Jet", + "cmin": -4000, + "cmax": -100, + "color": [-41, -1317, -164, -1856, -79, -931, -191, -2983, -341, -3846] + }, + + "dimensions": [ + { + "constraintrange": [200, 700], + "label": "Block height", + "values": [321, 534, 542, 674, 31, 674, 124, 246, 456, 743] + } + ] + }] +} \ No newline at end of file diff --git a/test/image/mocks/gl2d_parcoords_2.json b/test/image/mocks/gl2d_parcoords_2.json new file mode 100644 index 00000000000..c06ff032aa5 --- /dev/null +++ b/test/image/mocks/gl2d_parcoords_2.json @@ -0,0 +1,38 @@ +{ + "layout": { + "width": 500, + "height": 500 + }, + + "data": [{ + + "type": "parcoords", + + "domain": { + "x": [0.2, 0.9], + "y": [0.2, 0.7] + }, + + "line": { + "showscale": true, + "reversescale": true, + "colorscale": "Jet", + "cmin": -4000, + "cmax": -100, + "color": [-41, -1317, -164, -1856, -79, -931, -191, -2983, -341, -3846] + }, + + "dimensions": [ + { + "constraintrange": [200, 700], + "label": "Block height", + "values": [321, 534, 542, 674, 31, 674, 124, 246, 456, 743] + }, + { + "label": "Block width", + "range": [0, 700000], + "values": [268630, 489543, 379086, 600000, 489543, 268630, 600000, 379086, 268630, 489543] + } + ] + }] +} \ No newline at end of file diff --git a/test/image/mocks/gl2d_parcoords_large.json b/test/image/mocks/gl2d_parcoords_large.json new file mode 100644 index 00000000000..513d6e606ab --- /dev/null +++ b/test/image/mocks/gl2d_parcoords_large.json @@ -0,0 +1,77 @@ +{ + "layout": { + "width": 1184, + "height": 400, + "title": "Widget parameters and cost", + "margin": {"t": 106, "r": 70, "b": 54, "l": 90} + }, + + "data": [{ + + "type": "parcoords", + + "line": { + "showscale": true, + "reversescale": true, + "colorscale": "Jet", + "cmin": -4000, + "cmax": -100, + "color": [-41, -1317, -164, -1856, -79, -931, -191, -2983, -341, -3846, -278, -3019, -523, -2357, -985, -3447, -211, -2842, -458, -4388, -784, -2563, -935, -2253, -313, -3667, -1479, -1030, -632, -623, -1945, -1324, -1221, -878, -947, -1615, -697, -575, -482, -905, -869, -433, -484, -349, -667, -248, -1135, -888, -1019, -223, -2067, -729, -579, -659, -334, -340, -554, -455, -377, -375, -453, -834, -934, -334, -369, -290, -354, -497, -490, -329, -729, -1794, -151, -1162, -3935, -1013, -509, -825, -997, -320, -680, -422, -785, -542, -563, -489, -1283, -680, -78, -450, -514, -449, -548, -661, -641, -503, -570, -257, -394, -450, -586, -503, -437, -590, -622, -482, -3687, -2394, -773, -1029, -619, -1561, -543, -894, -1037, -705, -208, -325, -693, -652, -855, -642, -317, -435, -310, -329, -380, -371, -610, -406, -310, -1034, -700, -367, -337, -286, -856, -350, -576, -653, -219, -325, -1200, -49, -2664, -856, -344, -520, -766, -286, -291, -1334, -591, -346, -320, -342, -393, -503, -316, -280, -256, -307, -606, -269, -302, -443, -297, -272, -281, -288, -287, -302, -414, -312, -1196, -214, -245, -282, -315, -268, -966, -270, -315, -248, -502, -316, -299, -256, -358, -276, -288, -331, -282, -845, -409, -293, -292, -481, -291, -271, -279, -270, -4948, -402, -280, -261, -293, -765, -162, -265, -266, -253, -869, -237, -285, -276, -225, -229, -446, -567, -272, -876, -260, -251, -284, -2709, -263, -3948, -479, -269, -959, -267, -762, -252, -263, -251, -485, -753, -362, -257, -910, -972, -233, -455, -673, -272, -259, -243, -616, -628, -262, -232, -733, -236, -247, -479, -983, -240, -306, -256, -2269, -262, -106, -225, -893, -238, -253, -373, -476, -234, -469, -354, -219, -731, -255, -262, -317, -275, -518, -894, -251, -3278, -1219, -256, -261, -304, -241, -251, -253, -140, -877, -231, -261, -319, -259, -250, -246, -279, -245, -262, -257, -752, -238, -311, -298, -253, -280, -296, -285, -280, -265, -503, -260, -890, -555, -289, -246, -256, -241, -286, -247, -1881, -267, -225, -252, -911, -283, -250, -466, -269, -241, -270, -259, -908, -255, -447, -432, -244, -373, -816, -391, -3466, -1384, -937, -490, -629, -837, -900, -385, -290, -249, -256, -422, -224, -210, -235, -191, -318, -960, -250, -1124, -254, -247, -639, -291, -487, -229, -225, -258, -513, -466, -347, -216, -313, -250, -242, -310, -234, -377, -234, -247, -891, -293, -242, -830, -227, -654, -238, -1341, -487, -263, -246, -240, -219, -717, -247, -730, -385, -226, -257, -238, -259, -246, -253, -418, -259, -247, -468, -270, -273, -228, -518, -262, -1035, -242, -257, -276, -1165, -252, -1456, -416, -1974, -267, -1211, -437, -481, -1143, -252, -321, -234, -891, -705, -667, -246, -771, -907, -978, -80, -272, -285, -1236, -249, -589, -96, -349, -155, -241, -239, -235, -247, -264, -557, -298, -338, -428, -238, -236, -1515, -257, -415, -389, -267, -477, -1628, -237, -248, -265, -237, -304, -229, -297, -238, -236, -243, -265, -461, -1370, -241, -948, -389, -341, -336, -603, -449, -245, -1716, -258, -66, -397, -289, -985, -299, -1063, -260, -428, -254, -254, -566, -264, -258, -911, -1156, -268, -399, -245, -430, -263, -1083, -286, -1307, -442, -217, -268, -1223, -226, -419, -281, -629, -1145, -297, -247, -341, -1003, -414, -1312, -368, -998, -343, -760, -1214, -264, -1336, -932, -1188, -268, -395, -851, -262, -797, -478, -251, -298, -833, -788, -532, -1440, -1135, -444, -913, -1876, -395, -845, -734, -1458, -843, -994, -688, -438, -349, -724, -208, -764, -722, -493, -703, -423, -465, -431, -482, -385, -1141, -1228, -689, -439, -334, -386, -761, -466, -634, -328, -477, -2190, -652, -736, -490, -394, -497, -306, -426, -395, -1566, -297, -452, -328, -271, -341, -340, -279, -363, -346, -340, -323, -462, -341, -334, -1320, -275, -304, -523, -408, -340, -315, -314, -480, -335, -328, -294, -1142, -403, -1115, -416, -155, -254, -412, -468, -873, -752, -332, -324, -731, -344, -551, -514, -303, -335, -81, -320, -286, -371, -313, -289, -282, -294, -348, -345, -758, -1006, -964, -386, -1166, -283, -501, -931, -638, -363, -474, -354, -1394, -314, -324, -365, -385, -293, -951, -316, -1082, -943, -243, -554, -303, -265, -1044, -889, -304, -938, -302, -317, -302, -290, -523, -314, -272, -917, -277, -311, -943, -836, -414, -490, -319, -289, -298, -317, -285, -267, -309, -323, -357, -277, -335, -278, -300, -742, -897, -353, -3626, -284, -287, -418, -343, -1691, -314, -270, -239, -1182, -1260, -329, -273, -311, -283, -935, -469, -256, -281, -272, -222, -1116, -417, -281, -227, -278, -933, -429, -281, -310, -940, -278, -262, -271, -263, -266, -265, -249, -263, -264, -273, -249, -258, -244, -776, -228, -247, -237, -275, -673, -712, -415, -224, -305, -248, -252, -226, -252, -896, -960, -259, -270, -234, -1483, -235, -276, -259, -946, -379, -250, -241, -249, -1238, -247, -1602, -453, -240, -1193, -238, -636, -1053, -258, -245, -1337, -441, -253, -1179, -267, -850, -678, -336, -275, -257, -276, -244, -227, -1657, -294, -932, -359, -256, -496, -1201, -423, -243, -474, -724, -237, -1016, -1814, -269, -214, -1019, -239, -256, -478, -544, -241, -473, -289, -303, -415, -261, -249, -259, -257, -259, -339, -241, -229, -245, -616, -303, -1142, -260, -250, -442, -294, -85, -1252, -1201, -285, -255, -373, -291, -249, -268, -245, -459, -841, -254, -247, -425, -935, -1043, -248, -250, -401, -268, -225, -414, -252, -339, -292, -961, -231, -874, -1041, -1530, -291, -1264, -667, -235, -259, -243, -239, -246, -882, -236, -484, -224, -242, -1247, -543, -247, -1323, -256, -234, -224, -257, -1255, -209, -307, -238, -240, -281, -3366, -639, -676, -303, -234, -255, -229, -751, -265, -232, -232, -239, -479, -264, -243, -314, -344, -1073, -263, -221, -253, -209, -337, -210, -210, -312, -295, -976, -118, -224, -978, -406, -250, -250, -304, -398, -1350, -259, -269, -241, -401, -248, -238, -1325, -248, -248, -269, -276, -850, -247, -216, -291, -1012, -243, -266, -253, -398, -895, -225, -361, -260, -248, -955, -1530, -260, -275, -271, -272, -258, -1096, -280, -262, -227, -247, -607, -245, -262, -240, -242, -248, -245, -403, -268, -253, -246, -241, -243, -243, -419, -246, -81, -257, -372, -252, -237, -249, -261, -246, -236, -252, -262, -252, -310, -238, -241, -271, -818, -236, -277, -238, -255, -238, -261, -239, -219, -249, -244, -200, -235, -263, -379, -372, -270, -260, -234, -713, -1011, -265, -259, -231, -468, -256, -167, -710, -534, -268, -313, -274, -258, -711, -260, -248, -255, -1015, -468, -514, -232, -455, -226, -358, -219, -270, -250, -129, -239, -247, -305, -264, -274, -244, -370, -1115, -230, -1834, -252, -946, -240, -249, -235, -755, -248, -1036, -244, -230, -226, -1166, -629, -311, -253, -900, -245, -907, -268, -251, -309, -248, -307, -241, -238, -820, -236, -285, -751, -232, -250, -236, -246, -754, -977, -925, -277, -894, -240, -224, -246, -56, -500, -249, -791, -1523, -225, -243, -315, -231, -267, -439, -232, -223, -238, -243, -276, -240, -259, -261, -314, -256, -323, -245, -261, -414, -286, -89, -232, -268, -818, -764, -1122, -652, -518, -279, -1081, -241, -262, -234, -171, -992, -274, -444, -321, -248, -884, -714, -231, -258, -215, -825, -246, -530, -282, -438, -259, -260, -374, -627, -578, -603, -794, -965, -227, -237, -224, -431, -242, -236, -245, -492, -242, -779, -242, -219, -246, -224, -364, -265, -188, -1278, -1909, -384, -51, -1974, -36, -225, -573, -878, -292, -213, -2668, -251, -1161, -906, -697, -914, -261, -474, -320, -564, -314, -536, -331, -274, -262, -261, -753, -815, -254, -294, -273, -259, -1798, -226, -297, -222, -258, -791, -1254, -254, -767, -259, -245, -304, -235, -260, -275, -940, -244, -843, -279, -262, -282, -1031, -233, -265, -983, -259, -256, -254, -278, -699, -1391, -1412, -285, -106, -768, -241, -372, -276, -121, -274, -257, -276, -1039, -560, -1277, -260, -267, -547, -239, -118, -423, -239, -1278, -893, -366, -352, -505, -1450, -1063, -233, -710, -500, -227, -239, -937, -784, -564, -231, -601, -281, -509, -256, -229, -264, -589, -1738, -322, -589, -868, -253, -248, -945, -128, -309, -953, -3122, -1375, -227, -251, -250, -255, -1133, -307, -247, -247, -128, -322, -283, -307, -728, -922, -257, -255, -226, -509, -221, -3099, -501, -884, -317, -961, -1064, -738, -216, -252, -933, -988, -369, -322, -324, -234, -433, -677, -386, -301, -544, -3013, -362, -320, -938, -430, -315, -349, -299, -287, -798, -331, -331, -522, -379, -277, -579, -342, -263, -255, -426, -278, -770, -269, -825, -875, -449, -248, -247, -265, -990, -446, -222, -1037, -110, -218, -417, -290, -388, -2178, -247, -522, -3693, -266, -248, -811, -427, -231, -339, -247, -457, -264, -549, -1122, -285, -971, -243, -1121, -277, -575, -447, -297, -670, -262, -500, -747, -214, -611, -727, -601, -1677, -814, -875, -234, -606, -504, -222, -943, -3983, -1216, -352, -199, -975, -3352, -314, -204, -963, -437, -1236, -331, -226, -281, -1188, -331, -658, -539, -318, -441, -291, -244, -294, -276, -267, -879, -258, -259, -261, -841, -408, -569, -796, -228, -308, -278, -287, -463, -522, -439, -301, -275, -780, -557, -260, -427, -302, -266, -268, -164, -314, -932, -290, -497, -309, -1000, -1786, -288, -237, -283, -548, -311, -288, -426, -303, -110, -82, -284, -338, -261, -285, -1551, -98, -283, -478, -4001, -262, -406, -460, -298, -357, -224, -274, -872, -90, -1089, -949, -407, -210, -541, -274, -860, -818, -2829, -240, -265, -235, -929, -574, -365, -599, -312, -377, -914, -322, -234, -251, -300, -247, -236, -240, -503, -217, -258, -258, -234, -906, -239, -262, -747, -253, -1855, -261, -451, -775, -265, -544, -413, -932, -268, -755, -1312, -698, -3463, -766, -383, -265, -509, -262, -297, -684, -407, -232, -1317, -407, -785, -458, -381, -317, -263, -282, -193, -471, -240, -637, -225, -1066, -313, -452, -803, -321, -1316, -245, -253, -1015, -258, -459, -265, -237, -281, -263, -248, -250, -254, -269, -769, -1479, -240, -260, -363, -254, -975, -248, -703, -351, -384, -257, -315, -259, -266, -271, -1136, -243, -278, -400, -905, -361, -642, -456, -362, -257, -242, -264, -1300, -255, -1413, -250, -968, -225, -255, -324, -278, -283, -425, -265, -454, -412, -1002, -316, -281, -243, -252, -1125, -336, -905, -291, -389, -602, -323, -296, -307, -108, -392, -246, -254, -254, -219, -282, -275, -607, -532, -436, -237, -218, -1216, -259, -249, -1838, -268, -215, -203, -265, -287, -808, -913, -1299, -1845, -791, -247, -714, -2586, -1130, -441, -398, -387, -226, -731, -186, -2805, -294, -954, -267, -751, -159, -307, -254, -290, -253, -277, -273, -262, -249, -503, -255, -248, -393, -272, -668, -990, -1045, -306, -244, -982, -788, -775, -1011, -1174, -1431, -141, -429, -285, -236, -217, -240, -1035, -143, -292, -808, -637, -223, -386, -871, -3825, -862, -352, -1761, -609, -906, -605, -300, -326, -438, -964, -467, -790, -249, -238, -1371, -721, -356, -261, -284, -300, -1071, -423, -649, -605, -341, -308, -85, -266, -672, -283, -271, -1070, -412, -293, -1622, -375, -226, -348, -458, -279, -254, -296, -235, -279, -399, -443, -287, -301, -500, -1182, -374, -238, -318, -101, -2923, -80, -427, -279, -267, -933, -812, -243, -822, -255, -263, -270, -259, -282, -229, -275, -250, -271, -236, -363, -182, -1314, -259, -260, -260, -1208, -147, -451, -276, -294, -85, -1024, -255, -312, -1283, -296, -277, -472, -210, -1021, -226, -235, -1046, -1677, -282, -215, -724, -1105, -262, -296, -333, -261, -274, -216, -239, -251, -293, -500, -892, -67, -1020, -971, -585, -889, -83, -210, -1002, -311, -269, -416, -706, -890, -246, -407, -675, -647, -266, -288, -855, -619, -964, -264, -276, -851, -347, -545, -788, -1030, -942, -442, -236, -246, -222, -330, -970, -506, -248, -694, -260, -469, -320, -218, -422, -297, -255, -1382, -251, -267, -1026, -574, -1076, -88, -347, -466, -86, -343, -2118, -423, -955, -470, -445, -935, -347, -308, -426, -289, -242, -582, -296, -249, -289, -273, -255, -300, -292, -409, -305, -883, -1238, -933, -260, -466, -292, -309, -400, -304, -89, -255, -301, -141, -227, -263, -48, -415, -243, -437, -359, -203, -263, -255, -306, -252, -277, -458, -849, -230, -213, -480, -358, -370, -649, -287, -227, -247, -267, -261, -383, -258, -300, -1203, -305, -840, -273, -260, -329, -234, -288, -283, -287, -245, -299, -240, -276, -1009, -183, -251, -329, -452, -265, -472, -710, -1232, -255, -265, -913, -343, -431, -288, -1293, -358, -262, -282, -245, -258, -233, -266, -238, -494, -217, -263, -248, -83, -287, -299, -368, -188, -271, -488, -1314, -244, -879, -276, -876, -408, -104, -237, -416, -97, -259, -545, -216, -1066, -806, -530, -277, -485, -283, -330, -1282, -277, -327, -248, -943, -782, -287, -260, -311, -252, -297, -117, -345, -892, -323, -268, -339, -259, -279, -254, -234, -257, -258, -84, -233, -292, -229, -250, -768, -259, -783, -251, -384, -1574, -459, -345, -259, -987, -244, -242, -279, -317, -266, -249, -1029, -262, -330, -104, -274, -1317, -268, -3084, -264, -546, -248, -322, -276, -261, -1147, -459, -247, -983, -1307, -262, -272, -98, -3188, -260, -1776, -233, -239, -329, -171, -241, -252, -370, -228, -1478, -238, -269, -252, -458, -788, -82, -387, -643, -1383, -860, -239, -250, -954, -252, -405, -261, -778, -369, -245, -339, -263, -270, -565, -235, -243, -283, -1181, -267, -299, -196, -2322, -1029, -579, -2459, -259, -250, -289, -810, -262, -904, -284, -246, -1027, -896, -882, -1115, -405, -685, -1152, -417, -856, -405, -257, -957, -252, -288, -259, -903, -444, -472, -932, -244, -1112, -277, -484, -309, -354, -698, -272, -304, -638, -915, -260, -938, -349, -2327, -795, -222, -2182, -330, -294, -127, -1030, -378, -1591, -277, -1031, -328, -796, -543, -535, -810, -150, -1074, -274, -127, -295, -1071, -405, -237, -1242, -256, -483, -842, -541, -550, -240, -252, -927, -244, -263, -516, -1047, -896, -90, -258, -89, -263, -101, -318, -264, -297, -922, -253, -242, -258, -234, -1071, -288, -302, -239, -264, -254, -234, -575, -216, -259, -623, -267, -256, -1026, -239, -443, -1010, -1410, -1119, -235, -435, -202, -658, -293, -411, -272, -801, -534, -271, -1721, -246, -254, -524, -2910, -357, -535, -243, -483, -1456, -728, -384, -678, -833, -528, -440, -795, -410, -300, -318, -188, -257, -524, -329, -252, -445, -264, -1138, -289, -419, -242, -2986, -303, -444, -319, -681, -1078, -256, -1100, -244, -241, -282, -1034, -267, -603, -1060, -490, -374, -277, -267, -282, -264, -444, -269, -260, -278, -227, -321, -242, -769, -572, -811, -250, -236, -318, -493, -1200, -497, -953, -1612, -448, -495, -1456, -362, -519, -975, -953, -278, -216, -2591, -3872, -130, -368, -940, -309, -547, -264, -39, -620, -343, -897, -1274, -234, -2464, -258, -155, -226, -854, -297, -243, -686, -285, -360, -1256, -275, -455, -285, -221, -240, -267, -268, -276, -374, -248, -699, -275, -1098, -370, -358, -223, -263, -789, -248, -2618, -571, -826, -917, -361, -223, -2277, -257, -725, -1135, -989, -2561, -2975, -470, -677, -429, -1139, -226, -661, -559, -189, -257, -1147, -615, -1260, -286, -106, -609, -617, -754, -602, -333, -945, -492, -1027, -293, -248, -260, -95, -929, -1380, -290, -272, -290, -2285, -570, -429, -648, -635, -1086, -321, -410, -286, -406, -300, -283, -250, -1162, -254, -459, -317, -228, -280, -997, -827, -313, -290, -349, -1027, -524, -303, -1103, -330, -389, -447, -428, -184, -869, -2244, -257, -250, -275, -2377, -368, -889, -320, -1095, -573, -277, -320, -981, -231, -240, -483, -539, -236, -410, -450, -1044, -510, -387, -238, -149, -262, -289, -1478, -1332, -258, -533, -238, -1092, -801, -536, -277, -1104, -324, -603, -558, -545, -390, -536, -338, -345, -346, -1140, -389, -367, -337, -367, -346, -273, -291, -225, -294, -369, -243, -310, -274, -295, -307, -301, -1297, -2212, -274, -97, -248, -269, -616, -347, -462, -322, -236, -434, -495, -286, -262, -229, -92, -301, -309, -262, -272, -278, -293, -288, -238, -235, -292, -267, -303, -1006, -255, -954, -601, -169, -1422, -1413, -437, -830, -257, -215, -1204, -1546] + }, + + "dimensions": [ + { + "constraintrange": [100000, 150000], + "label": "Block height", + "values": [32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 32000, 162666, 86600, 163400, 162600, 90000, 93100, 163000, 140500, 130000, 100700, 164500, 147700, 121700, 107500, 176600, 133600, 111100, 93100, 72400, 130100, 54500, 182600, 160300, 218100, 66500, 95800, 164800, 107200, 101600, 91100, 91100, 78100, 63300, 75700, 69600, 88500, 115800, 195700, 88900, 74800, 65400, 74900, 115300, 91400, 67800, 85300, 171300, 32000, 227900, 163200, 122899, 112300, 101500, 111199, 73300, 120800, 93100, 117200, 118500, 104800, 108500, 146500, 90300, 32000, 93000, 110700, 103500, 93300, 106300, 118500, 93000, 67600, 51400, 89000, 94000, 88200, 109600, 102100, 123600, 81900, 100000, 218100, 223200, 97300, 162100, 97400, 145800, 67400, 156500, 201900, 94300, 67800, 76100, 98300, 112400, 141800, 111400, 74700, 67300, 71100, 68900, 62100, 73800, 85500, 94400, 68300, 79400, 96300, 70400, 67300, 67300, 128400, 80800, 87600, 165900, 35900, 76200, 79000, 38900, 157200, 64400, 67700, 65700, 125800, 59300, 66100, 198700, 96100, 65600, 70300, 69200, 65500, 129300, 62600, 64200, 61800, 60800, 83100, 58800, 69600, 60400, 63500, 63500, 59300, 56600, 77200, 62900, 57300, 68000, 227900, 53099, 59100, 63099, 65900, 60500, 158100, 60199, 66600, 57699, 58900, 62699, 62000, 58600, 78700, 60700, 60400, 66000, 66000, 133300, 60800, 63200, 60400, 68400, 64600, 61400, 61900, 59000, 155600, 53500, 62000, 60599, 63700, 118500, 48000, 57400, 58200, 56800, 62300, 54500, 61300, 62200, 53200, 51600, 88500, 125100, 60800, 61500, 59200, 56300, 60800, 179300, 58300, 199500, 102100, 60800, 183200, 58800, 125000, 56900, 58600, 53700, 56100, 127600, 96100, 56700, 120500, 58600, 53600, 59000, 113800, 59000, 59200, 54500, 135700, 161200, 57300, 53000, 127000, 54600, 55300, 89700, 59400, 54900, 64700, 56200, 127100, 57000, 35400, 51800, 170100, 54000, 56700, 73600, 83200, 53000, 60500, 52699, 51600, 92100, 56600, 57400, 65500, 58400, 97600, 52900, 56700, 207600, 221900, 56500, 57600, 63900, 54700, 56900, 56000, 49700, 51600, 53400, 58500, 65000, 57100, 55900, 56100, 59800, 55300, 57699, 57600, 53200, 53900, 63000, 58400, 57500, 61200, 62699, 61000, 60199, 57600, 128800, 57699, 59900, 94200, 60900, 55100, 56300, 54100, 61400, 55000, 223100, 57699, 52200, 55300, 54000, 61000, 54800, 59500, 59000, 54400, 57800, 57100, 53200, 56300, 58300, 56100, 53900, 55100, 54100, 59500, 188900, 92300, 105500, 67100, 100000, 202500, 101800, 55900, 86800, 55300, 56700, 59400, 51400, 49000, 54600, 49400, 65300, 56800, 55599, 184500, 55000, 55000, 86900, 60100, 89700, 52500, 52500, 55500, 91700, 104600, 67500, 50700, 63300, 55400, 54500, 62600, 52699, 54100, 53400, 54800, 53200, 59900, 74500, 134800, 52400, 105300, 53700, 215200, 101700, 57200, 54400, 60300, 50800, 129400, 55100, 165700, 55000, 51700, 56000, 54000, 56500, 54500, 56000, 78600, 56300, 54700, 59600, 58300, 58800, 52400, 54500, 57100, 119100, 50100, 56500, 58900, 66500, 55599, 225400, 57699, 97200, 57000, 212900, 57300, 101600, 216500, 55400, 65800, 53000, 164200, 124600, 86300, 56000, 95200, 152700, 208299, 32000, 60400, 60700, 196600, 55000, 77200, 37500, 52000, 55300, 54100, 53500, 52800, 55100, 60100, 125000, 62400, 63700, 106900, 54300, 54100, 217500, 56400, 69700, 101000, 57500, 55100, 153500, 53700, 54700, 58099, 53900, 37000, 53200, 62000, 52100, 53900, 54500, 61600, 59700, 218200, 54700, 189200, 55599, 70600, 63700, 107100, 68800, 55700, 56400, 57400, 32000, 83200, 61200, 217900, 62100, 62400, 60900, 60700, 56300, 57600, 105399, 60000, 56700, 221200, 157700, 58200, 58099, 54700, 60900, 61300, 162600, 60900, 224600, 57699, 52699, 59600, 71200, 52100, 57500, 60500, 134900, 67200, 63700, 55000, 65199, 161600, 80300, 70000, 73300, 56200, 68400, 183700, 180100, 56400, 77600, 197800, 215799, 56600, 73300, 57500, 57500, 55199, 54800, 55900, 63300, 106400, 163200, 70800, 71900, 166000, 114100, 100900, 164300, 93600, 150000, 98200, 161400, 200400, 92600, 127600, 97600, 84400, 96600, 55599, 100500, 112000, 110000, 89800, 97700, 84200, 79600, 102400, 84800, 86900, 166600, 91300, 79600, 78100, 85800, 88200, 104200, 76600, 83300, 110800, 75600, 76100, 113800, 86400, 86800, 74800, 77100, 95200, 86900, 172300, 69700, 87500, 79600, 65300, 80800, 82400, 67100, 79400, 78500, 84800, 76100, 47200, 79400, 78200, 220300, 66100, 78300, 85900, 92100, 80800, 74500, 72800, 36200, 75800, 77400, 69600, 62600, 90700, 70700, 93100, 40400, 62600, 94400, 73600, 72000, 138200, 75400, 73300, 170700, 75500, 144500, 76600, 72000, 78200, 33200, 74100, 67900, 35300, 72000, 69900, 68600, 69400, 74300, 73400, 128400, 71800, 217399, 86500, 174200, 67800, 86500, 136800, 125399, 75200, 108000, 72700, 223900, 67300, 73600, 86500, 83800, 70900, 72900, 71300, 71800, 88600, 60300, 77200, 65300, 63300, 68900, 127100, 70700, 223600, 68700, 66000, 70800, 69000, 60599, 65700, 64200, 150700, 65000, 68700, 75800, 154200, 63300, 103400, 70200, 66400, 69200, 71000, 65700, 62300, 70100, 72200, 68700, 64600, 67600, 61800, 68100, 129200, 54900, 77600, 169700, 67100, 64100, 69300, 65700, 64600, 71800, 65199, 61800, 198400, 208800, 72100, 59800, 66200, 62900, 152500, 72200, 57600, 61300, 61900, 54900, 177200, 79500, 60800, 67000, 61100, 155600, 63400, 61500, 65100, 150000, 64500, 56800, 59600, 59000, 63000, 59000, 56700, 59000, 58400, 60700, 56700, 56900, 54900, 54800, 52200, 54700, 54800, 62000, 134700, 115700, 59700, 51500, 66900, 55599, 56400, 52900, 56800, 52900, 58200, 57699, 59100, 53200, 55800, 53300, 60400, 58200, 107500, 55500, 56800, 54400, 56100, 201400, 56600, 176200, 84400, 54100, 214700, 55800, 123699, 173700, 73600, 55199, 169200, 82600, 56500, 62300, 59100, 151900, 122700, 66700, 58200, 56400, 57400, 55000, 56000, 111900, 60400, 149700, 71700, 56600, 93800, 178700, 80900, 54700, 87700, 118900, 52300, 195900, 190200, 58000, 51300, 211300, 54500, 56600, 56900, 111800, 54900, 79400, 69700, 62800, 78600, 57600, 55199, 57000, 56600, 57200, 68600, 53800, 53900, 54900, 122500, 63500, 179300, 57800, 55700, 89400, 61800, 32000, 79000, 214100, 61400, 56000, 54900, 61900, 55100, 58800, 54400, 82600, 176300, 56600, 55100, 59100, 141700, 60100, 54500, 71700, 58900, 58800, 52100, 60000, 56900, 77700, 62600, 57900, 53300, 52400, 59800, 218900, 70700, 218200, 144700, 53300, 57200, 53900, 54000, 55400, 107700, 53800, 121300, 52400, 54600, 199500, 118200, 80900, 202900, 56600, 53400, 52100, 56600, 222600, 50300, 65100, 54200, 54600, 60199, 183700, 134800, 146300, 62500, 52600, 56500, 53099, 180700, 57800, 53500, 52000, 54300, 87300, 57699, 54300, 64400, 68500, 213299, 57300, 51800, 56300, 50000, 67200, 49500, 51100, 63500, 62400, 165500, 49300, 51200, 58099, 77700, 40800, 55000, 63500, 78000, 208000, 56900, 58099, 53900, 83600, 55599, 53800, 86300, 55100, 55700, 58400, 59100, 206600, 55000, 51100, 61600, 187000, 54400, 57699, 55700, 56800, 54000, 52200, 53700, 57100, 55100, 56600, 76700, 56400, 58700, 58200, 58900, 56300, 182300, 59500, 57200, 52300, 54600, 77100, 54300, 57400, 54200, 54200, 55100, 54600, 57400, 57500, 55900, 54900, 54400, 54400, 54600, 82300, 54400, 41600, 56500, 54000, 55900, 53400, 55100, 57300, 55199, 53500, 56300, 57500, 55800, 64600, 53900, 54100, 58500, 49700, 53400, 59500, 53700, 56900, 53700, 57000, 53800, 51100, 55900, 54700, 47900, 53500, 57400, 54700, 88600, 58400, 56900, 53200, 127200, 58900, 57400, 56600, 52600, 121800, 56900, 44700, 120600, 90300, 61300, 60700, 58900, 56800, 120300, 57600, 54700, 56800, 62600, 85700, 86700, 52400, 83900, 51800, 64500, 51100, 59200, 56100, 43000, 53700, 56000, 63600, 56900, 57800, 54100, 53700, 116199, 52200, 73800, 56100, 157600, 54400, 54600, 53300, 68400, 55100, 198900, 54500, 52800, 51600, 225100, 129100, 63800, 55400, 157100, 54300, 53800, 69400, 55700, 72100, 54600, 71900, 54300, 53800, 55700, 53900, 60900, 52300, 53000, 56300, 53400, 54300, 179100, 57500, 54300, 84000, 53300, 53500, 51500, 54300, 37700, 105600, 55100, 53600, 206700, 51700, 54200, 64900, 52600, 57699, 79900, 52500, 51300, 53900, 54100, 59300, 54100, 55800, 57100, 63800, 56800, 65900, 54400, 56900, 79000, 59300, 44200, 53099, 57500, 49300, 123600, 180700, 112500, 97500, 58600, 220400, 54000, 55300, 53500, 51900, 172200, 58600, 99300, 65900, 54800, 52900, 148300, 53099, 65300, 50500, 86100, 54500, 109600, 60400, 90200, 56500, 56500, 73100, 153500, 120900, 118300, 144300, 57100, 52500, 53400, 51300, 98900, 54800, 53400, 54600, 101100, 54500, 136800, 54700, 50500, 55599, 52200, 54000, 57699, 46900, 208800, 105399, 55500, 32100, 174200, 32599, 52100, 104700, 137900, 61300, 46100, 151600, 55700, 191100, 168600, 107500, 59500, 58300, 83100, 65400, 60100, 65300, 73500, 63900, 59600, 58700, 57800, 175200, 159100, 56100, 61600, 57800, 58000, 204800, 52500, 60800, 51200, 56900, 158200, 193900, 56200, 154800, 58500, 54100, 45400, 53500, 57000, 58900, 57600, 55100, 130399, 59800, 57400, 59600, 161700, 52600, 57800, 57600, 57400, 55900, 55500, 59600, 138800, 212200, 102300, 66700, 39800, 128400, 53300, 75600, 59000, 45300, 65100, 55700, 59100, 160900, 111500, 170700, 56600, 57500, 61000, 53300, 42900, 82100, 54700, 197200, 141700, 53800, 72400, 72800, 227900, 183900, 53700, 120700, 92600, 51800, 54100, 57100, 120700, 99900, 52600, 65300, 59900, 112899, 56800, 53300, 57200, 139700, 63500, 65800, 64600, 50500, 55700, 55900, 55800, 45800, 63800, 56400, 151500, 200100, 51100, 56100, 55599, 64500, 192300, 76100, 55300, 55199, 48000, 65800, 66300, 64400, 127100, 54300, 57000, 56100, 52000, 91000, 51800, 206800, 91900, 196200, 65199, 220500, 214899, 85700, 50800, 56000, 57699, 188500, 72100, 67200, 67000, 53000, 86100, 147100, 92600, 63500, 99800, 209400, 32000, 66500, 113699, 86800, 65100, 64000, 62400, 60300, 144700, 73100, 67200, 42100, 78400, 58600, 61800, 67900, 56500, 56400, 59700, 59000, 51900, 60100, 58300, 54900, 67800, 55700, 55599, 58400, 59800, 62400, 51300, 59800, 41700, 51400, 59700, 61700, 56500, 147400, 56500, 98300, 183500, 58200, 56200, 56800, 82700, 52900, 50700, 55700, 53500, 58500, 117100, 180400, 61500, 154900, 54900, 225000, 59900, 123300, 99300, 63000, 136000, 57300, 93900, 127000, 50800, 102700, 133500, 93200, 150900, 113300, 111000, 53300, 85600, 68800, 54000, 181900, 193000, 76500, 70500, 50900, 62100, 113600, 66700, 49800, 182900, 51300, 71000, 67100, 51800, 61300, 68500, 67500, 153900, 98200, 69700, 101100, 61700, 55700, 62800, 61100, 57600, 204200, 57400, 56400, 56800, 188400, 79500, 115600, 46300, 62300, 63200, 60500, 61200, 94900, 59400, 85900, 63800, 61100, 131300, 86500, 59400, 80800, 64100, 58000, 59100, 47300, 67400, 57500, 62400, 95200, 65600, 57600, 171100, 62300, 54100, 60900, 97200, 65000, 45800, 61200, 64300, 43300, 32700, 62100, 69500, 58400, 61600, 223700, 41200, 60800, 91500, 226800, 58200, 89200, 64800, 63200, 71900, 52400, 59600, 52000, 39700, 65600, 148900, 59600, 50000, 136800, 62900, 64100, 58900, 135400, 63099, 58600, 53200, 55599, 117800, 73300, 70900, 72100, 55100, 72400, 67200, 53600, 55000, 63800, 56000, 53600, 54000, 68900, 51200, 57500, 56700, 54700, 56100, 53700, 58200, 135500, 57300, 182200, 57900, 85200, 121100, 58600, 111300, 60199, 55300, 57500, 118400, 222000, 123200, 193400, 131300, 77300, 57800, 70300, 58400, 63099, 118900, 79200, 52800, 74600, 58600, 172100, 86500, 55400, 65300, 57500, 60100, 50000, 110200, 54400, 49600, 51900, 62100, 66100, 63000, 44900, 67200, 59400, 54800, 56200, 179700, 56600, 63900, 56900, 54900, 59800, 58500, 55100, 55000, 56100, 57100, 146400, 83200, 54500, 57600, 53600, 56600, 57200, 56200, 110200, 51700, 87300, 57200, 73700, 57000, 58600, 58700, 177800, 54400, 60599, 58000, 53000, 68400, 147200, 103600, 53900, 56100, 54700, 57699, 155400, 57400, 225799, 56100, 202000, 52100, 55900, 80100, 59300, 59000, 89200, 65300, 86100, 78400, 58900, 63500, 63900, 55000, 55599, 64700, 68200, 53200, 60900, 93600, 132900, 67000, 61400, 64600, 42600, 93500, 54800, 55900, 56100, 54900, 59600, 58800, 137400, 87500, 59300, 54400, 51500, 183200, 57200, 55900, 65000, 58000, 50500, 48700, 58600, 60500, 140700, 122500, 192500, 65300, 122600, 59600, 162700, 106700, 61300, 60599, 57699, 74400, 55100, 49600, 49800, 190300, 80200, 81600, 58000, 128100, 40300, 64900, 81300, 61900, 55199, 59900, 59100, 57000, 55800, 57600, 56300, 68800, 69300, 58800, 145700, 58600, 164700, 61000, 55700, 168000, 139200, 167700, 172000, 65600, 155200, 46200, 84200, 64000, 54000, 51600, 54200, 95000, 47200, 58900, 140400, 53400, 52400, 56500, 51500, 223800, 181600, 65800, 92700, 114800, 169200, 138500, 59300, 60300, 87100, 63600, 83000, 53600, 55300, 53600, 140500, 155100, 66700, 56000, 57699, 60900, 173700, 84700, 86100, 104700, 65700, 61300, 38600, 57500, 59000, 61100, 57100, 57000, 77500, 58800, 173800, 73600, 71200, 69400, 61200, 60400, 55100, 60599, 53800, 58500, 57400, 59200, 58099, 62600, 57699, 168800, 72600, 58800, 65400, 35800, 152500, 32000, 60100, 60300, 57200, 223900, 55900, 54200, 147200, 55700, 57300, 68800, 56800, 60100, 58200, 58600, 56100, 74800, 54500, 70600, 49400, 132700, 56700, 57300, 57000, 189800, 46300, 86100, 58700, 62500, 38900, 74000, 65500, 73200, 188900, 71000, 60199, 81700, 50100, 221900, 52500, 53099, 163500, 61000, 69000, 51800, 51200, 197600, 56600, 61600, 68800, 56900, 59700, 47800, 54600, 54800, 62200, 69300, 52300, 36000, 213600, 56600, 94200, 52500, 39100, 49600, 181000, 64200, 57300, 60100, 169800, 54400, 55400, 62600, 112700, 118500, 58000, 61100, 52600, 85800, 84400, 57600, 58800, 62200, 75200, 95900, 51800, 60100, 56500, 87300, 54300, 56300, 51500, 68300, 56700, 49100, 56800, 127700, 59400, 54100, 66900, 50900, 94900, 62900, 56700, 71300, 55700, 57600, 184300, 100500, 63000, 39000, 69400, 65100, 32000, 69300, 113500, 60000, 80100, 87600, 62100, 216000, 74700, 64300, 65500, 61700, 54100, 135300, 73100, 55100, 61500, 59200, 60900, 63600, 62200, 105800, 63500, 49500, 214600, 63400, 59900, 95600, 62000, 64000, 58099, 63300, 35500, 58700, 63300, 44200, 55599, 56000, 32000, 60199, 57000, 86100, 74700, 49600, 59100, 57400, 65400, 55900, 60700, 53200, 177300, 53200, 52100, 92700, 74300, 73900, 129600, 64500, 52699, 56000, 60800, 58300, 76400, 57000, 65500, 177100, 66800, 49900, 58900, 57300, 66700, 58200, 61600, 62100, 68200, 55199, 64300, 53500, 60199, 60700, 47600, 57000, 94400, 95200, 59600, 61200, 161400, 51800, 56900, 59000, 165500, 69500, 61800, 62600, 205200, 52600, 58800, 61100, 55599, 58600, 53900, 60400, 53400, 115399, 50100, 58700, 56300, 37900, 61800, 63400, 75100, 52400, 59800, 113300, 210700, 55800, 138900, 59600, 185300, 102700, 42100, 54900, 87200, 40900, 58200, 135400, 51700, 62500, 171300, 109000, 59800, 102700, 62600, 77800, 198400, 61200, 65400, 55100, 153700, 165900, 62000, 58600, 71000, 56500, 63099, 40900, 83200, 60599, 73800, 59800, 70900, 58500, 61300, 56300, 55100, 58000, 57800, 38000, 53500, 61800, 53800, 55500, 54300, 56000, 54700, 55700, 71500, 179800, 53500, 64100, 58400, 63700, 55500, 54600, 60800, 64300, 58800, 56600, 186600, 58200, 61500, 35100, 60100, 212399, 58600, 171800, 58300, 96700, 56900, 66400, 60300, 58500, 71300, 65100, 56300, 59600, 196000, 57800, 60000, 42600, 181600, 57300, 195500, 54200, 55400, 61500, 44500, 55000, 56300, 66700, 52699, 143500, 54400, 58400, 56300, 53300, 191900, 38000, 76000, 111000, 198900, 160900, 54500, 55400, 56100, 55000, 81500, 57100, 119400, 74200, 55700, 70200, 57600, 58600, 134700, 53000, 55100, 60199, 224100, 58000, 62500, 56500, 134200, 60300, 73800, 209400, 57000, 55900, 62200, 55900, 57500, 159200, 61200, 55300, 168000, 55700, 55300, 219200, 76600, 128800, 211000, 87500, 58600, 57500, 56300, 202600, 56200, 61100, 56800, 153900, 88400, 97400, 166600, 54900, 220000, 81800, 98600, 66900, 86500, 152300, 59100, 86400, 73100, 55000, 57100, 54800, 65500, 138200, 177700, 51600, 108699, 67000, 61500, 45500, 58500, 55400, 133800, 59200, 213100, 66600, 122100, 97100, 92100, 135300, 49600, 73000, 58200, 51900, 61400, 60700, 58099, 53300, 192600, 55800, 121500, 139700, 40100, 115700, 54300, 56000, 58400, 54400, 57699, 98800, 214800, 161400, 39300, 56900, 41700, 57000, 39600, 65600, 56600, 65900, 219100, 55800, 54300, 56300, 52600, 61100, 60800, 65500, 53700, 57100, 54800, 52500, 46500, 50900, 55199, 46300, 57100, 56300, 58900, 53500, 59800, 217399, 59300, 185900, 43300, 59000, 51700, 133000, 75300, 58000, 57699, 97800, 117400, 57200, 185500, 53800, 56700, 115600, 170200, 65900, 79000, 55199, 100000, 96700, 123699, 76700, 169400, 136700, 71400, 61000, 127400, 58800, 62400, 48400, 44200, 55599, 91600, 67000, 55599, 62800, 58000, 65600, 61700, 59300, 54300, 201700, 62699, 108400, 64100, 71100, 59900, 56300, 227900, 54100, 53900, 61700, 165200, 59100, 115800, 62400, 92400, 55599, 59500, 58800, 60500, 57400, 80700, 58500, 56500, 59800, 60400, 63300, 55199, 118900, 63500, 195000, 54700, 53099, 67100, 55700, 219200, 56900, 70300, 156000, 83600, 95100, 210200, 67000, 48000, 56700, 172100, 59400, 62800, 195400, 133800, 44800, 54900, 57300, 63000, 95000, 57600, 32000, 138600, 71000, 61200, 73500, 53400, 194800, 56900, 49200, 51900, 60300, 60900, 57000, 116100, 61300, 81000, 205000, 57800, 117000, 61300, 51800, 54300, 58600, 57800, 61500, 82400, 55900, 156600, 59300, 227800, 55000, 54400, 52000, 58900, 54100, 55599, 177500, 92500, 57100, 148600, 53400, 52200, 113200, 57300, 87100, 227100, 215200, 195700, 144300, 91500, 148700, 91100, 198200, 52600, 108500, 90700, 68600, 56500, 174600, 103400, 215600, 60500, 41600, 102899, 81100, 121300, 79200, 67400, 64400, 109400, 57000, 61400, 54800, 56300, 41500, 175700, 140300, 61000, 68200, 59700, 84600, 43300, 82600, 112300, 34900, 168200, 71700, 79800, 60800, 79500, 61700, 60800, 54800, 69300, 60100, 64100, 64500, 52100, 58600, 58900, 56200, 65500, 58700, 70400, 216700, 103400, 62699, 64600, 66600, 56300, 66300, 73800, 50500, 170100, 122000, 55300, 56000, 58099, 126500, 52200, 147000, 65900, 193200, 115300, 62600, 65900, 202300, 52800, 53900, 101000, 95000, 53700, 73300, 84400, 227900, 54300, 93200, 60500, 38400, 57300, 61400, 170400, 224500, 57100, 95000, 53400, 208900, 138800, 73200, 59600, 223600, 70400, 111900, 72900, 100500, 76000, 71600, 68000, 71100, 67700, 75900, 74200, 72800, 66500, 69400, 66200, 59400, 61000, 52300, 62900, 71200, 55400, 67000, 59300, 63200, 64500, 65100, 222600, 183400, 59600, 40400, 55599, 58500, 125000, 64700, 115399, 66400, 54500, 81700, 124400, 60500, 56300, 53900, 32000, 64200, 64800, 58300, 56800, 65000, 62800, 62300, 53200, 58300, 61300, 58600, 64400, 58099, 55700, 158400, 155100, 49700, 170000, 213500, 75600, 162300, 59900, 47000, 223600, 187300] + }, + { + "label": "Block width", + "range": [0, 700000], + "values": [268630, 489543, 379086, 600000, 489543, 268630, 600000, 379086, 268630, 489543, 379086, 600000, 489543, 268630, 600000, 379086, 268630, 489543, 379086, 600000, 489543, 268630, 600000, 379086, 268630, 489543, 436900, 373600, 268630, 439000, 381800, 491200, 402800, 381400, 485600, 600000, 372200, 394700, 383800, 401100, 356500, 313200, 487100, 490700, 432299, 530300, 521500, 456700, 333800, 343200, 394000, 328200, 487700, 383600, 317700, 324600, 482900, 515100, 500100, 562700, 486000, 453400, 352900, 331300, 496200, 469099, 472500, 354700, 507700, 509000, 439300, 525300, 347600, 379000, 432800, 378800, 383200, 523800, 600000, 313600, 497700, 411300, 420000, 381100, 342800, 385900, 268630, 495800, 488000, 446400, 397900, 373300, 385700, 396500, 475700, 510600, 586800, 596000, 407600, 439200, 440800, 393100, 274600, 291900, 509799, 432800, 303000, 530600, 515900, 376800, 377400, 553500, 433600, 270800, 288000, 488000, 306800, 418000, 456900, 526300, 524500, 524000, 418800, 442800, 443200, 497200, 427500, 510300, 476000, 382700, 472200, 380400, 472900, 541100, 528200, 441599, 374600, 414099, 437299, 272500, 550000, 417299, 443700, 268630, 545800, 403400, 534400, 557200, 545200, 537400, 464300, 571200, 589400, 564000, 466500, 514500, 433200, 293600, 550100, 466599, 450100, 557200, 489000, 512200, 445600, 531000, 504400, 459799, 528800, 579800, 352900, 520700, 532000, 477900, 395600, 478900, 461300, 481400, 507500, 487200, 522299, 496000, 499600, 485200, 491500, 548300, 526000, 489600, 444000, 500900, 527600, 533200, 450000, 566500, 486300, 500700, 534900, 493000, 481100, 482500, 490900, 510200, 584700, 560700, 492000, 474600, 495300, 594100, 433700, 522500, 513100, 507500, 488100, 506400, 510400, 482700, 500400, 532000, 477700, 369600, 491200, 499400, 489200, 509099, 513600, 479600, 507299, 547600, 415300, 485900, 410400, 507700, 546700, 503300, 503600, 547700, 509200, 522400, 319700, 517200, 473000, 506800, 511400, 559200, 537900, 515300, 487500, 519000, 361100, 270800, 519000, 518200, 508200, 503900, 516500, 508600, 504900, 506500, 505300, 522000, 507500, 521400, 504600, 521400, 418700, 516700, 508400, 515400, 387000, 522299, 557300, 516599, 510600, 383600, 514700, 516700, 515600, 528200, 491500, 517900, 505000, 430300, 425300, 517800, 512600, 511599, 511300, 501599, 519099, 359700, 522400, 510400, 501100, 524600, 516000, 513800, 503100, 517000, 511400, 513700, 504000, 506900, 517000, 535700, 572700, 497900, 501900, 512600, 513800, 515000, 520700, 295100, 509700, 522299, 338800, 521300, 517200, 519500, 520800, 509300, 520700, 356000, 523000, 513600, 525100, 515700, 510000, 528300, 565200, 509300, 515500, 526900, 514200, 522200, 518500, 557400, 565100, 530700, 511100, 538200, 483700, 588800, 285200, 569100, 520800, 406300, 278300, 569500, 513900, 289000, 519600, 513600, 526900, 525500, 530300, 502000, 480000, 518500, 513000, 516900, 507000, 534300, 520400, 488500, 536000, 518900, 519000, 509400, 535500, 533600, 384900, 542700, 517200, 535700, 520500, 517100, 538700, 525900, 524200, 517100, 523600, 512900, 542400, 306800, 544600, 516599, 582200, 519900, 510900, 427200, 521300, 525900, 438200, 523500, 480000, 519600, 325400, 523300, 525200, 526500, 516400, 523800, 525400, 518700, 530800, 526400, 524400, 566400, 519500, 519700, 518400, 580400, 520600, 567600, 585000, 519300, 524300, 520800, 520900, 533400, 529500, 583500, 531400, 450000, 557600, 420700, 402900, 524500, 518700, 521800, 316400, 497100, 518900, 504400, 539400, 507000, 339700, 493800, 496700, 517500, 523400, 524400, 526200, 311300, 519200, 327600, 520400, 524800, 526400, 519200, 485200, 361000, 519300, 574400, 330400, 511800, 511200, 592800, 520900, 390400, 322200, 524600, 513300, 542400, 517200, 527300, 512700, 516100, 570800, 508900, 523500, 543500, 513700, 519700, 469000, 557400, 515000, 511000, 382700, 521400, 497900, 571100, 514099, 461100, 505600, 563300, 509200, 446300, 458000, 518000, 316500, 525600, 515700, 468600, 516300, 515400, 499000, 487500, 486900, 519099, 270200, 290900, 518000, 509900, 519300, 517299, 468700, 582300, 517200, 461100, 558600, 490500, 499099, 507100, 517600, 535200, 512100, 375300, 506100, 502200, 519600, 559900, 531200, 508100, 553600, 510700, 538600, 525200, 286400, 581800, 534900, 503500, 345400, 428300, 539400, 552000, 523400, 516300, 514099, 519200, 515800, 508000, 500400, 374900, 529900, 527100, 600000, 309600, 583500, 600000, 376000, 473900, 484799, 419300, 287200, 596600, 464600, 398900, 383900, 487000, 431900, 490700, 600000, 381100, 515800, 381500, 540900, 539100, 416500, 428800, 439300, 441300, 496000, 550800, 414300, 422100, 598200, 387800, 561100, 364000, 359700, 523400, 455300, 600000, 380400, 424000, 458600, 382500, 401100, 425100, 550500, 436599, 493200, 393200, 437900, 401100, 386300, 432299, 444799, 428200, 368800, 415700, 369900, 413400, 413000, 482100, 436000, 368600, 369300, 401300, 400400, 418300, 432299, 278800, 436100, 411800, 431300, 551100, 406300, 541500, 404200, 547200, 437000, 390200, 417900, 415800, 460600, 434900, 442600, 309300, 452000, 272200, 459700, 423300, 414799, 468900, 429300, 436700, 427400, 438800, 421100, 421700, 434000, 470700, 474799, 521599, 414400, 307300, 416700, 579600, 432400, 566100, 416200, 432500, 483100, 373200, 494799, 507400, 489700, 440800, 389200, 436599, 418000, 446500, 450700, 445200, 594100, 443900, 489000, 493300, 448900, 449700, 406000, 437400, 278100, 453400, 509500, 433000, 431200, 308600, 507500, 452500, 524700, 451700, 468700, 423600, 447200, 472600, 418500, 466000, 457000, 442299, 455000, 458400, 463800, 450900, 452900, 544200, 456500, 521700, 490900, 457200, 502500, 499099, 446800, 597000, 440600, 478700, 428700, 556900, 498300, 442000, 437900, 419000, 486000, 490700, 463000, 505500, 496700, 486200, 528300, 434200, 502600, 502400, 477800, 470500, 533400, 520700, 508400, 346400, 498900, 511300, 486900, 499300, 508100, 545700, 458400, 524300, 504700, 497299, 454300, 501100, 499900, 497800, 506900, 494500, 501000, 515300, 515000, 505300, 520200, 524099, 502600, 483000, 413400, 562300, 511700, 523500, 478800, 514600, 511100, 505500, 505300, 519099, 499600, 506900, 510500, 519900, 512400, 520400, 504500, 500900, 433200, 515900, 500700, 517100, 508200, 505900, 498900, 274800, 523200, 518100, 434600, 491100, 439900, 508300, 338800, 513900, 464600, 524000, 511100, 565900, 503700, 331700, 484200, 533800, 530700, 519799, 544000, 513200, 466100, 484799, 537100, 541300, 513500, 515100, 495600, 580400, 514600, 517000, 519600, 552000, 538400, 399700, 448000, 522100, 503600, 353100, 511300, 515700, 487700, 421700, 509200, 600000, 422400, 523700, 526700, 513000, 521500, 516400, 518100, 513300, 516700, 524400, 499099, 517299, 428600, 514700, 540300, 507500, 517200, 464900, 519099, 512100, 537200, 440900, 507900, 522500, 514799, 513900, 523500, 510100, 525100, 548400, 361100, 512700, 518100, 524400, 588900, 527800, 528500, 341500, 500100, 510300, 516000, 504200, 502900, 424200, 506599, 502700, 511000, 512200, 524099, 595200, 415700, 460400, 361800, 519700, 514300, 527300, 516900, 512900, 532100, 514900, 312800, 510400, 515100, 518500, 383900, 269400, 547800, 515000, 515100, 514300, 518700, 316300, 508700, 503200, 512700, 511599, 515500, 506599, 384900, 362200, 527700, 527500, 515600, 510100, 289800, 517400, 510600, 531900, 513800, 530100, 517600, 522700, 522900, 525700, 376000, 520100, 512100, 513900, 512400, 528600, 521900, 498500, 530200, 514700, 494200, 315900, 527900, 514700, 521599, 521599, 526700, 516400, 507900, 542600, 518600, 521500, 523500, 459700, 513400, 517900, 515400, 521400, 512900, 517600, 522100, 274700, 520800, 511599, 517000, 428600, 520500, 519799, 522800, 526400, 506700, 514000, 513100, 517900, 520200, 517600, 583600, 526800, 524400, 523900, 515900, 523300, 498700, 524200, 519200, 517500, 525100, 549400, 526000, 517200, 516900, 520700, 521000, 521300, 525700, 527200, 519400, 518600, 516900, 519600, 517400, 496300, 527400, 322400, 518300, 519200, 518400, 523400, 523100, 516599, 516100, 517900, 512500, 514600, 519500, 514200, 517600, 520200, 519200, 515200, 520100, 517000, 519600, 509900, 520900, 519799, 519900, 518200, 512400, 517700, 526200, 516700, 519799, 519900, 382200, 518900, 520000, 518200, 488700, 523600, 522299, 522299, 521900, 295200, 511599, 499400, 526900, 572800, 478500, 570100, 520000, 516599, 530600, 509799, 526000, 512000, 491599, 530200, 581800, 525800, 529700, 522200, 598700, 517400, 508500, 510200, 428700, 522200, 507100, 517299, 527600, 534400, 526500, 520700, 486900, 526200, 525600, 514799, 510400, 514900, 529600, 520100, 330400, 520800, 401100, 520600, 516000, 525100, 388800, 404700, 525800, 526400, 480100, 525700, 515300, 391100, 518100, 431599, 527800, 430300, 517400, 518700, 523500, 512400, 514300, 516100, 517299, 508200, 520900, 527200, 296700, 514400, 520100, 289600, 513900, 528000, 522700, 527600, 308500, 415200, 522800, 527500, 402800, 521400, 523300, 518800, 521200, 522200, 547400, 525300, 522800, 518000, 524800, 518300, 518300, 534100, 518400, 530400, 512800, 520500, 524900, 522500, 520200, 537200, 307300, 517200, 527300, 514099, 557900, 521599, 525600, 492800, 533800, 359300, 522299, 546000, 514200, 401500, 475200, 523900, 394000, 517800, 525400, 517600, 382800, 513200, 414900, 519000, 517100, 525300, 421700, 515300, 453800, 522299, 525300, 522200, 297000, 402100, 440400, 462900, 517700, 514200, 522299, 526700, 382000, 513200, 519799, 521000, 436200, 516400, 490400, 514099, 526800, 510600, 513400, 509900, 518900, 512400, 500400, 521700, 517100, 390400, 589900, 327700, 517100, 499799, 565300, 522299, 589000, 495000, 519099, 502299, 433100, 413000, 540000, 503200, 563400, 521599, 553100, 511500, 503200, 558600, 510200, 499799, 510100, 308500, 410700, 518400, 522700, 532000, 502400, 386700, 512700, 538900, 522900, 516300, 396900, 545300, 517400, 393900, 495600, 529600, 552900, 516900, 519300, 521800, 495100, 513500, 583300, 516800, 516300, 526400, 550500, 526300, 517100, 516800, 510400, 525000, 526500, 518200, 414300, 548400, 395800, 447800, 419799, 530100, 532300, 493200, 522600, 373100, 445500, 530000, 520500, 560400, 440000, 297700, 524200, 526100, 518600, 528400, 400700, 503000, 508600, 545500, 555400, 520600, 494900, 473200, 521599, 471700, 509099, 526800, 510800, 525700, 516900, 498300, 595700, 526300, 520600, 525600, 519400, 380300, 514099, 506100, 524000, 321100, 522500, 520000, 520600, 529700, 521800, 510300, 520500, 385100, 522200, 518300, 577600, 588400, 536100, 513100, 518000, 419000, 480700, 392500, 515900, 517400, 353900, 520800, 448300, 511200, 502700, 518500, 512900, 521300, 519799, 535700, 512299, 407000, 517100, 322600, 518700, 297300, 366500, 600000, 515200, 516300, 490700, 408800, 525700, 504300, 509600, 521300, 481400, 359700, 371300, 511900, 504300, 451300, 467600, 507700, 532300, 470600, 516800, 590300, 522000, 526000, 463900, 455600, 518500, 406100, 475600, 529000, 547300, 529000, 531400, 517500, 527800, 526600, 459500, 494200, 500000, 487000, 469000, 511300, 511700, 508600, 504500, 519900, 521700, 522299, 400400, 511100, 513900, 513900, 511100, 408500, 498900, 490600, 559100, 514200, 505500, 506300, 503800, 516599, 524200, 510100, 510600, 505700, 395700, 523100, 506599, 542700, 512700, 366700, 511800, 386800, 397700, 511000, 404200, 518300, 499400, 520500, 511800, 555900, 465500, 268630, 582200, 305800, 500800, 518400, 472200, 512700, 483300, 405400, 573000, 465600, 516500, 476000, 472000, 546000, 496200, 503400, 414000, 516800, 514000, 520800, 523700, 502900, 513900, 515400, 318200, 511500, 469900, 379700, 515300, 504200, 506500, 495500, 523200, 297100, 508100, 525600, 522800, 321100, 507299, 423900, 536700, 394000, 527100, 506900, 515400, 447800, 509900, 490900, 508000, 493400, 523200, 429900, 486800, 522100, 505400, 517299, 506800, 448600, 489000, 496800, 504300, 486200, 500300, 525300, 278500, 501900, 512400, 510400, 530000, 511500, 370200, 507600, 504500, 373400, 485300, 497600, 504200, 501100, 505400, 587500, 373900, 511500, 492299, 560600, 506500, 421500, 506100, 509099, 509300, 508600, 511300, 515200, 376500, 499900, 558600, 500200, 514400, 293900, 470700, 407400, 490100, 375800, 406100, 506100, 520900, 514099, 415600, 506200, 581600, 435400, 512500, 432800, 504200, 513900, 529300, 506000, 507000, 518400, 520600, 515900, 512200, 508200, 517900, 497500, 497100, 523300, 506800, 471000, 500600, 269500, 508100, 512600, 584400, 505900, 425000, 501900, 513300, 526800, 584700, 472500, 287400, 573200, 510700, 492200, 517600, 506300, 502800, 509200, 514400, 508800, 520600, 518200, 515100, 340000, 510500, 521000, 517400, 516800, 519900, 476700, 357200, 514000, 404600, 519300, 514900, 501200, 521200, 559700, 503000, 514500, 518100, 515100, 458600, 519200, 518300, 530500, 501100, 520600, 503800, 521599, 527200, 519300, 534200, 433200, 521599, 512100, 510400, 518500, 511599, 516500, 505600, 594900, 528900, 407600, 510400, 425800, 517100, 508700, 516599, 543700, 520400, 506300, 511599, 523000, 554000, 332400, 379900, 511500, 525100, 513700, 516400, 513600, 503400, 510400, 511200, 352600, 515200, 524000, 382400, 521900, 536300, 445300, 427200, 508700, 523800, 518800, 538100, 470400, 511300, 520900, 518700, 516200, 520700, 526600, 367700, 362200, 507200, 528800, 508200, 380900, 372500, 520300, 521500, 517900, 464000, 525900, 522299, 345600, 597300, 549000, 507000, 508800, 569100, 513400, 511599, 539300, 519700, 517299, 519300, 507600, 523200, 493300, 465700, 577300, 538600, 589000, 460100, 325400, 440200, 552600, 537500, 514200, 528100, 474900, 460000, 463300, 401500, 340400, 340200, 518700, 517400, 560500, 505200, 276800, 510800, 530500, 513100, 515000, 523300, 512000, 510600, 517400, 365200, 596600, 517500, 358600, 515700, 545500, 553000, 505000, 487000, 484700, 349200, 488700, 532400, 436200, 411300, 492600, 477600, 511000, 506500, 517299, 358800, 400700, 555400, 494900, 372200, 507800, 511300, 520300, 542100, 355900, 571500, 552800, 467500, 430700, 339400, 564100, 600000, 478700, 454500, 554800, 458400, 519300, 521700, 484099, 359500, 567700, 535200, 555500, 541900, 520500, 479700, 501100, 533700, 554300, 552300, 379700, 522500, 404900, 508300, 538600, 573200, 532700, 557100, 565900, 518500, 309200, 522100, 538500, 509400, 533200, 539900, 511900, 535400, 519900, 542900, 556800, 523100, 505900, 382700, 527400, 451500, 518400, 479300, 535600, 493100, 516300, 510800, 529600, 274700, 516500, 522400, 470500, 526800, 519300, 401300, 519000, 518900, 441599, 526800, 510100, 349400, 505000, 531900, 461100, 272200, 521500, 514799, 519200, 535000, 424300, 505000, 525600, 510500, 375100, 407500, 408600, 425000, 583700, 420700, 508100, 574900, 513700, 324400, 512299, 522900, 552100, 510800, 418200, 498000, 510900, 444700, 528100, 526300, 504099, 521300, 509500, 565800, 509700, 531100, 512400, 506400, 528700, 368900, 346700, 520300, 599300, 519400, 364400, 520100, 445700, 520200, 531600, 504500, 295700, 500200, 513200, 460600, 547600, 481400, 515700, 518100, 499700, 337200, 330600, 517500, 525300, 479000, 460400, 536200, 470500, 516100, 506500, 482200, 507800, 499600, 519099, 504400, 518800, 331800, 498100, 469400, 486200, 518400, 504099, 518000, 399400, 511000, 512200, 571100, 518000, 524900, 447600, 368500, 511200, 382200, 521000, 513400, 515600, 514300, 529500, 519400, 347900, 516200, 522900, 295600, 464799, 514099, 465600, 512000, 522000, 334300, 401000, 522700, 514200, 513900, 459099, 507700, 510500, 316200, 518900, 550100, 458700, 513200, 480300, 445900, 513400, 519000, 510700, 519000, 448300, 486200, 514400, 441700, 471200, 537400, 381700, 503700, 484799, 485800, 483000, 505100, 496599, 502100, 497800, 518000, 502500, 517100, 363100, 511400, 489600, 484900, 485300, 508000, 419300, 473900, 511800, 505800, 483300, 503700, 501200, 515200, 486100, 589600, 479300, 520400, 517299, 513300, 522100, 451700, 510600, 495600, 434900, 513400, 498600, 527900, 507400, 500300, 489300, 500700, 290900, 432000, 493800, 553300, 327400, 519799, 510100, 501500, 451400, 512400, 504400, 498200, 522200, 517800, 498900, 507200, 508300, 494099, 507400, 485200, 523800, 351500, 529700, 500700, 504500, 386000, 506400, 508300, 491700, 432100, 502800, 357100, 512700, 503000, 560900, 514400, 352000, 333500, 377100, 500500, 450100, 377500, 499799, 303100, 501800, 511000, 356300, 425300, 513500, 418000, 490600, 410700, 543000, 496700, 533000, 520000, 528400, 360400, 504900, 497400, 445000, 508600, 509300, 431700, 387900, 444799, 436200, 496000, 490500, 496900, 499000, 516800, 493000, 498700, 503200, 387400, 512900, 516900, 499400, 519400, 505500, 531300, 510900, 517700, 556400, 538300, 512500, 581200, 497200, 464200, 506200, 515000, 505400, 529900, 506100, 502600, 440800, 505600, 589800, 503100, 504099, 508200, 511700, 497200, 507800, 530800, 495000, 513100, 505600, 500700, 551700, 502600, 501599, 497900, 566800, 511100, 501800, 352200, 562800, 513500, 563100, 503000, 499099, 587700, 512900, 508300, 512700, 591100, 514200, 523800, 511000, 516700, 511900, 514300, 279100, 381800, 511700, 527600, 598300, 434600, 511000, 519900, 522200, 531000, 483500, 519700, 600000, 503700, 505800, 498400, 515800, 516900, 322900, 523700, 511500, 519600, 399600, 518500, 519700, 397500, 484600, 513700, 268630, 315400, 517200, 514500, 505900, 515300, 516000, 473100, 509099, 514500, 301900, 490500, 486900, 380200, 531800, 455000, 425100, 448300, 515200, 527100, 522299, 344700, 514200, 518500, 519099, 497800, 475100, 440200, 459700, 515900, 376300, 304500, 445500, 485800, 375000, 354000, 513200, 309700, 472900, 507299, 516300, 521900, 569700, 546300, 327100, 517900, 578300, 518800, 524000, 386000, 531300, 510600, 378600, 521400, 354000, 520200, 596800, 524200, 557800, 525100, 383600, 433600, 528500, 305900, 526000, 530100, 519200, 523900, 543400, 527400, 310200, 525900, 442000, 404400, 515800, 516599, 558500, 523300, 514200, 479700, 357800, 457800, 380700, 514900, 341800, 524500, 407400, 516300, 532800, 476599, 281100, 520600, 519500, 524300, 527000, 526200, 522400, 488700, 523100, 524200, 536500, 530300, 396000, 514700, 540900, 428100, 531600, 520600, 525500, 525100, 537000, 330700, 552700, 497800, 318000, 537300, 472299, 298100, 377500, 529200, 533300, 531200, 380000, 537300, 583800, 535800, 511200, 379700, 472600, 579400, 444400, 509799, 433500, 430500, 523700, 500600, 277800, 535700, 518500, 530200, 560800, 516200, 522700, 525000, 561000, 531700, 549000, 517200, 522600, 514000, 512200, 516500, 511400, 522600, 519700, 402100, 524900, 339000, 534900, 541700, 546700, 519600, 348100, 527100, 523700, 498600, 535500, 504700, 456200, 509300, 499500, 503600, 517700, 507100, 513500, 520900, 545600, 515300, 525500, 515300, 412700, 550000, 507800, 594700, 275700, 284100, 531200, 524300, 497600, 526100, 424000, 513200, 406100, 520600, 524000, 484600, 590700, 573700, 402900, 521400, 450200, 520500, 366400, 414500, 531300, 404700, 504400, 503100, 531300, 546200, 517299, 348800, 351000, 496900, 513600, 514900, 515200, 393600, 515800, 400400, 521400, 497700, 537300, 484200, 535100, 510100, 426100, 502400, 537200, 305700, 509200, 510900, 516200, 509900, 523000, 490000, 433000, 508700, 337600, 515800, 347200, 507700, 498500, 514099, 498000, 521300, 513600, 467700, 597800, 512600, 535700, 517600, 510400, 361500, 508400, 550900, 367600, 326100, 352700, 579200, 483200, 352800, 434600, 462100, 510700, 564600, 600000, 268630, 519400, 565500, 555200, 466900, 521900, 390200, 552600, 512000, 563600, 513800, 519600, 439900, 383100, 544900, 522200, 525900, 529000, 361000, 420000, 490000, 522000, 410200, 540600, 563200, 493900, 507500, 523200, 600000, 556000, 453800, 507800, 517100, 504300, 532700, 512000, 529500, 501800, 467100, 515700, 526900, 522299, 534600, 511400, 522400, 508400, 554200, 512900, 341500, 455800, 525300, 509400, 524099, 519400, 471200, 597300, 448200, 402800, 519300, 537200, 513000, 532300, 529800, 535000, 522700, 516200, 455400, 429700, 479799, 516400, 359000, 518400, 520400, 427200, 536700, 515900, 576100, 518100, 320200, 297400, 368200, 432600, 571800, 517600, 515400, 534900, 474200, 513300, 530600, 524099, 399500, 497299, 507500, 516500, 362100, 471800, 480600, 538100, 500400, 515800, 518200, 522000, 498000, 538500, 440800, 533600, 514300, 538000, 552600, 556500, 512000, 523900, 514099, 505700, 535800, 505900, 485100, 515300, 503500, 510400, 492200, 462600, 375000, 511599, 384700, 514500, 516400, 414300, 577900, 320200, 513300, 504300, 522200, 308000, 521500, 531300, 499300, 535800, 502600, 509300, 505600, 545000, 453800, 505700, 502000, 526500, 452900, 522100, 510900, 503100, 523600, 526500, 512800, 272000, 427299, 365300, 554800, 590700, 407900, 475500, 575700, 412299, 351000] + }, + { + "label": "Cylinder material", + "tickvals": [0, 0.5, 1, 2, 3], + "ticktext": ["A", "AB", "B", "Y", "Z"], + "values": [0, 0, 1, 0.5, 2, 3, 3, 0, 1, 1, 2, 2, 3, 0, 0, 1, 2, 2, 3, 3, 0, 1, 1, 2, 3, 3, 3, 0, 2, 3, 1, 0, 1, 3, 1, 0, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 3, 2, 2, 0, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 1, 1, 2, 0, 3, 0, 2, 2, 0, 2, 0, 2, 2, 0, 2, 2, 2, 2, 0, 0, 2, 2, 0, 2, 2, 2, 0, 2, 0, 0, 0, 2, 0, 1, 0, 0, 3, 1, 1, 3, 0, 0, 2, 2, 0, 2, 2, 2, 2, 3, 2, 2, 3, 2, 0, 2, 2, 2, 0, 2, 2, 2, 3, 2, 0, 2, 0, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 2, 2, 2, 2, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 3, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 0, 0, 2, 3, 2, 0, 2, 0, 0, 3, 0, 2, 0, 0, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 1, 2, 3, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 0, 2, 3, 2, 3, 2, 2, 2, 2, 2, 2, 2, 3, 0, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 1, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 1, 2, 3, 2, 3, 2, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 0, 2, 3, 3, 2, 2, 0, 1, 2, 2, 0, 1, 2, 1, 2, 2, 2, 0, 2, 0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 0, 0, 2, 2, 2, 3, 2, 0, 2, 2, 0, 1, 2, 0, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 0, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 1, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 1, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2, 3, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 3, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 3, 2, 0, 0, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 3, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 0, 2, 1, 2, 2, 2, 0, 2, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 0, 2, 2, 2, 2, 2, 3, 0, 2, 2, 1, 3, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 3, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 3, 2, 2, 2, 3, 2, 2, 3, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 3, 2, 1, 0, 2, 0, 2, 3, 2, 0, 2, 2, 3, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 3, 3, 2, 3, 2, 3, 2, 2, 2, 2, 2, 3, 2, 2, 2, 3, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 0, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 1, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1] + }, + { + "label": "Block material", + "tickvals": [0, 1, 2, 3], + "range": [-1, 4], + "values": [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 3, 3, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 2, 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 3, 0, 0, 0, 0, 2, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 3, 3, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 2, 0, 0, 0, 0, 0, 2, 1, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 3, 0, 0, 0, 0, 3, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 3, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 3, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 1, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 1, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 1, 0, 0, 2, 0, 0, 0, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 3, 0, 0, 0, 1, 3, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] + }, + { + "label": "Total weight", + "visible": true, + "values": [160, 1324, 252, 1711, 173, 624, 228, 2474, 371, 3103, 312, 2408, 460, 1727, 754, 2457, 227, 1963, 354, 2797, 377, 1327, 462, 1009, 166, 1415, 1118, 1063, 593, 498, 959, 1331, 1146, 645, 921, 1596, 663, 568, 492, 833, 630, 445, 504, 394, 647, 314, 1039, 829, 911, 282, 925, 681, 581, 506, 368, 373, 628, 538, 418, 419, 478, 884, 847, 369, 410, 344, 396, 501, 510, 379, 733, 1649, 239, 1035, 1839, 967, 514, 875, 794, 414, 664, 447, 839, 540, 636, 499, 1059, 743, 173, 473, 519, 465, 623, 726, 631, 521, 643, 323, 424, 472, 657, 510, 521, 661, 690, 497, 1664, 2162, 828, 1062, 479, 1452, 574, 604, 1069, 766, 268, 369, 755, 644, 811, 636, 363, 375, 359, 378, 336, 413, 680, 431, 361, 493, 761, 412, 386, 339, 628, 390, 648, 611, 323, 369, 555, 142, 2133, 653, 392, 597, 740, 345, 345, 1211, 600, 396, 369, 390, 481, 498, 371, 337, 316, 363, 676, 330, 353, 527, 352, 329, 341, 349, 334, 357, 501, 363, 1066, 284, 307, 338, 367, 327, 901, 330, 367, 311, 543, 370, 355, 318, 398, 335, 346, 382, 337, 807, 365, 349, 350, 415, 346, 330, 337, 330, 2201, 489, 338, 322, 349, 744, 239, 327, 327, 317, 763, 303, 343, 334, 293, 298, 472, 558, 331, 769, 321, 315, 342, 2161, 325, 1667, 493, 328, 878, 328, 737, 315, 325, 317, 529, 727, 390, 320, 953, 729, 300, 538, 663, 333, 320, 309, 596, 591, 325, 300, 709, 303, 312, 501, 737, 306, 360, 320, 1585, 324, 196, 294, 827, 305, 316, 415, 557, 302, 550, 332, 289, 730, 319, 324, 369, 335, 532, 422, 315, 1423, 1091, 320, 323, 358, 307, 314, 317, 218, 414, 299, 323, 371, 322, 314, 311, 338, 310, 324, 319, 674, 305, 366, 356, 316, 338, 352, 343, 339, 327, 497, 323, 780, 427, 346, 311, 319, 307, 343, 312, 1695, 329, 293, 316, 429, 341, 315, 548, 330, 307, 331, 321, 427, 319, 530, 516, 310, 344, 724, 479, 2748, 667, 977, 426, 696, 755, 944, 474, 331, 314, 319, 381, 294, 282, 302, 264, 370, 449, 314, 1029, 318, 312, 706, 349, 508, 297, 293, 322, 531, 480, 396, 286, 367, 315, 308, 365, 302, 467, 302, 313, 421, 351, 295, 792, 296, 651, 305, 1207, 501, 325, 311, 302, 290, 693, 312, 681, 474, 296, 321, 305, 322, 312, 317, 453, 322, 312, 550, 331, 334, 297, 560, 324, 812, 311, 320, 336, 533, 316, 1305, 502, 857, 329, 1089, 521, 495, 1025, 316, 373, 301, 935, 685, 547, 311, 622, 851, 880, 175, 331, 343, 1122, 314, 494, 211, 329, 228, 307, 306, 302, 312, 324, 549, 354, 390, 443, 305, 303, 1364, 320, 352, 412, 328, 522, 1509, 303, 314, 326, 304, 376, 297, 354, 305, 303, 309, 324, 543, 1231, 306, 865, 477, 388, 388, 603, 532, 310, 1249, 321, 162, 431, 346, 880, 355, 789, 320, 383, 317, 317, 571, 324, 321, 810, 1075, 329, 363, 310, 385, 322, 1005, 344, 1169, 526, 286, 328, 558, 295, 505, 339, 608, 526, 352, 312, 391, 933, 448, 590, 411, 463, 391, 697, 1113, 327, 604, 845, 1066, 330, 435, 750, 325, 709, 523, 315, 353, 882, 736, 456, 1111, 1050, 454, 955, 1728, 423, 796, 793, 1348, 761, 970, 668, 459, 386, 783, 276, 820, 708, 501, 764, 445, 492, 464, 496, 419, 967, 1243, 751, 472, 377, 419, 628, 480, 701, 368, 486, 949, 668, 720, 570, 425, 576, 352, 449, 427, 1551, 349, 478, 370, 327, 381, 379, 333, 403, 387, 378, 368, 450, 382, 376, 1184, 330, 349, 416, 435, 381, 362, 362, 426, 379, 372, 345, 841, 432, 952, 441, 238, 313, 437, 392, 763, 719, 376, 370, 679, 387, 531, 591, 352, 377, 174, 366, 340, 383, 361, 341, 335, 346, 392, 390, 731, 477, 861, 419, 1073, 337, 523, 972, 624, 404, 485, 398, 1249, 366, 371, 400, 419, 344, 823, 365, 506, 925, 305, 628, 357, 323, 489, 662, 354, 833, 353, 369, 352, 342, 493, 366, 329, 862, 333, 361, 816, 785, 500, 502, 368, 343, 349, 366, 340, 325, 359, 371, 403, 333, 385, 336, 352, 716, 424, 395, 1525, 338, 342, 504, 392, 808, 362, 327, 300, 1073, 1137, 376, 332, 363, 340, 876, 396, 319, 339, 330, 290, 1026, 452, 339, 286, 336, 873, 514, 339, 363, 883, 334, 324, 331, 324, 324, 326, 313, 324, 325, 332, 313, 321, 309, 692, 296, 312, 303, 333, 649, 697, 374, 294, 357, 313, 316, 294, 316, 422, 450, 321, 331, 302, 713, 303, 335, 321, 916, 350, 313, 307, 313, 1121, 312, 1299, 481, 306, 1072, 304, 622, 970, 310, 310, 980, 472, 317, 535, 328, 898, 661, 386, 335, 320, 337, 309, 293, 1362, 351, 876, 403, 319, 514, 1102, 456, 309, 498, 706, 305, 922, 1655, 330, 284, 915, 305, 319, 522, 546, 307, 502, 341, 358, 450, 324, 314, 322, 320, 321, 388, 307, 297, 310, 605, 358, 1048, 322, 315, 468, 350, 179, 1056, 1079, 342, 319, 345, 348, 314, 329, 311, 488, 775, 318, 312, 510, 884, 776, 313, 304, 488, 329, 294, 501, 315, 381, 348, 450, 299, 414, 481, 1377, 342, 1135, 637, 302, 322, 309, 305, 311, 696, 303, 486, 293, 308, 1131, 541, 295, 1198, 319, 301, 293, 321, 1268, 281, 361, 304, 306, 339, 1439, 618, 644, 359, 302, 319, 297, 690, 327, 299, 300, 305, 503, 326, 309, 367, 392, 964, 325, 291, 317, 281, 386, 282, 281, 366, 351, 906, 198, 294, 733, 442, 350, 315, 359, 435, 1220, 322, 330, 307, 434, 313, 304, 1111, 313, 313, 330, 336, 764, 312, 286, 348, 924, 309, 327, 317, 364, 423, 294, 337, 323, 313, 718, 676, 323, 335, 332, 332, 321, 1004, 340, 324, 296, 312, 512, 311, 324, 306, 308, 313, 310, 367, 330, 317, 311, 307, 308, 309, 451, 312, 169, 320, 462, 316, 304, 314, 324, 311, 303, 316, 324, 316, 364, 305, 307, 332, 628, 303, 336, 305, 318, 305, 323, 305, 289, 314, 309, 274, 302, 326, 469, 404, 331, 323, 301, 690, 755, 327, 322, 299, 470, 319, 246, 692, 551, 327, 369, 334, 321, 694, 322, 313, 319, 758, 494, 536, 300, 483, 295, 407, 289, 330, 314, 212, 306, 312, 360, 326, 335, 310, 461, 1065, 299, 1554, 316, 883, 306, 314, 302, 381, 313, 939, 310, 298, 295, 1040, 613, 365, 317, 842, 311, 427, 322, 315, 358, 313, 356, 307, 305, 727, 303, 343, 674, 300, 314, 303, 311, 694, 456, 434, 320, 422, 307, 293, 311, 149, 510, 314, 704, 1070, 294, 309, 368, 299, 328, 471, 300, 292, 305, 309, 336, 306, 323, 323, 367, 319, 374, 311, 324, 449, 345, 175, 300, 330, 390, 740, 1029, 644, 532, 339, 966, 307, 325, 301, 245, 916, 334, 463, 373, 313, 671, 678, 298, 315, 286, 820, 312, 535, 340, 464, 322, 323, 416, 595, 571, 596, 753, 725, 295, 304, 294, 451, 308, 303, 310, 506, 308, 744, 308, 289, 311, 293, 455, 327, 263, 1153, 1348, 473, 148, 1811, 134, 294, 577, 834, 349, 287, 1848, 316, 1058, 839, 759, 799, 323, 501, 372, 598, 366, 454, 383, 334, 324, 323, 696, 763, 318, 351, 334, 321, 1631, 295, 354, 292, 321, 741, 1141, 318, 722, 320, 311, 303, 302, 323, 335, 442, 310, 807, 338, 324, 341, 958, 301, 327, 458, 321, 319, 318, 337, 670, 1254, 1019, 340, 193, 740, 308, 413, 336, 203, 330, 321, 336, 966, 561, 1178, 323, 329, 582, 306, 202, 455, 305, 1161, 845, 341, 396, 428, 1298, 973, 300, 692, 519, 296, 306, 441, 759, 572, 299, 628, 340, 514, 320, 296, 326, 569, 823, 373, 618, 410, 317, 313, 712, 210, 363, 717, 1324, 1247, 297, 315, 315, 313, 1031, 354, 312, 312, 208, 374, 338, 361, 704, 433, 320, 319, 295, 528, 291, 1356, 520, 802, 369, 856, 954, 612, 286, 316, 440, 901, 413, 373, 375, 301, 462, 645, 414, 356, 554, 2389, 377, 371, 735, 458, 368, 400, 355, 345, 756, 377, 381, 275, 417, 337, 611, 390, 326, 319, 383, 338, 375, 329, 730, 416, 532, 312, 312, 326, 741, 396, 292, 480, 196, 288, 375, 347, 477, 969, 311, 535, 1560, 328, 312, 719, 459, 299, 324, 312, 505, 325, 547, 1029, 342, 908, 308, 999, 336, 568, 466, 353, 645, 324, 518, 722, 285, 613, 699, 610, 1555, 792, 683, 302, 676, 582, 290, 865, 1675, 559, 398, 271, 459, 1523, 366, 276, 882, 488, 562, 381, 295, 339, 543, 381, 623, 551, 367, 459, 348, 309, 350, 335, 328, 792, 320, 323, 324, 767, 443, 567, 380, 290, 362, 337, 345, 483, 560, 467, 356, 334, 749, 631, 321, 460, 356, 328, 329, 241, 366, 703, 346, 515, 362, 465, 841, 344, 304, 341, 560, 364, 355, 381, 357, 194, 176, 341, 386, 322, 342, 1393, 185, 341, 499, 3154, 324, 435, 542, 353, 402, 292, 334, 413, 179, 806, 892, 494, 281, 527, 332, 655, 724, 1253, 300, 326, 302, 701, 570, 408, 669, 360, 466, 795, 373, 301, 316, 355, 312, 303, 307, 434, 287, 321, 321, 300, 686, 306, 324, 716, 316, 875, 323, 479, 751, 326, 547, 371, 438, 329, 734, 1176, 495, 2745, 736, 421, 327, 436, 323, 353, 670, 442, 300, 595, 369, 727, 484, 352, 369, 325, 341, 266, 481, 306, 323, 294, 493, 365, 400, 382, 372, 540, 310, 317, 932, 321, 404, 328, 303, 340, 324, 313, 315, 318, 331, 729, 1063, 306, 322, 339, 317, 455, 312, 693, 332, 416, 320, 362, 322, 327, 331, 1044, 309, 337, 363, 426, 407, 613, 471, 337, 321, 308, 326, 976, 318, 1265, 314, 874, 294, 319, 366, 337, 343, 453, 322, 481, 447, 749, 370, 337, 308, 316, 516, 385, 426, 349, 416, 585, 373, 353, 360, 194, 419, 311, 318, 317, 287, 341, 335, 587, 551, 393, 303, 288, 1113, 322, 313, 863, 329, 285, 276, 327, 345, 769, 956, 1183, 866, 765, 309, 668, 1849, 516, 395, 363, 427, 293, 359, 260, 1235, 339, 465, 329, 725, 242, 361, 302, 347, 318, 337, 333, 325, 313, 544, 318, 304, 436, 332, 638, 741, 969, 362, 309, 909, 751, 721, 934, 535, 1328, 221, 459, 341, 302, 287, 306, 883, 222, 351, 769, 326, 292, 353, 412, 3017, 791, 401, 1250, 603, 839, 584, 358, 381, 465, 455, 495, 609, 313, 305, 1283, 680, 404, 325, 344, 356, 987, 453, 530, 606, 391, 364, 175, 327, 610, 341, 333, 794, 448, 351, 1603, 417, 283, 395, 540, 338, 319, 354, 302, 339, 364, 526, 347, 357, 542, 840, 416, 301, 370, 191, 1251, 174, 512, 338, 329, 828, 721, 309, 777, 319, 325, 325, 322, 341, 293, 336, 314, 321, 303, 408, 257, 955, 322, 323, 323, 1101, 227, 478, 336, 350, 175, 486, 313, 359, 1170, 346, 336, 500, 282, 910, 295, 303, 971, 1226, 335, 285, 653, 1002, 325, 353, 382, 323, 334, 289, 305, 316, 349, 430, 677, 160, 914, 453, 595, 419, 173, 281, 920, 364, 331, 502, 657, 421, 311, 360, 665, 636, 327, 346, 407, 632, 471, 326, 336, 749, 391, 557, 381, 478, 442, 469, 303, 310, 292, 379, 453, 274, 312, 673, 321, 516, 371, 288, 446, 352, 318, 617, 315, 329, 939, 646, 497, 178, 394, 409, 180, 390, 922, 380, 465, 495, 396, 835, 391, 362, 511, 346, 308, 565, 345, 314, 346, 333, 316, 355, 348, 427, 360, 415, 1113, 813, 321, 486, 349, 363, 363, 359, 181, 317, 356, 223, 294, 326, 146, 372, 307, 465, 402, 275, 324, 317, 359, 316, 336, 506, 782, 298, 283, 500, 401, 412, 631, 342, 296, 311, 327, 323, 422, 321, 354, 1106, 357, 399, 333, 322, 380, 298, 345, 340, 340, 310, 354, 307, 336, 470, 258, 315, 361, 473, 326, 553, 666, 1079, 318, 326, 848, 390, 516, 344, 1169, 449, 324, 340, 310, 320, 300, 326, 305, 498, 288, 324, 312, 174, 344, 354, 409, 260, 331, 494, 1185, 309, 835, 336, 801, 428, 190, 303, 446, 185, 321, 532, 286, 493, 746, 536, 336, 499, 340, 373, 1164, 336, 378, 313, 883, 728, 344, 322, 360, 315, 353, 203, 384, 426, 369, 328, 386, 321, 337, 318, 301, 319, 320, 175, 300, 349, 296, 315, 686, 323, 698, 315, 427, 1174, 506, 396, 321, 464, 309, 308, 338, 370, 327, 313, 941, 323, 384, 194, 333, 1186, 329, 1325, 325, 558, 311, 373, 335, 323, 977, 542, 311, 460, 1188, 324, 332, 184, 2534, 322, 1325, 300, 305, 383, 250, 307, 316, 417, 297, 1378, 305, 330, 316, 506, 717, 173, 426, 637, 1256, 803, 305, 314, 718, 317, 439, 324, 755, 411, 310, 386, 325, 331, 550, 302, 309, 341, 1055, 328, 355, 265, 1013, 477, 533, 1710, 322, 315, 346, 719, 324, 844, 342, 311, 700, 424, 419, 998, 442, 664, 1037, 446, 754, 369, 321, 864, 316, 346, 322, 847, 470, 490, 865, 310, 994, 322, 501, 361, 390, 661, 332, 344, 657, 431, 322, 440, 398, 1876, 732, 292, 1528, 380, 351, 209, 476, 467, 1304, 337, 925, 378, 769, 555, 551, 774, 227, 503, 334, 205, 351, 493, 368, 304, 1131, 320, 484, 800, 281, 549, 306, 316, 809, 310, 325, 529, 939, 836, 179, 321, 176, 326, 189, 370, 327, 351, 822, 317, 308, 321, 301, 494, 346, 355, 306, 326, 318, 302, 298, 287, 323, 316, 329, 320, 475, 306, 527, 902, 575, 1023, 309, 520, 273, 723, 341, 373, 334, 854, 534, 333, 1296, 312, 318, 525, 1259, 406, 441, 309, 498, 663, 706, 423, 631, 794, 452, 393, 766, 371, 356, 309, 265, 321, 542, 379, 317, 394, 325, 522, 346, 378, 308, 1310, 358, 457, 372, 698, 799, 319, 978, 310, 307, 339, 959, 328, 598, 491, 509, 463, 337, 328, 340, 326, 475, 330, 323, 337, 290, 375, 308, 747, 310, 736, 315, 303, 369, 536, 1075, 539, 717, 1493, 477, 513, 1314, 409, 494, 454, 881, 337, 278, 2065, 1757, 212, 458, 708, 363, 560, 326, 137, 598, 390, 785, 928, 301, 1965, 321, 232, 295, 751, 354, 307, 674, 343, 398, 1135, 336, 462, 343, 290, 306, 328, 329, 334, 410, 312, 659, 335, 976, 342, 449, 293, 324, 703, 313, 2091, 583, 731, 863, 337, 292, 1122, 320, 784, 1010, 885, 1148, 1264, 492, 644, 454, 1033, 294, 655, 574, 250, 320, 1056, 617, 1132, 344, 192, 611, 686, 732, 672, 382, 449, 500, 474, 350, 314, 324, 182, 856, 1291, 347, 327, 349, 1909, 536, 461, 641, 507, 1004, 369, 445, 344, 441, 356, 341, 315, 855, 315, 404, 370, 297, 339, 465, 732, 366, 349, 396, 918, 534, 359, 508, 380, 357, 388, 465, 257, 805, 975, 321, 315, 335, 1028, 458, 838, 372, 997, 571, 335, 372, 886, 299, 306, 498, 552, 303, 449, 478, 927, 280, 415, 301, 234, 324, 346, 1107, 1192, 321, 548, 305, 983, 763, 455, 337, 985, 372, 600, 476, 555, 429, 612, 387, 391, 394, 530, 429, 410, 387, 412, 395, 333, 348, 294, 350, 413, 308, 361, 334, 350, 361, 355, 1161, 1772, 334, 185, 313, 330, 603, 397, 469, 373, 302, 465, 493, 344, 325, 297, 185, 355, 362, 324, 334, 334, 349, 345, 305, 299, 349, 328, 357, 467, 319, 891, 570, 245, 1310, 1273, 472, 775, 318, 288, 1076, 1412] + }, + { + "label": "Assembly total cost", + "visible": false, + "values": [1125, 9274, 2735, 16920, 2193, 20704, 4814, 34689, 5565, 46554, 5225, 38887, 9746, 37715, 17798, 55250, 5697, 49083, 11226, 81939, 24258, 62488, 27363, 61924, 12511, 106196, 24444, 7443, 9111, 12527, 50738, 9320, 12291, 17571, 9508, 11176, 9142, 7687, 6724, 11219, 17825, 6506, 6367, 4966, 8495, 3860, 12844, 10688, 13026, 4007, 57281, 9790, 7335, 13748, 5358, 5393, 4401, 3769, 5233, 5058, 6047, 6188, 11899, 5297, 5154, 4406, 5061, 7022, 6358, 4721, 7723, 16745, 2651, 14194, 100772, 10504, 7021, 6131, 16730, 2904, 8334, 5968, 5876, 7394, 4454, 6800, 18376, 5204, 2190, 6146, 7013, 6412, 4361, 5082, 8028, 6484, 4504, 3832, 5687, 6174, 4603, 6913, 3651, 4631, 4833, 6532, 97138, 21918, 5801, 7435, 13138, 14597, 6070, 19943, 7487, 5362, 3945, 4907, 5287, 7937, 9998, 7852, 4820, 9385, 4686, 4751, 8594, 5144, 4760, 5899, 4614, 30326, 5332, 5030, 4759, 4429, 17294, 5192, 4542, 9333, 2261, 4911, 34968, 2179, 34658, 16325, 4811, 4185, 9017, 4224, 4435, 14536, 7129, 4772, 4726, 4840, 3369, 7428, 4504, 4316, 4097, 4399, 4733, 4105, 4597, 3691, 4405, 4245, 4195, 4168, 4694, 4421, 3507, 4615, 14408, 3607, 3956, 4295, 4583, 4138, 11128, 4147, 4602, 3940, 5590, 4505, 4377, 4016, 5191, 4199, 4269, 4686, 4375, 9716, 8664, 4371, 4294, 9779, 4396, 4183, 4247, 4112, 129671, 3426, 4257, 4102, 4386, 8822, 3138, 4040, 4066, 3950, 12502, 3787, 4273, 4238, 3678, 3660, 6006, 7725, 4172, 12580, 4056, 3920, 4249, 35461, 4054, 108185, 6568, 4154, 11735, 4090, 8971, 3943, 4062, 3857, 5408, 8982, 5662, 3974, 6673, 18248, 3739, 3770, 8110, 4129, 4050, 3826, 8314, 9053, 4022, 3718, 8838, 3786, 3874, 6244, 18434, 3815, 4491, 3954, 39629, 4009, 2456, 3643, 10976, 3783, 3946, 5151, 3900, 3730, 3854, 7621, 3597, 7909, 3959, 4022, 4585, 4130, 6699, 27180, 3935, 89225, 14401, 3962, 4022, 4459, 3816, 3938, 3931, 3041, 26734, 3722, 4047, 4583, 3998, 3907, 3887, 4191, 3858, 4033, 3994, 11019, 3777, 4482, 4277, 3968, 4237, 4378, 4264, 4212, 4049, 7410, 4020, 12723, 12452, 4283, 3862, 3953, 3803, 4276, 3866, 18642, 4063, 3648, 3901, 27631, 4251, 3875, 3837, 4109, 3808, 4083, 3993, 27553, 3950, 3715, 3617, 3819, 7947, 11786, 3358, 44432, 38355, 6845, 9723, 4878, 11458, 6609, 3321, 4964, 3884, 3963, 8633, 3627, 3471, 3780, 3359, 4582, 28916, 3896, 12827, 3908, 3865, 4945, 4276, 6296, 3685, 3657, 3948, 6513, 6549, 4829, 3554, 4503, 3893, 3820, 4464, 3720, 3270, 3743, 3861, 27079, 4284, 4335, 9658, 3671, 7768, 3772, 15008, 6611, 4023, 3840, 3957, 3579, 8798, 3870, 9817, 3319, 3647, 3955, 3782, 3981, 3845, 3930, 5570, 3975, 3856, 3851, 4094, 4130, 3676, 5579, 4013, 17649, 3704, 3967, 4152, 34352, 3909, 16007, 3517, 56056, 4041, 14115, 3652, 6567, 13776, 3906, 4618, 3729, 6550, 8592, 12494, 3885, 13919, 10616, 12510, 2200, 4164, 4256, 13850, 3877, 11216, 1477, 7529, 3283, 3802, 3773, 3728, 3868, 4104, 7658, 4381, 4671, 6364, 3789, 3774, 16177, 3965, 9465, 5965, 4054, 5330, 15225, 3764, 3865, 4058, 3775, 3758, 3704, 4368, 3729, 3767, 3828, 4150, 3804, 15268, 3815, 11823, 3345, 4872, 4659, 7489, 3729, 3868, 29343, 3997, 2114, 5553, 4292, 12800, 4382, 19742, 4101, 8777, 3940, 3978, 7211, 4103, 3980, 12415, 12316, 4082, 8375, 3841, 8810, 4128, 11997, 4269, 15031, 3683, 3614, 4116, 35845, 3653, 3538, 4223, 8373, 33766, 4411, 3863, 4728, 11456, 5587, 38362, 5111, 29991, 4825, 10478, 13283, 4010, 38799, 11943, 14042, 4038, 5282, 12235, 4027, 11570, 5328, 3914, 4404, 6180, 10126, 10305, 23044, 12414, 6658, 6690, 17090, 5813, 10147, 5552, 14343, 11440, 9605, 8565, 6188, 5280, 5483, 3629, 5741, 8375, 6864, 5353, 6098, 6015, 5678, 6594, 5520, 15985, 8704, 5263, 5731, 5020, 5553, 13258, 6541, 4909, 5117, 6779, 61602, 6992, 8510, 3993, 5627, 4035, 4817, 6048, 5638, 10862, 4568, 6015, 5021, 4284, 5133, 5166, 4381, 5240, 5107, 5232, 4897, 7559, 5099, 5020, 15005, 4330, 4830, 11538, 5852, 5130, 4805, 4753, 9282, 4965, 4964, 4540, 21046, 5789, 15483, 5931, 2900, 4104, 5939, 10136, 12664, 9245, 4934, 4829, 9958, 5014, 8126, 4141, 4664, 5028, 2236, 4825, 4450, 6349, 4727, 4520, 4438, 4538, 5013, 4969, 9032, 29764, 12658, 5571, 12826, 4427, 6303, 6807, 8189, 5126, 6691, 5004, 15571, 4613, 4841, 5437, 5492, 4572, 13590, 4729, 31885, 9172, 3977, 4397, 4489, 4192, 30894, 17398, 4636, 12650, 4567, 4597, 4625, 4501, 8431, 4569, 4265, 10628, 4315, 4627, 13535, 10198, 3503, 6671, 4717, 4428, 4557, 4727, 4387, 4179, 4651, 4798, 4920, 4306, 4756, 4240, 4542, 8949, 27217, 5130, 100064, 4412, 4353, 3534, 4753, 45902, 4727, 4278, 3988, 13557, 14324, 4833, 4152, 4563, 4299, 10786, 10025, 3990, 4245, 4201, 3703, 12584, 5588, 4231, 4049, 4219, 10855, 3598, 4248, 4530, 10756, 4306, 4004, 4135, 4069, 4192, 4082, 3919, 4071, 4059, 4177, 3922, 3982, 3841, 11321, 3668, 3855, 3796, 4226, 8651, 8405, 8613, 3628, 4544, 3889, 3934, 3673, 3943, 27240, 28881, 4011, 4120, 3737, 40767, 3746, 4190, 4026, 9678, 8023, 3928, 3813, 3904, 13989, 3909, 22474, 5945, 3795, 14047, 3829, 8130, 12089, 4416, 3859, 23854, 5822, 3941, 34877, 4097, 6289, 8372, 4738, 4124, 3961, 4110, 3843, 3763, 22330, 4302, 10698, 5011, 3960, 6460, 13165, 5659, 3833, 6159, 8569, 3728, 12430, 17360, 4081, 3556, 12850, 3802, 3962, 5382, 7233, 3823, 5937, 4512, 4425, 5552, 4024, 3882, 3993, 3970, 3997, 4806, 3793, 3723, 3848, 7973, 4442, 12803, 4020, 3904, 6002, 4338, 2233, 17184, 14084, 4271, 3942, 7932, 4327, 3882, 4098, 3837, 5936, 10801, 3953, 3865, 3573, 10508, 19422, 3855, 4313, 3419, 4098, 3648, 3507, 3942, 5038, 4350, 28905, 3717, 26636, 31080, 16310, 4550, 14594, 8871, 3743, 4000, 3809, 3784, 3870, 15692, 3764, 7100, 3653, 3821, 13999, 7394, 4537, 14574, 3960, 3737, 3643, 3972, 8878, 3501, 4511, 3785, 3810, 4214, 92394, 8440, 8972, 4418, 3717, 3955, 3701, 10342, 4052, 3730, 3688, 3796, 6183, 4046, 3823, 4535, 4834, 13248, 4026, 3616, 3936, 3491, 4754, 3483, 3528, 4498, 4365, 11386, 2894, 3620, 18349, 5466, 2455, 3885, 4448, 5426, 14879, 3993, 4086, 3797, 5588, 3885, 3773, 18127, 3875, 3891, 4095, 4159, 11648, 3866, 3565, 4317, 12171, 3823, 4053, 3922, 8253, 27165, 3649, 7753, 4005, 3871, 17967, 44240, 3984, 4138, 4101, 4124, 3966, 12588, 4194, 4016, 3667, 3851, 11327, 3833, 4023, 3798, 3810, 3874, 3840, 8337, 4063, 3925, 3852, 3812, 3820, 3828, 5671, 3844, 2457, 3964, 3237, 3922, 3762, 3880, 4014, 3866, 3752, 3931, 4022, 3918, 4517, 3779, 3801, 4107, 15710, 3752, 4170, 3771, 3965, 3775, 4004, 3779, 3585, 3903, 3836, 3382, 3748, 4032, 3283, 5534, 4099, 3997, 3732, 8711, 18895, 4040, 3984, 3701, 7008, 3970, 3088, 8520, 6614, 4162, 4436, 4138, 3979, 8524, 4013, 3861, 3965, 18961, 6070, 6394, 3698, 5940, 3645, 4818, 3582, 4120, 3910, 2799, 3779, 3893, 4458, 4022, 4108, 3820, 3227, 10985, 3685, 22218, 3925, 10987, 3806, 3865, 3745, 22845, 3873, 12636, 3830, 3697, 3640, 14144, 8228, 4503, 3912, 10683, 3832, 27508, 4369, 3907, 4705, 3860, 4686, 3807, 3775, 11854, 3763, 4259, 10998, 3715, 3918, 3754, 3837, 10320, 29350, 28013, 4806, 27181, 3783, 3626, 3838, 2197, 6793, 3880, 11481, 28248, 3636, 3818, 4555, 3699, 4061, 5737, 3704, 3612, 3780, 3815, 4160, 3795, 3964, 4006, 4520, 3967, 4631, 3837, 4005, 5551, 4224, 2573, 3722, 4063, 25150, 8949, 12712, 7939, 6700, 4162, 13481, 3801, 3966, 3741, 3298, 11662, 4130, 6268, 4621, 3866, 16793, 9268, 3710, 4199, 3545, 8357, 3845, 7090, 4227, 5999, 3976, 3986, 5145, 8848, 7687, 7778, 9672, 18129, 3671, 3758, 3623, 6176, 3829, 3751, 3839, 6623, 3818, 9382, 3824, 3567, 3876, 3648, 3187, 4050, 3274, 14438, 33701, 3315, 2019, 17972, 1935, 3651, 7236, 10042, 4314, 3418, 46207, 3910, 13235, 11016, 5315, 12999, 4040, 6042, 4600, 6015, 4556, 10560, 4629, 4154, 4057, 4028, 10213, 10194, 3936, 4337, 4100, 4017, 17640, 3666, 4336, 3605, 3985, 10013, 13900, 3940, 9771, 4029, 3830, 6681, 3749, 4002, 4144, 28335, 3851, 9628, 4190, 4020, 4209, 11639, 3714, 4051, 29534, 4001, 3943, 3919, 4181, 8921, 15249, 25498, 4413, 2570, 9094, 3781, 5196, 4153, 2806, 4299, 3944, 4153, 11672, 7329, 13429, 3990, 4059, 5928, 3770, 2724, 5689, 3807, 14139, 10239, 7795, 4983, 10307, 16032, 12418, 3739, 8526, 6457, 3656, 3791, 28264, 8997, 7054, 3697, 6385, 4206, 7040, 3971, 3702, 4031, 8243, 47305, 4623, 6289, 26518, 3919, 3896, 17804, 2868, 4490, 17926, 86514, 14833, 3636, 3919, 3900, 4163, 13083, 4797, 3872, 3870, 2921, 4626, 4389, 4492, 8805, 27930, 3981, 3945, 3652, 6474, 3616, 84260, 6441, 11593, 4576, 12714, 13232, 12893, 3555, 3922, 28141, 12058, 5088, 4661, 4667, 3727, 5861, 9001, 5727, 4432, 6923, 39382, 6197, 4625, 16568, 5855, 4562, 4751, 4391, 4257, 9707, 4869, 4715, 17117, 5311, 4147, 6155, 4805, 4006, 3954, 8680, 4167, 23759, 4134, 11938, 26580, 3728, 3886, 3880, 4065, 18544, 9038, 3609, 30977, 2647, 3585, 8622, 4313, 3341, 60270, 3902, 6742, 101532, 4069, 3902, 11753, 5734, 3706, 7359, 3882, 5163, 4062, 7403, 12706, 4274, 11082, 3834, 13857, 4180, 7733, 6289, 4394, 8664, 4020, 6487, 8926, 3545, 7424, 8967, 7105, 15471, 8990, 15930, 3739, 4733, 4080, 3681, 11600, 109361, 35468, 4939, 3449, 29173, 88421, 4596, 3452, 11753, 4978, 36214, 4717, 3650, 4247, 34932, 4724, 9055, 6852, 4699, 6300, 4318, 3863, 4364, 4208, 4057, 11771, 3994, 3980, 3999, 11116, 5528, 7493, 24623, 3933, 4465, 4205, 4283, 6279, 5729, 5893, 4439, 4200, 9248, 4421, 4061, 5686, 4450, 4066, 4108, 3132, 4617, 17583, 4328, 6506, 4535, 30003, 48630, 4313, 3777, 4245, 6884, 4535, 3881, 8812, 4461, 2683, 2233, 4284, 4820, 4040, 4277, 16571, 2554, 4242, 6285, 51154, 4044, 5770, 3800, 4401, 5008, 3647, 4158, 26583, 2467, 20174, 10786, 3461, 3497, 7861, 4243, 16393, 11861, 76828, 4026, 4071, 3740, 17541, 7580, 5092, 4687, 4720, 3266, 13157, 4661, 3747, 3893, 4432, 3893, 3761, 3795, 9961, 3574, 4001, 3976, 3773, 17165, 3782, 4045, 9144, 3962, 50212, 4029, 5950, 8949, 4070, 7221, 8644, 28169, 4062, 8752, 15000, 15842, 44456, 9155, 5309, 4053, 10116, 4046, 4394, 8316, 5514, 3711, 38351, 8468, 10339, 6030, 8029, 4578, 4029, 4222, 3390, 6727, 3803, 20095, 3644, 31728, 4573, 9131, 24869, 4656, 40536, 3844, 3932, 12001, 3974, 9248, 4031, 3798, 4203, 4056, 3876, 3886, 3939, 4057, 9567, 26598, 3804, 4015, 7758, 3949, 29312, 3902, 8209, 7521, 5578, 3987, 4785, 3995, 4079, 4112, 12730, 3823, 4210, 8367, 27490, 4937, 8779, 6457, 7775, 3957, 3823, 4042, 22441, 3978, 15741, 3913, 12279, 3646, 3940, 5004, 4172, 4199, 5890, 4245, 5994, 5525, 18737, 4526, 4310, 3837, 3909, 33292, 4777, 27477, 4301, 5769, 8151, 4658, 4344, 4495, 2657, 5789, 3851, 3932, 3934, 3683, 4207, 4138, 8298, 6530, 8710, 3782, 3585, 13380, 3997, 3900, 49974, 4074, 3540, 3419, 4076, 4261, 9672, 6695, 14148, 50140, 9092, 3985, 9640, 42657, 33535, 8852, 8334, 5261, 3730, 22730, 3339, 76534, 4819, 28020, 4070, 8981, 2923, 4505, 4593, 4316, 3911, 4185, 4135, 4015, 3895, 5559, 3947, 4231, 5169, 4122, 8906, 18540, 11809, 4399, 3866, 11489, 9502, 10162, 11780, 34617, 14012, 2961, 5785, 4343, 3766, 3585, 3799, 14853, 2997, 4256, 9665, 19975, 3645, 8150, 26579, 49058, 11073, 4814, 31254, 7724, 11033, 8315, 4314, 4509, 5916, 28810, 5994, 15238, 3883, 3771, 13249, 9488, 4866, 3982, 4169, 4354, 12208, 5757, 12358, 7437, 4743, 4418, 2405, 4048, 10157, 4252, 4071, 19869, 5500, 4254, 11221, 5164, 4153, 4884, 3785, 4207, 3912, 4325, 3755, 4161, 8314, 3687, 4203, 4409, 5546, 22831, 5131, 3903, 4589, 2432, 80943, 2199, 3585, 4205, 4049, 12623, 11762, 3815, 9929, 3934, 4023, 4371, 3987, 4218, 3830, 4139, 3910, 4533, 3782, 5007, 3306, 23891, 3988, 4008, 4002, 13496, 3002, 5976, 4142, 4357, 2414, 30186, 4189, 4749, 13952, 4589, 4189, 5993, 3502, 13135, 3665, 3739, 11784, 28602, 4450, 3574, 10675, 13041, 4002, 4349, 4771, 4001, 4159, 3482, 3804, 3884, 4343, 9972, 16927, 2221, 12913, 29211, 7041, 27050, 2402, 3485, 11956, 4511, 4063, 3515, 9775, 27027, 3871, 8808, 8094, 8066, 4060, 4286, 26107, 7034, 28205, 4038, 4148, 12288, 5029, 6825, 24260, 30775, 28412, 5946, 3777, 3890, 3615, 4738, 29181, 16464, 3920, 8606, 4059, 5257, 4640, 3570, 6020, 4387, 3958, 40271, 3907, 4062, 12193, 4527, 31964, 2436, 4879, 9400, 2240, 4846, 59578, 8689, 28097, 6135, 9008, 12433, 5015, 4496, 3579, 4307, 3807, 8084, 4643, 3879, 4300, 4138, 4068, 4424, 4336, 6213, 4457, 26961, 14333, 13269, 4073, 6316, 4332, 4492, 8378, 4443, 2350, 4011, 4427, 2909, 3752, 3989, 1997, 8651, 3891, 5882, 5091, 3443, 4074, 3974, 4512, 3921, 4204, 5164, 10883, 3711, 3570, 6328, 5074, 5141, 8367, 4363, 3678, 3889, 4145, 4042, 5286, 3989, 4476, 13140, 4539, 25758, 4129, 4004, 4694, 3864, 4295, 4277, 4463, 3857, 4439, 3782, 4186, 30163, 3261, 3942, 5408, 6214, 4099, 3875, 9581, 15415, 3965, 4083, 10985, 4853, 3614, 4321, 14442, 3146, 4061, 4248, 3869, 4031, 3748, 4124, 3763, 7007, 3547, 4060, 3906, 2375, 4294, 4412, 5156, 3421, 4143, 6916, 14716, 3866, 10080, 4168, 11257, 6132, 2617, 3796, 5781, 2543, 4022, 7851, 3579, 31698, 10449, 7074, 4179, 6623, 4294, 4985, 14197, 4219, 4643, 3871, 10871, 10158, 4303, 4042, 4687, 3933, 4395, 2669, 5223, 26888, 4835, 4120, 4863, 4033, 4234, 3945, 3787, 4005, 4006, 2384, 3737, 4331, 3717, 3897, 11221, 3970, 11405, 3906, 5170, 26275, 5172, 4725, 4027, 29448, 3856, 3820, 4221, 4553, 4084, 3920, 12274, 4041, 4563, 2432, 4168, 14781, 4089, 84860, 4055, 6853, 3917, 4639, 4187, 4046, 15864, 3795, 3896, 29479, 14289, 4031, 4153, 2588, 41096, 4004, 28909, 3755, 3826, 4556, 3108, 3827, 3932, 4954, 3685, 14009, 3794, 4092, 3929, 5161, 10867, 2372, 5304, 7846, 14855, 10527, 3801, 3892, 17953, 3898, 5557, 4010, 8929, 5144, 3868, 4846, 4033, 4106, 7961, 3734, 3844, 4228, 14218, 4070, 4390, 3578, 64666, 30739, 9257, 42766, 3995, 3910, 4320, 11739, 4026, 10762, 4262, 3868, 21774, 27155, 26769, 13667, 5432, 8575, 13691, 5792, 12304, 8357, 3962, 12225, 3930, 4287, 3987, 10619, 5986, 6403, 11136, 3844, 13668, 4749, 6511, 4570, 5367, 9270, 4129, 5042, 6824, 27699, 3999, 28366, 4786, 30493, 10545, 3619, 38201, 4702, 4334, 2851, 30809, 3274, 21828, 4164, 12971, 4680, 9109, 6845, 6667, 9545, 3102, 31606, 4117, 3017, 4334, 31897, 8413, 3756, 13786, 3943, 7094, 9861, 17684, 7372, 3802, 3923, 13130, 3832, 4035, 6716, 13120, 10771, 2451, 3981, 2509, 4019, 2530, 4595, 4017, 4468, 12432, 3922, 3813, 3969, 3716, 31879, 4280, 4485, 3782, 4025, 3901, 3719, 18455, 3560, 3943, 19801, 4049, 3957, 30692, 3774, 3690, 12946, 43153, 12827, 3480, 3642, 3492, 5065, 4683, 8439, 4097, 5979, 7318, 4074, 27698, 3828, 3955, 7204, 80055, 4851, 11026, 3846, 6536, 41579, 8716, 5304, 9580, 9725, 10335, 8879, 9245, 8502, 4393, 7028, 3207, 3943, 6586, 4696, 3914, 9070, 4049, 33617, 4304, 8600, 3814, 81235, 4422, 6506, 4557, 7048, 19991, 3954, 13795, 3822, 3798, 4260, 11751, 4101, 7718, 31546, 6384, 3247, 4172, 4088, 4228, 4035, 5786, 4094, 3987, 4185, 3877, 4554, 3840, 8856, 17877, 11098, 3877, 3743, 4629, 5448, 14210, 5504, 17927, 15188, 5892, 6491, 15609, 4910, 8230, 29322, 11412, 4175, 3866, 34283, 101349, 2855, 3210, 17724, 4466, 6815, 4038, 1938, 8412, 4895, 12817, 23221, 3737, 32782, 3984, 3123, 3650, 12300, 4338, 3889, 8256, 4272, 5260, 14199, 4117, 6801, 4269, 3612, 3803, 4083, 4070, 4216, 5383, 3891, 9386, 4152, 13778, 7919, 3149, 3636, 4064, 11473, 3886, 34380, 6906, 11939, 10572, 7726, 3639, 58427, 3988, 5494, 13997, 12759, 69547, 82624, 6238, 9041, 5960, 13276, 3667, 7896, 6782, 3844, 3967, 12716, 7470, 14500, 4257, 2617, 7419, 4804, 8821, 4705, 4733, 28271, 6839, 30762, 4321, 3868, 3984, 2542, 11350, 13299, 4292, 4368, 4264, 27377, 8775, 5744, 7910, 12689, 12160, 4769, 5551, 4261, 5514, 4379, 4244, 3879, 21386, 4042, 9266, 4556, 3667, 4165, 29895, 11939, 4558, 4237, 4917, 13036, 6889, 4424, 32664, 4694, 8153, 9377, 5507, 3342, 10823, 62847, 3939, 3912, 4122, 66439, 3210, 10350, 4615, 12868, 7511, 4255, 4616, 12370, 3704, 3788, 6565, 6764, 3760, 5382, 5920, 13436, 16417, 5747, 3951, 2810, 4018, 4297, 24861, 15191, 3990, 6731, 3764, 13253, 9573, 10539, 4175, 13712, 4754, 7612, 10652, 6949, 5321, 4285, 4785, 4906, 4827, 33385, 5270, 5091, 4739, 5003, 4787, 4146, 4299, 3657, 4368, 5066, 3848, 4575, 4150, 4381, 4496, 4471, 14916, 29694, 4159, 2529, 3889, 4098, 8034, 4757, 6803, 4640, 3780, 5750, 7248, 4255, 3991, 3723, 2276, 4447, 4513, 4048, 4071, 4323, 4361, 4313, 3757, 3874, 4314, 4087, 4463, 30169, 3933, 11064, 8721, 3231, 14337, 15420, 5613, 10373, 4057, 3450, 14347, 15572] + }, + { + "label": "Assembly penalty weight", + "values": [9, 794, 34, 1409, 17, 536, 39, 7133, 115, 9843, 107, 7017, 273, 5131, 1210, 9032, 82, 7312, 252, 16778, 760, 4349, 891, 4228, 123, 10800, 1593, 467, 260, 226, 2940, 803, 689, 420, 422, 1229, 275, 198, 150, 423, 423, 134, 146, 89, 248, 55, 612, 401, 546, 52, 4208, 307, 194, 257, 91, 93, 178, 133, 99, 98, 131, 345, 461, 90, 96, 69, 91, 160, 148, 81, 274, 1332, 31, 667, 11733, 502, 163, 354, 480, 67, 252, 120, 303, 181, 162, 153, 1142, 251, 17, 131, 165, 135, 162, 222, 230, 154, 198, 58, 109, 132, 189, 159, 102, 167, 218, 147, 11969, 2288, 316, 467, 234, 1025, 169, 497, 435, 265, 49, 82, 252, 234, 372, 229, 79, 127, 76, 82, 105, 97, 207, 115, 75, 1014, 259, 95, 84, 68, 404, 91, 183, 273, 49, 82, 1378, 14, 5405, 769, 86, 168, 308, 67, 69, 818, 200, 87, 79, 86, 100, 174, 77, 66, 58, 74, 206, 62, 73, 129, 71, 63, 65, 67, 71, 72, 116, 76, 696, 46, 55, 66, 77, 61, 460, 62, 77, 55, 146, 77, 71, 58, 93, 64, 68, 82, 66, 364, 113, 69, 69, 145, 69, 62, 65, 62, 19984, 113, 65, 60, 69, 307, 33, 60, 60, 57, 676, 52, 67, 64, 49, 50, 129, 196, 63, 690, 59, 56, 66, 5409, 60, 13549, 146, 62, 466, 61, 305, 56, 60, 56, 138, 299, 102, 58, 406, 1019, 51, 137, 247, 63, 59, 54, 226, 257, 59, 51, 286, 52, 55, 143, 1039, 53, 73, 58, 4807, 59, 22, 49, 411, 52, 57, 98, 129, 51, 143, 90, 47, 284, 57, 59, 77, 63, 162, 849, 56, 8935, 711, 58, 59, 73, 53, 56, 57, 30, 822, 50, 59, 78, 59, 56, 55, 65, 54, 60, 58, 532, 52, 75, 71, 57, 65, 70, 67, 65, 60, 173, 59, 717, 203, 68, 55, 57, 53, 67, 55, 1579, 61, 49, 56, 877, 66, 56, 142, 62, 53, 62, 58, 873, 57, 132, 126, 54, 98, 622, 103, 9106, 1860, 454, 148, 206, 412, 423, 103, 77, 55, 57, 118, 49, 45, 52, 40, 77, 960, 56, 603, 57, 55, 225, 68, 146, 50, 49, 58, 159, 142, 88, 46, 76, 56, 54, 75, 51, 100, 51, 55, 842, 69, 59, 353, 49, 236, 52, 829, 150, 60, 54, 54, 47, 277, 55, 309, 104, 49, 58, 52, 59, 55, 57, 116, 58, 55, 143, 62, 63, 50, 151, 59, 515, 53, 58, 64, 1357, 56, 961, 117, 3664, 61, 696, 128, 147, 639, 56, 79, 51, 342, 268, 245, 55, 311, 413, 505, 17, 63, 67, 713, 55, 199, 17, 89, 34, 53, 53, 51, 55, 60, 192, 71, 84, 130, 52, 52, 1033, 58, 122, 113, 61, 134, 1110, 52, 55, 60, 52, 68, 50, 71, 52, 52, 54, 61, 139, 861, 53, 464, 105, 86, 84, 207, 125, 54, 3281, 58, 15, 108, 68, 523, 71, 1197, 59, 120, 57, 57, 187, 60, 58, 483, 696, 61, 109, 54, 121, 60, 563, 67, 797, 130, 47, 61, 1473, 49, 119, 65, 231, 1307, 71, 55, 85, 491, 114, 1705, 96, 1039, 86, 346, 690, 60, 1724, 462, 677, 61, 106, 664, 59, 590, 134, 56, 71, 355, 338, 168, 1600, 612, 141, 437, 1438, 111, 367, 283, 942, 412, 453, 259, 128, 92, 277, 45, 304, 278, 156, 269, 123, 136, 121, 148, 104, 1063, 676, 257, 125, 85, 105, 301, 142, 232, 85, 150, 4912, 226, 287, 135, 108, 147, 77, 123, 109, 1131, 72, 131, 84, 63, 88, 88, 66, 95, 89, 90, 81, 222, 88, 85, 808, 64, 76, 179, 115, 88, 78, 77, 236, 85, 83, 71, 1381, 113, 1075, 118, 31, 58, 117, 144, 653, 301, 84, 81, 315, 88, 207, 155, 74, 86, 17, 80, 68, 166, 77, 69, 67, 71, 89, 88, 303, 989, 509, 105, 642, 67, 153, 405, 231, 94, 147, 90, 889, 76, 81, 98, 104, 71, 773, 78, 1146, 413, 55, 178, 73, 61, 1077, 421, 74, 503, 73, 77, 73, 69, 255, 76, 63, 420, 65, 76, 752, 363, 112, 151, 78, 68, 72, 78, 67, 61, 75, 80, 91, 65, 84, 65, 72, 292, 847, 91, 11709, 67, 67, 110, 86, 2467, 77, 63, 54, 662, 742, 82, 63, 75, 66, 434, 144, 58, 65, 63, 48, 594, 115, 65, 53, 64, 433, 119, 65, 75, 438, 65, 59, 62, 60, 61, 60, 56, 60, 60, 63, 56, 58, 54, 561, 49, 55, 52, 64, 254, 271, 115, 48, 73, 55, 56, 49, 56, 853, 954, 59, 62, 51, 1951, 52, 64, 59, 430, 100, 56, 53, 55, 717, 55, 1725, 131, 53, 681, 53, 229, 536, 63, 54, 842, 126, 57, 1413, 61, 321, 252, 84, 63, 58, 63, 54, 50, 2153, 69, 432, 92, 57, 151, 677, 118, 54, 140, 279, 52, 519, 1391, 61, 46, 538, 53, 58, 135, 178, 53, 140, 69, 72, 115, 59, 56, 58, 58, 58, 85, 53, 50, 54, 218, 72, 618, 59, 56, 127, 69, 18, 1321, 688, 67, 57, 98, 69, 56, 61, 54, 133, 382, 57, 55, 120, 434, 1165, 55, 60, 108, 61, 49, 114, 56, 86, 69, 957, 50, 814, 1112, 1052, 70, 751, 257, 51, 59, 54, 52, 55, 392, 52, 160, 49, 53, 726, 181, 64, 806, 57, 51, 49, 58, 629, 45, 74, 52, 53, 65, 9789, 237, 263, 72, 51, 57, 50, 337, 60, 51, 50, 53, 143, 60, 54, 76, 87, 580, 60, 48, 57, 44, 84, 45, 45, 75, 70, 470, 26, 48, 1034, 110, 56, 56, 73, 108, 837, 59, 62, 53, 110, 55, 52, 1450, 55, 55, 62, 64, 426, 55, 46, 68, 509, 54, 60, 57, 107, 846, 49, 93, 59, 55, 992, 2282, 59, 63, 62, 62, 58, 577, 65, 59, 49, 55, 208, 54, 59, 53, 53, 55, 54, 109, 61, 57, 55, 53, 54, 54, 116, 55, 19, 58, 98, 56, 52, 56, 59, 55, 52, 56, 59, 56, 75, 52, 53, 62, 758, 52, 64, 52, 57, 52, 59, 52, 47, 56, 54, 42, 51, 60, 101, 101, 62, 59, 51, 274, 1101, 60, 58, 50, 155, 58, 34, 270, 169, 62, 76, 63, 58, 272, 59, 55, 57, 1092, 137, 159, 51, 132, 49, 92, 47, 62, 56, 26, 53, 55, 73, 60, 63, 54, 98, 564, 50, 3025, 56, 444, 53, 55, 52, 564, 55, 537, 54, 50, 49, 667, 228, 75, 57, 409, 54, 869, 63, 56, 76, 55, 75, 53, 52, 623, 52, 66, 534, 51, 56, 52, 54, 337, 989, 902, 72, 848, 53, 48, 55, 15, 157, 55, 586, 1108, 49, 54, 76, 50, 61, 125, 51, 48, 52, 54, 64, 53, 59, 59, 76, 58, 79, 54, 59, 114, 67, 21, 51, 61, 726, 306, 600, 234, 162, 65, 594, 53, 59, 51, 36, 485, 63, 131, 79, 55, 867, 285, 50, 60, 46, 330, 55, 171, 66, 126, 58, 59, 98, 247, 199, 210, 330, 1010, 49, 52, 48, 126, 54, 52, 54, 151, 53, 318, 53, 47, 55, 49, 95, 60, 39, 760, 3499, 103, 13, 1582, 12, 49, 190, 388, 69, 45, 6497, 56, 640, 418, 246, 757, 59, 140, 78, 174, 76, 172, 82, 63, 60, 59, 331, 352, 57, 69, 63, 58, 1417, 49, 70, 48, 58, 336, 732, 57, 319, 58, 54, 72, 52, 59, 63, 918, 54, 363, 64, 59, 66, 515, 51, 60, 1002, 58, 57, 57, 64, 270, 883, 1867, 68, 22, 309, 53, 97, 64, 25, 64, 58, 64, 523, 186, 826, 59, 61, 166, 53, 24, 118, 53, 758, 400, 95, 90, 158, 954, 549, 51, 271, 153, 49, 53, 914, 320, 185, 50, 193, 65, 164, 58, 50, 60, 217, 2632, 79, 187, 810, 57, 55, 976, 27, 74, 988, 8719, 865, 49, 56, 56, 59, 614, 77, 55, 55, 27, 79, 67, 74, 283, 897, 58, 57, 49, 157, 48, 7908, 153, 430, 77, 511, 575, 285, 46, 56, 904, 492, 96, 79, 80, 51, 123, 265, 108, 72, 175, 6523, 163, 78, 437, 122, 76, 88, 71, 67, 333, 83, 82, 326, 100, 64, 181, 86, 60, 57, 119, 64, 639, 62, 622, 806, 126, 55, 55, 60, 1051, 128, 48, 1104, 23, 47, 116, 68, 104, 4048, 55, 164, 11963, 61, 55, 605, 120, 50, 85, 55, 125, 60, 183, 600, 67, 464, 54, 631, 64, 199, 132, 71, 253, 59, 153, 295, 46, 210, 284, 233, 1168, 369, 390, 51, 204, 156, 48, 454, 13920, 1427, 90, 42, 967, 9234, 76, 43, 469, 117, 1506, 82, 49, 65, 1401, 82, 262, 172, 78, 131, 68, 54, 69, 64, 61, 438, 58, 59, 59, 395, 112, 192, 700, 51, 74, 64, 67, 137, 155, 125, 72, 63, 318, 173, 59, 120, 72, 61, 61, 34, 77, 941, 68, 152, 75, 1036, 2493, 67, 52, 66, 177, 75, 68, 120, 72, 23, 17, 66, 85, 59, 67, 1079, 21, 66, 143, 11880, 59, 113, 134, 71, 92, 48, 63, 812, 20, 1241, 446, 111, 45, 195, 64, 778, 609, 7556, 54, 60, 51, 944, 195, 95, 214, 77, 100, 716, 79, 51, 56, 72, 55, 52, 53, 155, 47, 58, 58, 51, 897, 53, 60, 297, 57, 2646, 59, 130, 313, 60, 178, 115, 911, 61, 300, 801, 317, 9038, 308, 102, 60, 158, 59, 70, 255, 111, 51, 1691, 112, 345, 133, 101, 77, 60, 66, 41, 147, 53, 449, 49, 1156, 76, 131, 717, 79, 1595, 54, 57, 507, 58, 134, 60, 52, 65, 60, 55, 56, 57, 61, 315, 2179, 53, 59, 94, 57, 987, 55, 266, 89, 105, 58, 78, 59, 61, 62, 613, 54, 65, 109, 870, 93, 248, 138, 94, 58, 53, 60, 785, 57, 911, 56, 491, 49, 57, 83, 64, 66, 120, 61, 132, 113, 1080, 77, 66, 54, 56, 1274, 84, 868, 69, 109, 217, 79, 70, 74, 23, 110, 55, 57, 57, 48, 65, 63, 223, 169, 123, 52, 47, 692, 58, 56, 2946, 61, 46, 43, 60, 67, 339, 407, 779, 2965, 325, 56, 298, 6838, 1303, 125, 108, 103, 49, 585, 39, 6512, 75, 852, 61, 298, 32, 74, 66, 68, 57, 64, 63, 59, 55, 145, 57, 58, 105, 62, 259, 1056, 528, 73, 54, 476, 325, 335, 501, 1382, 903, 29, 121, 67, 52, 47, 53, 846, 30, 69, 339, 438, 48, 103, 812, 10805, 400, 89, 3049, 211, 419, 223, 71, 80, 125, 938, 137, 693, 55, 52, 820, 294, 91, 59, 66, 71, 553, 118, 235, 207, 85, 74, 19, 60, 416, 66, 62, 1242, 113, 69, 1218, 98, 54, 88, 136, 65, 57, 70, 51, 65, 108, 129, 67, 72, 145, 710, 98, 53, 78, 21, 7564, 17, 120, 65, 61, 500, 611, 54, 350, 57, 60, 64, 58, 65, 50, 63, 56, 66, 52, 93, 38, 1462, 59, 59, 59, 684, 30, 130, 63, 69, 19, 1015, 59, 77, 762, 71, 64, 139, 45, 552, 49, 52, 529, 3101, 67, 46, 501, 592, 59, 70, 83, 59, 63, 46, 53, 56, 69, 153, 885, 16, 541, 981, 196, 841, 18, 45, 498, 75, 61, 115, 302, 836, 55, 114, 248, 233, 60, 68, 780, 225, 860, 60, 64, 649, 89, 175, 668, 1088, 925, 127, 52, 55, 48, 82, 979, 293, 55, 263, 59, 130, 78, 47, 121, 70, 57, 1886, 56, 61, 519, 172, 1172, 19, 88, 137, 18, 86, 4092, 118, 859, 139, 127, 489, 89, 74, 116, 68, 53, 210, 72, 55, 68, 63, 58, 71, 69, 123, 73, 842, 723, 775, 59, 139, 69, 74, 109, 73, 19, 58, 72, 29, 50, 59, 13, 115, 54, 124, 93, 43, 60, 57, 74, 56, 64, 126, 388, 50, 46, 144, 92, 97, 238, 67, 49, 55, 61, 59, 102, 58, 72, 679, 73, 763, 63, 59, 81, 52, 67, 66, 68, 54, 71, 53, 64, 1041, 38, 56, 92, 133, 60, 144, 294, 1454, 57, 60, 422, 86, 121, 67, 775, 93, 60, 66, 54, 58, 51, 61, 52, 159, 47, 60, 55, 18, 67, 71, 96, 40, 62, 156, 798, 54, 390, 64, 412, 121, 22, 52, 116, 21, 59, 195, 46, 1153, 356, 171, 64, 149, 66, 84, 762, 64, 80, 55, 441, 337, 67, 59, 76, 56, 71, 24, 90, 815, 80, 61, 85, 59, 65, 57, 51, 58, 58, 18, 51, 69, 50, 56, 551, 59, 572, 56, 102, 1107, 126, 87, 59, 983, 54, 53, 65, 77, 61, 56, 523, 59, 82, 21, 63, 802, 61, 8238, 60, 175, 55, 79, 64, 59, 1136, 134, 55, 994, 788, 59, 63, 21, 7677, 59, 1377, 51, 53, 81, 35, 53, 57, 96, 50, 932, 53, 61, 56, 126, 371, 18, 103, 229, 875, 382, 53, 56, 993, 56, 111, 59, 316, 96, 54, 85, 60, 62, 203, 51, 54, 66, 679, 61, 71, 42, 4768, 1085, 289, 4911, 59, 56, 68, 608, 59, 412, 66, 55, 604, 842, 817, 619, 110, 258, 642, 117, 668, 110, 58, 484, 57, 68, 58, 410, 127, 142, 437, 54, 617, 71, 147, 75, 95, 280, 62, 80, 216, 879, 59, 926, 88, 4185, 356, 48, 4600, 81, 69, 27, 1094, 100, 1870, 64, 548, 81, 328, 174, 170, 339, 31, 1122, 63, 28, 70, 1173, 111, 52, 719, 58, 160, 362, 352, 183, 53, 56, 781, 54, 60, 161, 562, 408, 19, 58, 20, 60, 21, 78, 60, 71, 486, 57, 53, 58, 51, 1170, 68, 72, 53, 60, 57, 51, 377, 46, 58, 439, 61, 58, 1085, 53, 129, 538, 1842, 598, 55, 126, 43, 201, 72, 113, 62, 339, 177, 62, 1294, 55, 57, 172, 7283, 91, 176, 54, 147, 1940, 282, 102, 288, 355, 167, 125, 328, 113, 71, 78, 39, 58, 164, 81, 56, 128, 60, 1299, 68, 116, 53, 7338, 72, 136, 78, 237, 1244, 57, 618, 54, 53, 66, 519, 61, 209, 1141, 148, 98, 64, 61, 65, 60, 126, 61, 59, 64, 51, 78, 54, 310, 336, 388, 56, 52, 77, 141, 691, 143, 929, 1094, 129, 151, 960, 93, 272, 989, 455, 64, 49, 4784, 12101, 27, 96, 959, 74, 176, 60, 12, 230, 87, 724, 1656, 51, 4285, 58, 32, 49, 659, 70, 54, 256, 67, 94, 736, 63, 146, 66, 48, 53, 61, 61, 64, 100, 55, 284, 63, 616, 97, 92, 48, 60, 583, 55, 5038, 189, 627, 420, 93, 48, 3879, 58, 289, 644, 522, 5278, 7955, 139, 266, 122, 622, 49, 240, 182, 46, 58, 623, 213, 745, 67, 22, 209, 216, 299, 207, 83, 899, 155, 1094, 69, 55, 59, 21, 440, 828, 68, 64, 68, 4618, 334, 121, 232, 511, 565, 79, 113, 67, 111, 71, 66, 56, 1396, 57, 134, 77, 49, 65, 1026, 632, 76, 68, 89, 549, 166, 72, 1224, 82, 104, 131, 120, 39, 394, 4543, 58, 56, 63, 5089, 98, 398, 78, 581, 194, 64, 78, 500, 50, 53, 148, 172, 52, 112, 129, 577, 286, 108, 53, 30, 59, 68, 987, 823, 58, 169, 52, 590, 333, 172, 64, 616, 80, 207, 181, 176, 104, 172, 85, 87, 87, 1255, 104, 95, 84, 95, 87, 63, 68, 49, 69, 96, 54, 75, 63, 70, 74, 72, 786, 3447, 63, 21, 55, 62, 219, 88, 148, 79, 52, 122, 167, 67, 59, 50, 19, 72, 74, 60, 62, 65, 69, 67, 52, 52, 69, 61, 72, 1047, 57, 451, 238, 35, 934, 908, 124, 364, 58, 46, 698, 1102] + }, + { + "label": "Height st width", + "values": [236630, 326876, 347086, 437333, 457543, 105963, 568000, 216420, 236630, 326876, 347086, 437333, 457543, 105963, 568000, 216420, 236630, 326876, 347086, 437333, 457543, 105963, 568000, 216420, 236630, 326876, 350300, 210200, 106030, 349000, 288700, 328200, 262300, 251400, 384900, 435500, 224500, 273000, 276300, 224500, 222900, 202100, 394000, 418300, 302200, 475800, 338900, 296400, 115700, 276700, 298200, 163400, 380500, 282000, 226600, 233500, 404799, 451800, 424400, 493100, 397500, 337600, 157200, 242399, 421400, 403700, 397600, 239400, 416300, 441200, 354000, 354000, 315599, 151100, 269600, 255900, 270900, 422299, 488800, 240300, 376900, 318200, 302800, 262600, 238000, 277400, 122130, 405500, 455999, 353400, 287200, 269800, 292400, 290200, 357200, 417600, 519200, 544600, 318600, 345200, 352600, 283500, 172500, 168299, 427900, 332800, 84900, 307400, 418600, 214700, 280000, 407700, 366200, 114300, 86100, 393700, 239000, 341900, 358600, 413900, 382700, 412600, 344099, 375500, 372100, 428300, 365400, 436500, 390500, 288300, 403900, 301000, 376599, 470700, 460900, 374300, 246200, 333300, 349700, 106600, 514099, 341100, 364700, 229730, 388600, 339000, 466700, 491500, 419400, 478100, 398200, 372500, 493300, 498400, 396200, 445300, 367700, 164300, 487500, 402400, 388300, 496400, 405900, 453400, 376000, 470600, 440900, 396300, 469500, 523200, 275700, 457800, 474700, 409900, 167700, 425800, 402200, 418300, 441599, 426700, 364200, 435800, 433000, 427500, 432600, 485600, 464000, 431000, 365300, 440200, 467200, 467200, 384000, 433200, 425500, 437500, 474500, 424600, 416500, 421100, 429000, 451200, 429099, 507200, 430000, 414000, 431599, 475600, 385700, 465100, 454900, 450700, 425800, 451900, 449099, 420500, 447200, 480400, 389200, 244500, 430400, 437900, 430000, 452800, 452800, 300300, 449000, 348100, 313200, 425100, 227200, 448900, 421700, 446400, 445000, 494000, 453100, 394799, 223600, 460500, 352500, 448200, 457800, 500200, 424099, 456300, 428300, 464500, 225400, 109600, 461700, 465200, 381200, 449300, 461200, 418900, 445500, 451599, 440600, 465800, 380400, 464400, 469200, 469600, 248600, 462700, 451700, 441800, 303800, 469300, 496800, 463900, 459000, 291500, 458100, 459300, 450100, 469799, 393900, 465000, 448300, 222700, 203400, 461300, 455000, 447700, 456599, 444700, 463100, 310000, 470800, 457000, 442600, 459600, 458900, 457900, 447000, 457200, 456100, 456000, 446400, 453700, 463100, 472700, 514300, 440400, 440700, 449900, 452800, 454799, 463100, 166300, 452000, 462400, 244600, 460400, 462100, 463200, 466700, 447900, 465700, 132900, 465300, 461400, 469799, 461700, 449000, 473500, 505700, 450300, 461100, 469099, 457100, 469000, 462200, 499099, 509000, 476800, 456000, 484099, 424200, 399900, 192900, 463600, 453700, 306300, 75800, 467700, 458000, 202200, 464300, 456900, 467500, 474099, 481300, 447400, 430600, 453200, 456200, 461300, 322500, 479300, 465400, 401599, 475900, 429200, 466500, 456900, 480000, 441900, 280300, 475200, 466500, 472400, 465100, 462600, 476100, 473200, 470100, 463700, 468800, 459700, 482500, 232300, 409799, 464200, 476900, 466200, 295700, 325500, 464099, 471500, 377900, 472700, 350600, 464500, 159700, 468300, 473500, 470500, 462400, 467299, 470900, 462700, 452200, 470100, 469700, 506800, 461200, 460900, 466000, 525900, 463500, 448500, 534900, 462800, 465400, 454300, 465300, 308000, 471800, 486300, 474400, 237100, 500300, 319100, 186400, 469099, 452900, 468800, 152200, 372500, 432600, 448400, 444200, 354300, 131400, 461799, 436300, 456800, 326800, 469400, 449000, 273800, 467200, 272300, 466300, 471300, 473600, 464099, 425100, 236000, 456900, 510700, 223500, 457500, 457100, 375300, 464500, 320700, 221200, 467100, 458200, 388900, 463500, 472600, 454600, 462200, 533800, 455700, 461500, 491400, 459799, 465200, 407400, 497700, 296800, 456300, 193500, 465800, 427299, 507400, 407000, 392299, 449900, 506900, 451800, 414299, 374799, 456800, 98600, 463500, 453300, 407700, 455600, 459099, 441400, 382100, 426900, 462400, 49000, 133200, 459799, 451800, 464600, 456400, 407400, 419700, 456300, 236500, 500900, 437800, 439500, 435900, 465500, 477700, 451599, 240400, 438900, 438500, 464600, 494700, 369600, 427800, 483600, 437400, 482400, 456800, 102700, 401700, 478500, 425900, 147600, 212500, 482800, 478700, 465900, 458800, 458900, 464400, 459900, 444700, 394000, 211700, 459099, 455200, 434000, 195500, 482600, 435700, 282400, 323900, 386599, 257900, 86800, 504000, 337000, 301300, 299500, 390400, 376300, 390200, 488000, 271100, 426000, 283800, 456700, 459500, 314100, 344000, 352400, 274700, 404700, 471200, 336200, 336300, 510000, 283600, 484500, 280700, 248900, 447800, 379200, 486200, 294000, 337200, 383800, 305400, 305900, 338200, 378200, 366900, 405700, 313600, 372600, 320300, 303900, 365200, 365400, 349700, 284000, 339600, 322700, 334000, 334799, 261800, 369900, 290300, 283400, 309200, 319600, 343800, 359500, 242600, 360300, 334400, 361700, 488500, 315600, 470800, 311100, 506800, 374400, 295800, 344300, 343800, 322400, 359500, 369300, 138600, 376500, 127700, 383100, 351300, 336599, 435700, 355200, 368800, 392100, 366800, 351200, 353100, 364600, 396400, 401400, 393200, 342600, 89900, 330200, 405400, 364600, 479600, 279400, 307100, 407900, 265200, 422100, 283500, 422400, 367200, 302700, 352800, 347100, 373600, 379400, 373400, 505500, 383600, 411800, 428000, 385600, 380800, 278900, 366700, 54500, 384700, 443500, 362200, 362200, 248000, 441800, 388300, 374000, 386700, 400000, 347800, 293000, 409300, 315100, 395800, 390600, 373100, 384000, 392700, 401500, 380800, 380700, 475500, 391900, 454099, 429099, 389099, 373300, 444200, 369200, 427299, 373500, 414600, 359400, 491200, 433700, 370200, 372700, 357200, 287600, 281900, 390900, 445700, 430500, 423300, 375800, 362000, 445000, 441100, 415900, 415600, 356200, 441200, 447600, 279400, 437800, 355700, 423500, 437800, 443000, 395700, 393900, 467500, 445100, 438300, 391300, 442100, 443200, 438800, 448500, 433800, 444300, 458400, 460100, 450500, 468000, 469400, 447800, 421000, 278700, 446599, 452000, 472000, 411900, 459000, 454700, 452600, 448500, 466200, 441400, 449200, 451400, 466700, 456599, 467100, 444099, 442700, 325700, 460400, 443900, 462700, 452100, 304500, 442299, 98600, 438800, 464000, 219899, 435300, 316200, 334600, 265200, 458700, 295400, 441400, 454600, 503600, 444600, 179800, 361500, 467100, 472500, 463400, 486599, 458200, 410100, 372900, 476700, 391599, 441800, 458500, 401800, 401700, 433700, 462299, 431900, 433100, 486100, 203800, 257800, 464099, 452299, 141800, 456800, 459099, 430800, 309900, 454300, 520600, 352700, 460900, 448100, 455400, 466300, 459400, 461500, 456100, 448100, 470600, 445200, 462400, 306100, 451200, 361000, 449700, 461500, 375500, 457299, 480099, 458200, 226800, 446500, 466500, 459900, 452000, 468400, 451300, 470700, 465800, 184800, 456100, 463000, 465300, 447200, 467700, 474000, 269800, 441200, 451500, 463900, 444200, 446000, 346500, 444000, 444799, 457700, 459799, 464300, 376300, 345000, 242200, 217100, 466400, 457100, 473400, 462900, 457500, 424400, 461100, 191500, 458000, 460500, 319000, 265700, 188500, 344900, 458400, 461700, 462200, 462100, 93699, 458400, 438100, 458500, 457000, 455300, 322900, 250100, 215900, 465200, 474900, 459099, 457000, 109100, 459600, 457100, 479900, 459500, 442800, 459900, 468400, 458500, 457200, 162700, 462800, 460300, 457600, 462400, 461400, 472400, 447400, 466700, 452299, 328700, 266600, 476700, 456599, 443900, 480800, 471700, 452900, 429900, 334600, 461700, 463400, 469600, 376100, 457800, 464099, 429099, 466300, 457200, 459200, 463000, 68100, 465800, 460500, 455400, 241600, 466100, 462100, 467100, 469600, 452700, 461800, 459400, 460800, 465100, 461000, 506900, 470400, 465700, 465700, 457000, 467000, 316400, 464700, 462000, 465200, 470500, 472299, 471700, 459799, 462700, 466500, 465900, 466700, 468300, 469700, 463500, 463700, 462500, 465200, 462800, 414000, 473000, 280800, 461800, 465200, 462500, 470000, 468000, 459300, 460900, 464400, 456200, 457100, 463700, 449600, 463700, 466100, 460700, 465500, 466700, 457500, 465900, 453000, 467200, 462800, 466100, 467100, 456500, 463000, 478300, 463200, 462400, 465200, 293600, 460500, 463100, 465000, 361500, 464700, 464900, 465700, 469300, 173400, 454700, 454700, 406300, 482500, 417200, 509400, 461100, 459799, 410300, 452200, 471300, 455200, 429000, 444500, 495100, 473400, 445800, 470400, 534200, 466300, 449300, 454099, 385700, 468500, 451100, 453700, 470700, 476599, 472400, 467000, 370700, 474000, 451800, 458700, 352800, 460500, 475000, 466800, 262000, 465700, 202200, 466100, 463200, 473500, 163700, 275600, 462000, 471000, 323000, 471400, 461500, 321700, 462400, 359500, 473200, 358400, 463100, 464900, 467800, 458500, 453400, 463800, 464300, 451900, 467500, 472900, 117600, 456900, 465800, 205600, 460600, 474500, 471200, 473300, 270800, 309600, 467700, 473900, 196100, 469700, 469099, 453900, 468600, 464500, 467500, 472800, 471500, 464099, 470700, 459000, 464200, 478300, 461300, 466599, 456000, 454600, 470500, 465600, 441200, 477900, 263100, 464099, 469799, 464799, 434300, 340900, 413100, 395300, 475200, 138900, 468300, 490700, 460700, 349600, 303000, 465300, 294700, 451900, 470600, 464700, 234500, 460100, 349600, 468500, 431000, 470800, 312100, 454900, 363600, 465800, 468800, 449099, 143500, 281200, 322100, 318600, 460600, 461700, 468900, 475400, 283100, 458400, 466400, 466400, 335100, 461900, 353600, 459400, 476300, 455000, 461200, 455900, 461200, 465500, 291600, 416300, 461599, 358300, 415700, 295100, 465000, 395100, 427400, 461000, 542900, 343400, 463400, 311200, 264500, 305500, 480500, 444900, 480300, 456200, 493000, 446200, 429700, 494700, 450600, 441100, 452299, 133300, 251600, 462299, 461100, 474200, 444400, 181900, 460200, 478100, 471700, 459400, 238700, 351400, 461200, 239100, 437100, 475500, 507500, 463400, 462299, 462900, 437500, 458400, 452900, 457000, 458900, 466800, 388800, 473700, 459300, 459200, 453000, 469099, 471000, 458600, 275500, 336200, 293500, 381100, 380000, 401700, 479000, 417600, 463600, 327800, 380400, 474300, 461400, 399500, 328500, 127000, 467600, 468600, 457600, 475100, 357800, 420900, 453900, 348300, 413700, 466800, 422500, 400400, 293700, 287800, 455400, 406100, 418200, 473900, 462800, 441200, 475000, 426400, 468000, 460300, 459500, 267400, 457299, 452800, 466800, 181400, 459000, 454200, 456000, 479200, 466100, 454400, 464700, 339300, 458400, 461900, 426100, 388300, 485000, 457000, 462400, 354500, 288400, 316400, 460600, 462200, 305900, 455000, 382000, 446800, 375600, 464200, 455900, 465200, 467800, 444700, 460500, 200200, 425200, 126400, 453500, 76800, 151600, 514300, 464400, 460300, 433000, 220300, 453600, 437100, 442600, 468300, 395300, 212600, 278700, 448400, 404500, 241900, 435599, 441200, 418600, 383800, 451700, 526300, 459600, 465700, 319200, 382500, 451300, 364000, 397200, 470400, 485500, 461100, 474900, 461100, 468100, 467600, 407600, 434099, 441700, 432100, 401200, 455600, 456100, 450200, 444700, 457500, 470400, 462500, 358700, 459700, 454200, 452200, 454600, 261100, 442400, 392299, 375600, 456000, 449300, 449500, 421100, 463700, 473500, 454400, 457100, 447200, 278600, 342700, 445100, 387800, 457800, 141700, 451900, 263500, 298400, 448000, 268200, 461000, 405500, 393500, 461000, 453200, 332000, 175430, 431300, 192500, 389799, 465100, 386599, 443900, 429300, 223500, 380000, 389099, 446000, 425100, 409900, 432400, 429500, 453600, 231100, 465500, 443000, 453700, 471900, 441599, 445400, 447900, 164300, 413300, 400200, 278600, 453600, 448500, 443700, 434400, 465600, 92899, 450700, 469200, 466000, 132700, 427800, 308300, 490400, 331700, 463900, 446400, 454200, 352900, 450500, 405000, 444200, 432299, 391900, 343400, 427400, 441300, 441300, 459300, 447700, 401300, 421599, 439300, 441900, 391000, 434700, 467700, 107400, 439600, 458300, 449500, 432800, 446500, 324400, 446400, 440200, 330100, 452600, 435500, 434700, 442700, 443800, 363800, 332700, 450700, 400800, 333800, 448300, 332299, 441300, 445900, 437400, 456200, 451700, 463200, 336800, 434300, 409700, 440600, 464400, 157100, 407800, 343300, 431200, 240400, 343000, 447500, 467700, 458500, 297800, 432900, 510700, 363300, 457400, 360400, 437000, 460300, 474300, 442200, 451000, 464799, 466599, 447000, 461000, 450700, 461200, 442800, 441000, 469600, 448600, 335500, 443300, 87300, 450200, 427400, 463300, 447299, 313700, 441700, 458000, 469300, 466300, 250500, 164200, 379799, 379400, 414900, 459799, 436000, 444400, 446100, 395500, 429600, 467800, 443600, 456500, 167900, 424000, 465600, 452100, 459300, 459799, 426700, 247000, 459600, 355000, 467400, 452800, 435100, 458200, 514799, 435800, 455100, 463300, 458900, 278900, 462600, 454400, 473600, 446200, 460800, 445300, 466500, 472200, 463200, 477100, 286800, 438400, 457600, 452800, 464900, 455000, 459300, 449400, 484700, 477200, 320300, 453200, 352100, 460100, 450100, 457900, 365900, 466000, 445700, 453600, 470000, 485600, 185200, 276300, 457600, 469000, 459000, 458700, 358200, 446000, 284600, 455100, 150600, 463100, 468100, 302300, 462600, 477299, 356100, 361900, 422600, 445400, 459900, 474600, 406500, 456300, 465300, 454000, 448000, 467500, 465700, 274100, 229300, 440200, 467400, 443600, 338300, 279000, 465500, 465600, 461800, 409099, 466300, 463500, 208200, 509799, 489700, 452600, 457299, 385900, 456200, 455700, 474300, 461700, 466800, 470600, 449000, 462700, 352600, 343200, 384799, 473300, 466400, 400500, 162700, 333500, 491300, 476900, 456500, 453700, 419799, 410400, 413500, 211200, 260200, 258600, 460700, 389300, 520200, 440300, 195500, 448900, 475300, 453200, 455900, 466300, 456200, 453000, 461100, 296400, 527300, 458700, 212900, 457100, 380800, 492000, 449300, 319000, 345500, 181500, 316700, 466800, 281000, 365100, 408400, 413600, 457000, 454900, 463100, 263800, 353500, 496500, 354500, 318800, 455400, 454799, 468800, 318300, 174300, 505700, 460100, 352700, 261500, 200900, 504799, 539700, 391599, 390900, 471800, 404799, 464000, 468100, 343600, 204400, 501000, 479200, 497800, 481000, 346800, 395000, 415000, 429000, 488600, 491000, 341100, 465000, 345900, 447200, 481500, 516200, 455200, 498300, 392100, 444900, 238000, 452700, 477299, 449000, 478100, 479300, 458100, 476900, 462500, 483700, 498700, 460500, 448200, 213900, 454799, 392700, 453000, 443500, 383100, 461099, 456200, 450500, 472400, 50800, 460600, 468200, 323300, 471100, 462000, 332500, 462200, 458800, 383400, 468200, 454000, 274600, 450500, 461300, 411700, 139500, 464799, 457500, 462200, 345200, 378000, 418900, 466900, 448000, 336200, 333500, 343100, 351800, 394799, 349700, 447900, 493200, 463600, 102500, 459799, 469799, 388600, 449799, 349200, 446200, 459700, 247100, 471500, 464700, 435300, 464400, 449799, 518000, 455100, 476300, 450200, 437100, 476400, 332900, 133100, 463700, 505100, 466900, 325300, 470500, 264700, 456000, 474300, 444400, 125900, 445800, 457800, 398000, 434900, 362900, 457700, 457000, 447100, 251400, 246200, 459900, 466500, 416800, 385200, 440300, 418700, 456000, 450000, 394900, 453500, 443300, 467600, 436100, 462100, 282700, 441300, 341700, 426800, 464300, 437200, 467100, 304500, 448100, 455500, 499799, 462299, 467299, 263300, 268000, 448200, 343200, 451599, 448300, 483599, 445000, 416000, 459400, 267800, 428600, 460800, 79600, 390100, 449799, 400100, 450300, 467900, 199000, 327900, 467600, 452700, 454700, 398200, 444099, 448300, 210400, 455400, 500600, 244100, 449799, 420400, 350300, 451400, 455000, 452600, 455700, 412800, 427500, 451100, 397500, 415600, 481400, 349699, 443500, 427800, 399700, 408300, 455500, 437500, 444700, 432400, 462100, 441800, 463900, 185799, 458200, 437500, 392200, 411000, 434099, 289700, 409400, 459099, 449799, 422500, 445400, 424799, 458200, 420600, 412500, 412500, 470500, 458400, 456000, 455400, 393500, 449000, 433500, 366700, 458200, 434300, 474400, 447200, 439600, 441700, 443700, 196500, 336800, 434200, 492100, 166000, 468000, 453200, 442500, 285900, 442900, 442600, 435600, 317000, 465200, 440100, 446100, 452700, 435500, 453500, 424799, 470400, 236100, 479600, 442000, 448200, 348100, 444600, 444900, 416599, 379700, 443000, 243800, 302000, 447200, 422000, 454799, 166700, 230799, 335000, 445600, 362900, 336599, 441599, 167700, 450100, 448500, 185000, 316300, 453700, 315300, 428000, 332900, 344600, 435500, 467600, 464900, 374700, 194500, 442900, 438800, 374000, 452100, 446200, 390800, 304700, 384200, 362400, 436200, 419600, 438400, 437700, 460500, 437900, 440700, 445400, 349400, 459400, 455100, 445600, 463900, 451200, 475300, 456200, 462000, 484900, 358500, 459000, 517100, 438800, 400500, 450700, 460400, 444600, 465600, 447299, 446000, 254200, 447400, 528300, 468000, 444000, 295800, 453100, 325400, 449500, 434099, 438100, 446700, 445300, 442200, 480400, 437500, 445300, 438300, 370800, 453300, 441800, 309600, 381200, 456200, 367600, 448800, 443700, 526200, 468400, 453300, 456400, 524400, 461500, 380300, 456599, 458300, 455600, 461000, 87200, 343800, 435700, 416599, 399400, 273700, 456500, 464500, 466100, 476000, 402000, 462600, 480600, 429500, 450100, 428200, 458200, 458300, 188200, 470700, 456400, 459400, 175500, 460500, 457200, 341000, 350400, 453400, 194830, 106000, 460200, 458600, 443700, 459400, 458500, 313900, 447900, 459200, 133900, 434799, 431599, 161000, 455200, 326200, 214100, 360800, 456599, 469600, 466000, 142100, 458000, 457400, 462299, 343900, 386700, 342800, 293100, 461000, 156300, 222700, 346900, 418900, 288500, 201700, 454099, 223299, 399799, 452299, 459200, 467100, 504200, 408100, 149400, 466300, 469600, 451800, 462500, 340500, 472800, 455200, 244800, 462200, 140900, 453600, 474700, 427100, 465700, 389799, 334000, 360600, 470300, 254000, 464600, 469400, 461100, 470600, 350800, 471599, 188700, 386200, 401900, 288700, 461500, 460600, 500100, 468900, 456500, 380900, 143000, 296400, 341400, 458000, 300100, 467500, 367800, 450700, 476200, 410700, 62000, 464799, 465200, 468000, 474400, 465100, 461599, 423200, 469400, 467100, 481700, 477800, 349500, 463800, 485700, 381800, 474500, 464300, 466599, 471599, 477200, 113300, 493400, 311900, 274700, 478300, 420600, 165100, 302200, 471200, 475600, 433400, 262600, 480100, 398300, 482000, 454500, 264100, 302400, 513500, 365400, 454600, 333500, 333800, 400000, 423900, 108400, 399000, 447100, 469200, 433400, 457400, 460300, 476599, 516800, 476100, 457400, 450200, 467000, 451200, 454200, 450900, 449700, 463300, 465400, 200400, 462200, 230600, 470800, 470600, 486800, 463300, 120200, 473000, 469799, 436900, 370300, 445600, 340400, 446900, 407100, 448000, 458200, 448300, 453000, 463500, 464900, 456800, 469000, 455500, 352299, 486700, 452600, 475800, 212200, 89100, 476500, 471200, 430500, 470400, 204800, 456300, 335800, 364600, 440400, 389500, 380500, 506700, 354900, 464700, 278100, 461100, 303600, 219100, 397500, 359900, 449500, 445800, 468300, 451200, 459700, 316799, 212399, 425900, 452400, 441400, 461800, 198800, 458900, 351200, 469500, 437400, 476400, 427200, 419000, 448800, 345100, 297400, 479400, 188700, 447900, 459099, 461900, 451300, 465200, 428500, 350600, 452800, 181000, 456500, 119400, 452700, 444099, 462100, 439099, 467200, 458000, 290200, 505300, 455500, 387100, 464200, 458200, 248299, 451100, 463800, 140500, 110900, 157000, 434900, 391700, 204100, 343500, 263900, 458100, 456100, 509300, 200030, 462900, 390900, 451800, 251300, 461400, 348600, 449700, 430900, 442299, 434600, 452200, 375500, 273700, 487900, 460800, 471100, 472700, 319500, 244300, 349700, 461000, 342000, 480900, 478600, 450600, 424900, 410900, 565100, 387800, 382100, 428000, 456300, 424799, 471000, 451200, 474700, 432500, 407000, 451599, 462400, 470200, 476000, 452500, 466200, 442900, 495500, 442500, 124800, 352400, 462600, 444799, 457500, 463100, 404900, 523500, 397700, 232700, 397299, 481900, 457000, 474200, 403300, 482800, 375700, 450300, 262200, 314400, 417200, 450500, 156700, 465600, 466500, 326200, 441700, 462200, 502800, 433700, 92300, 243100, 275000, 372100, 533400, 460300, 454000, 364500, 249700, 456200, 435600, 470700, 190600, 358500, 434300, 456900, 138500, 401400, 368700, 465200, 399900, 439799, 446599, 454000, 426900, 470800, 364900, 459400, 441500, 471500, 483200, 490300, 452600, 462900, 461800, 442800, 464600, 450500, 418100, 456000, 440300, 445900, 427100, 240000, 191600, 452000, 344300, 458900, 457900, 289300, 513200, 204800, 446900, 449799, 440500, 183600, 461000, 475000, 445400, 503799, 438400, 444500, 447299, 488200, 388800, 442900, 439700, 473300, 394600, 460800, 452299, 438700, 465500, 470800, 354400, 116900, 377600, 195300, 341300, 515100, 245600, 415600, 528700, 188700, 163700] + }, + { + "label": "Min height width", + "values": [5137, 113712, -5909, 102666, -16955, 135803, -28000, 124758, 5137, 113712, -5909, 102666, -16955, 135803, -28000, 124758, 5137, 113712, -5909, 102666, -16955, 135803, -28000, 124758, 5137, 113712, 42910, 126039, 135736, 46100, 54920, 113880, 100220, 91860, 52140, 104500, 110480, 82230, 69120, 136490, 97950, 79780, 44390, 23330, 86870, 1469, 130450, 114629, 184720, 32180, 56400, 131980, 58430, 63240, 59330, 58640, 29810, 11790, 25690, 13330, 39900, 70460, 160410, 55770, 25179, 18490, 27650, 79830, 40630, 16900, 41369, 118770, -2760, 190000, 119920, 85020, 73980, 49120, 51200, 41940, 71030, 51970, 75200, 80390, 70520, 69910, 119636, 40720, -16800, 48360, 70910, 66170, 54730, 66650, 70930, 41940, 8919, -8201, 48240, 50080, 44120, 70290, 74640, 94410, 30920, 56720, 187800, 170140, 45710, 124420, 59660, 90450, 24040, 129420, 173100, 45500, 37120, 34300, 52610, 59770, 89350, 59000, 32820, 23020, 26780, 19180, 19350, 22770, 37900, 56130, 21080, 41360, 49010, 16290, 14480, 23140, 90940, 39390, 43869, 138650, -19100, 34470, 34630, 12036, 102620, 24060, 14260, 9980, 71280, 5559, 19670, 141580, 37160, 9199, 23650, 17750, 22180, 99940, 7589, 17540, 16790, 5080, 34200, 7580, 25040, 7300, 13060, 17520, 6419, -1381, 41910, 10830, 4100, 20210, 188340, 5209, 12970, 14960, 15149, 11780, 105870, 10600, 16640, 9179, 9750, 7869, 9400, 9640, 34300, 10610, 7640, 12680, 21000, 76650, 12170, 13130, 6909, 19100, 16490, 13150, 12810, 7980, 97129, -2571, 12800, 13140, 14170, 59090, 4630, 5150, 6889, 6050, 13490, 3860, 10260, 13930, 3160, -1600, 40730, 88140, 11680, 11560, 10280, 5390, 9440, 131340, 7570, 144740, 60570, 12210, 142160, 8029, 70330, 6570, 8240, -1070, 5180, 75360, 64130, 4979, 73200, 7920, 2460, 3080, 60010, 7470, 10450, 2600, 99590, 134120, 5400, 1179, 76180, 4209, 3650, 38840, 8910, 4250, 14170, 3999, 76350, 4860, -15060, -341, 128230, 2330, 5859, 22060, 44500, 770, 4769, 1039, 539, 53740, 5130, 5729, 13939, 5580, 48450, 1110, 6199, 164570, 179370, 4720, 6339, 12740, 3569, 6740, 4089, 13730, -641, 2360, 8390, 12540, 5500, 4519, 5790, 8100, 4159, 6329, 7200, 2510, 2199, 9430, 1130, 7710, 11010, 11439, 9619, 8699, 5529, 99290, 6729, 7670, 60320, 8769, 3379, 4350, 2020, 10470, 2929, 187500, 5399, 839, 2790, 2430, 9999, 1970, 2979, 8070, 2849, 5110, 5679, 979, 4449, 2559, -410, 829, 3989, 279, 11130, 130020, 63780, 48590, 15020, 59370, 174670, 44850, 4510, 57900, 3340, 5340, 6710, -1150, -4031, 4400, 1400, 13450, 5500, 3909, 133800, 1570, 2959, 38050, 6499, 37810, 599, 1560, 1949, 38340, 66110, 13230, -1020, 9730, 3350, 2790, 8729, 109, 1679, 1690, 2440, 1910, 5659, 43820, 80340, 739, 47080, 1709, 164110, 58980, 5069, 1810, 16480, -1550, 81400, 3139, 133160, 2669, -821, 3349, 2360, 4120, 1960, 4129, 25520, 3660, 2260, 2959, 6350, 6830, 559, -3540, 5040, 62340, -8401, 4570, 6469, 14420, 3509, 172060, 4749, 38850, 3860, 167900, 1540, 59530, 176210, 2949, 13930, 819, 132560, 74890, 34410, 5559, 41260, 102000, 174330, -17380, 10730, 8950, 144260, 2560, 24580, 6370, 80, 22540, 2060, 1019, 160, 3180, 11580, 88900, 10470, 6260, 73860, 3119, 2980, 158220, 4309, 30660, 68780, 5040, 3770, 99260, 1980, 1970, 6829, 2289, -20080, 2310, 9650, -2251, 2529, 2530, 14700, 3959, 166700, 3599, 150930, 3459, 20810, 6590, 55690, 22690, 5139, 69, 6480, -12630, 37400, 9400, 186250, 9540, 10830, 14040, 9070, 4760, 7700, 56650, 11310, 4790, 194180, 128610, 6400, 7109, 2769, 9170, 14430, 104370, 9179, 178490, 1839, 3649, 9690, 20490, 339, 3980, 9289, 97370, 16590, 13480, 3039, 9209, 108480, 29490, 14640, 22230, 2340, 15880, 155060, 121920, 2909, 27250, 163260, 172970, 2660, 18100, 5159, 5870, 3790, 2880, 4320, 12500, 56360, 125710, 17810, 19190, 106000, 83140, 42550, 104300, 56000, 102609, 49720, 119469, 171680, 32940, 81140, 57710, 46010, 47900, 12410, 51430, 52000, 71890, 38220, 59550, 30110, 25690, 60750, 41920, 42970, 122470, 41700, 24520, 36670, 43590, 28380, 65420, 20490, 46900, 74830, 23260, 30570, 53800, 48360, 44400, 28940, 38850, 55090, 44390, 117250, 26040, 38180, 40279, 21509, 40690, 43770, 23870, 34920, 35680, 47920, 34530, 10209, 38060, 36900, 172090, 22500, 41440, 48970, 51970, 40759, 32670, 29570, 8320, 32190, 36220, 26469, 7490, 50070, 16550, 52680, -14320, 18900, 55380, 31810, 30419, 92140, 31910, 29040, 139770, 30299, 117280, 30630, 29670, 36720, -13690, 31170, 24230, -7440, 28120, 27790, 26429, 26000, 27230, 25920, 76240, 30360, 186670, 44830, 116240, 24560, 29890, 95180, 82150, 26890, 70680, 23220, 173160, 18330, 29520, 47580, 40140, 29100, 28250, 26230, 27280, 29190, 15910, 28300, 15970, 18410, 23929, 86500, 26960, 195790, 23360, 15049, 27500, 25880, 29740, 14950, 18950, 98230, 19830, 21830, 33440, 109480, 16040, 61550, 23600, 20700, 24970, 25500, 19860, 15920, 25010, 26910, 14280, 18950, 15430, 12709, 22380, 78950, 4990, 32920, 110000, 23040, 16230, 26429, 10009, 14770, 27599, 21410, 19900, 149800, 159730, 25800, 9250, 16530, 14280, 99670, 28780, 7340, 11060, 14120, 7850, 123859, 27430, 9960, 32360, 11210, 104469, 14710, 11570, 14290, 95429, 18660, 4369, 9129, 9270, 17570, 8890, 6709, 9220, 7710, 11250, 6599, 5370, 3400, 4270, 179, 2290, 4540, 13700, 93360, 59470, 8529, -851, 19020, 4139, 5289, 2350, 6269, 990, 8240, 7010, 8050, 1210, 4560, 1259, 9949, 8110, 64180, 3909, 6729, 2690, 5280, 150810, 6709, 148720, 32080, 2289, 171240, 6690, 79710, 122870, 39720, 3809, 122739, 30200, 5390, 5709, 8730, 118730, 74280, 13320, 5130, 4419, 3000, 3679, 9389, 63420, 6690, 95570, 20350, 5090, 44240, 120660, 29440, 2999, 35740, 63700, -1540, 155930, 145400, 5790, 939, 175990, 3370, 5030, 8129, 69630, 3980, 19400, 27460, 10430, 25930, 6300, 3050, 5360, 4789, 5870, 16930, 1360, 3990, 3170, 79640, 12030, 125269, 7050, 3980, 42910, 9890, -19210, 25280, 170010, 10610, 3749, 3420, 10510, 2749, 7790, 1890, 27759, 140190, 5329, 3289, 6660, 82810, 7319, 1650, 37550, 8889, 7769, 499, 9579, 6610, 35280, 11940, 7629, 2200, 1180, 7390, 159380, 29129, 172160, 108520, 1330, 5769, 1170, 2310, 4110, 54490, 2309, 90020, 1360, 3090, 147650, 79810, 53960, 148120, 5100, 1890, 669, 4730, 190970, -570, 14780, 2929, 3439, 8649, 133040, 96310, 110079, 9729, -151, 4940, 2090, 151720, 6060, 2439, -1190, 2919, 34290, 5939, 2029, 12110, 15930, 175700, 5290, 589, 4910, -1241, 14340, -2690, 1250, 10480, 10930, 116080, 17710, -1590, 6629, 25540, -11360, 2330, 11860, 27210, 153740, 5040, 5950, 1549, 37630, 4259, 2010, 34760, 2959, 4410, 6640, 6889, 179130, 2920, -60, 9899, 144140, 2350, 5719, 3420, 4159, 3330, 799, 2390, 5310, 3079, 4840, 18340, 3719, 6260, 5810, 7309, 3969, 132430, 7079, 5280, 549, 2090, 22160, 1699, 5679, 2509, 2129, 2999, 2469, 4830, 4780, 3960, 3040, 2710, 2440, 2859, 32670, 1659, 9360, 4670, 2080, 4059, 1059, 2789, 5639, 3589, 1709, 5050, 6039, 3850, 13180, 2140, 2079, 6579, -1821, 1389, 7799, 1739, 5910, 1610, 5020, 1809, -721, 4659, 2929, -4720, 1829, 5420, 2709, 50380, 6510, 4900, 1380, 78330, 6539, 5170, 4370, 409, 92280, 5740, -5240, 67910, 33020, 13450, 3690, 6899, 5139, 67240, 6620, 2099, 5599, 13440, 32679, 28520, -180, 30930, -421, 4630, -641, 8349, 5080, 129, 1480, 5289, 11870, 4140, 4360, 1450, 1629, 67510, -421, 21240, 4620, 106560, 2909, 1640, 1290, 35360, 3020, 158790, 2440, 1200, -911, 186220, 88630, 11220, 2760, 109090, 1729, 2269, 30290, 3889, 28940, 1820, 28870, 2559, 1930, 3350, 2659, 9469, 690, 1270, 5479, 1309, 1579, 149430, 6060, 2289, 55039, 1910, 699, -770, 1540, 6850, 64080, 2819, 850, 166420, -441, 1869, 13020, 480, 5479, 25160, -31, -981, 2100, 1620, 7470, 2270, 2390, 5259, 10760, 5520, 13850, 1910, 4650, 26980, 5580, 13470, 1379, 4770, -2110, 67810, 128539, 59940, 48220, 5219, 184470, 1770, 699, 2079, 11750, 124680, 6210, 59900, 14120, 2260, 1140, 110020, 1779, 23809, -1401, 34390, 1970, 67430, 8870, 44820, 4270, 3970, 20880, 123800, 80690, 74260, 98010, 5329, 1080, 1170, -1370, 60700, 3479, 1419, 2499, 57480, 2859, 87760, 3290, -2181, 4539, 859, 3010, 5810, -4340, 158760, 53230, 3790, -6940, 115210, -171, 389, 54720, 81370, 9070, -12800, 102100, 3790, 140870, 125290, 66200, 5500, 7980, 26760, 13240, 4789, 14150, 23180, 8039, 8580, 8720, 6790, 144350, 118030, 4259, 9330, 4600, 7759, 166130, 1229, 6909, -1090, 5270, 118510, 139370, 4460, 115410, 8939, 1140, -9890, 1809, 5070, 6720, 8089, 3749, 72070, 8120, 5770, 6959, 106649, -31, 6090, 5920, 6360, 3400, 2849, 7780, 97370, 157360, 62720, 21920, -2180, 75390, 69, 26280, 6740, 7990, 20550, 2700, 7050, 104860, 67500, 140930, 4179, 4890, 9140, 459, 2829, 31800, 3839, 142650, 86160, 1739, 22910, 25480, 175740, 136730, 2790, 68020, 41520, -771, 2410, 7269, 61130, 47270, 539, 12740, 7960, 74870, 5390, 2690, 4800, 107590, 11250, 13799, 12540, -2471, 3520, 4869, 3750, 7290, 11580, 4570, 93740, 141260, -2510, 4790, 3800, 22599, 144230, 36850, 3710, 3459, 12609, 13720, 21469, 13280, 76830, 2449, 5709, 3969, 19, 37430, 569, 166100, 40190, 163939, 13330, 190770, 178250, 25700, -721, 4369, 8630, 147620, 19530, 16770, 16040, 869, 37960, 111130, 55470, 12310, 49370, 164270, -14760, 15730, 60470, 39740, 13420, 4970, 10200, 7700, 98310, 27540, 15350, 1490, 30840, 5699, 7070, 15000, 3360, 4649, 6919, 6340, 5950, 10680, 8300, 6199, 20900, 4570, 4429, 7540, 9350, 10410, -871, 7570, 1659, 289, 8310, 10310, 5390, 106550, 6610, 49240, 127590, 6780, 5649, 6169, 32320, 1240, -1721, 4690, 2439, 7929, 77530, 128090, 10840, 100630, 3630, 188329, 8720, 84620, 59530, 11900, 95580, 5470, 43960, 74950, -381, 47110, 86950, 66336, 92680, 82720, 60920, 1459, 38380, 17530, 5669, 141360, 135700, 29940, 18850, 3299, 14900, 59000, 17080, -541, 141500, -381, 19600, 15020, -571, 11010, 17110, 15960, 122080, 47050, 22710, 63130, 10169, 5280, 12150, 11550, 5280, 174490, 6590, 3839, 4519, 156290, 28769, 73210, -7371, 22900, 10490, 9810, 9660, 50119, 8410, 36810, 13000, 11760, 78980, 43510, 10720, 28590, 13560, 6270, 8420, 2440, 18500, 7820, 11970, 46580, 15570, 5070, 143250, 12110, 2859, 9860, 44200, 13850, 8780, 10440, 13850, 5960, -15830, 12340, 19080, 8290, 11060, 164950, 3810, 9650, 42270, 170740, 7550, 47050, 14190, 12290, 20970, 1540, 8470, 479, 2050, 15610, 93040, 9579, -1440, 107410, 15830, 23360, 9890, 97820, 22490, 7990, 1110, 4190, 76240, 22679, 12740, 28560, 3850, 29120, 16780, 2210, 2070, 13200, 5299, 1759, 1940, 17310, -20, 6679, 4910, 4949, 6390, 1370, 7520, 88400, 7240, 155250, 7090, 33940, 62660, 8009, 68800, 10009, 3970, 4819, 59930, 174750, 94460, 136080, 80230, 28080, 6040, 19670, 8119, 12180, 67460, 28320, 739, 22780, 7090, 138100, 35450, 3299, 13560, 5820, 8109, 2330, 74480, 3000, 9140, -31, 10610, 15980, 10880, -11070, 16900, 7950, 2989, 4690, 133840, 4680, 12070, 3850, 4790, 7740, 8119, 2940, 2280, 4170, 3679, 103080, 31040, 3290, 6560, 1750, 5440, 5550, 5639, 50710, -1191, 46540, 6160, 31120, 5290, 7730, 7040, 123430, 2360, 9969, 6840, 699, 13000, 113960, 65610, 2749, 3590, 3329, 6059, 104040, 7060, 174760, 4980, 166740, 579, 3500, 41860, 7109, 5370, 44670, 22580, 35230, 26020, 7019, 9689, 16860, 3870, 3509, 12830, 16580, 1130, 8240, 56830, 96679, 16279, 8519, 13779, 4509, 56250, 2770, 3750, 4310, 8500, 7010, 6570, 102840, 27770, 4400, 3700, 619, 126290, 5859, 4740, 11070, 6030, -1230, -3230, 7840, 8179, 91370, 75930, 134770, 11439, 63700, 13590, 130160, 62680, 6040, 6850, 6279, 21589, 7609, 3599, 3469, 150150, 46160, 47580, 6130, 76360, -15750, 14380, 53620, 10820, 2150, 8590, 7600, 4670, 4599, 6539, 4560, 32280, 9640, 7049, 109840, 7030, 110150, 5699, 5200, 119300, 90730, 132780, 123130, 12360, 111580, 5070, 34940, 16240, 2900, 949, 2470, 59120, 7129, 3359, 90910, 16180, 1620, 5370, -530, 169590, 146010, 8650, 37420, 68050, 126130, 104560, 2890, 300, 39230, 18150, 27519, 7760, 3370, 1429, 92090, 119149, 9929, 2479, 2150, 6709, 121649, 36730, 35990, 51330, 10270, 6070, 629, 5249, 18510, 10270, 3240, -320, 24230, 3089, 117210, 21750, 40279, 17190, 7349, 9460, 1779, 6609, 2610, 4960, 5409, 4910, 2419, 10290, 7109, 130530, 19860, 13650, 13560, -12130, 98940, -17310, 8470, 9220, 4239, 196430, 4250, 1960, 100150, 3020, 5370, 28670, 4899, 8210, 14040, 5920, 5090, 39860, 3999, 17410, 3290, 105480, 4550, 5820, 5080, 136300, 3870, 35600, 6140, 11450, 1390, 33250, 24640, 30700, 130530, 28929, 9389, 24210, -1271, 189460, 1270, 809, 108290, 9919, 27180, 1999, 109, 153130, 3790, 8969, 18390, 4769, 8749, -8780, 3630, 1690, 10960, 18660, -570, -890, 178930, 4570, 34270, 560, 2660, -2411, 136430, 12180, 4140, 9649, 140230, 4380, 4079, 16540, 57939, 70360, 6430, 9289, 2630, 52080, 51340, 5849, 6270, 14300, 29160, 42280, 4750, 8489, 5850, 39080, 3519, 6339, -410, 17860, 4819, 15920, 6989, 80760, 10780, 2259, 16490, -900, 54960, 11800, 5480, 14190, 3900, 5109, 139540, 63650, 11880, 779, 17300, 13759, -19560, 17870, 60550, 8060, 45310, 35980, 9810, 186439, 28220, 12890, 18940, 10500, 1900, 101870, 33000, 2829, 10080, 7810, 14990, 12830, 11150, 74180, 11610, -5510, 168730, 12080, 11870, 51010, 10660, 12100, 7029, 11399, -9330, 10080, 11860, 29, 8480, 2259, -6170, 9830, 8520, 37520, 26400, -911, 9440, 7189, 15620, 4100, 10450, 1490, 140990, 2060, 3139, 44210, 25770, 23100, 87670, 17110, 1519, 5420, 12470, 7930, 26280, 5479, 16890, 118140, 18870, -2140, 7170, 5970, 14490, 13030, 10540, 12540, 24710, 3859, 14440, 709, 9459, 10670, -1331, 6929, 65310, 52000, 10220, 5870, 128660, -181, 5890, 8850, 120360, 18260, 11359, 12780, 152980, 819, 8909, 10380, 4769, 9190, 3159, 11880, 1019, 80250, -2871, 8630, 5849, -701, 11160, 12569, 25930, 9190, 9520, 77590, 159430, 5500, 82810, 8159, 150100, 69350, 4390, 4850, 42190, 3150, 8220, 105090, 1519, 11399, 135670, 66470, 8450, 60900, 13540, 36730, 144100, 11530, 12100, 3100, 100860, 129860, 11510, 8860, 26500, 5639, 12170, -2270, 44410, 16120, 30179, 10200, 21850, 8809, 11399, 4620, 5800, 8129, 7480, -741, 2209, 10109, 3860, 3560, 3750, 2869, 3609, 3930, 15860, 125970, 2250, 5980, 8679, 17280, 4880, 3100, 10260, 11310, 8189, 6340, 142520, 7639, 2520, -15210, 9689, 161580, 7429, 122080, 7520, 43620, 7400, 15089, 9739, 8429, 16130, 14840, 6140, 9810, 139320, 6690, 9819, 7380, 125320, 5950, 139190, 3900, 5490, 2730, -6791, 4170, 5029, 7589, 1279, 91120, 3300, 6729, 5110, 1869, 163990, -181, 24830, 58240, 139070, 117440, 3400, 3409, 3880, 1900, 33150, 5130, 59400, 23830, 5120, 20360, 6019, 6909, 102410, 629, 3950, 8239, 184140, 6149, 10530, 16750, 85740, 8930, 46936, 177860, 5280, 4449, 11610, 4369, 5900, 111890, 10290, 3850, 137810, 6650, 6610, 181180, 23420, 83300, 168490, 42670, 7079, 4789, 4069, 168130, 4780, 9250, 4890, 104120, 40890, 53380, 120630, 3310, 182369, 51350, 54050, 18320, 49000, 116900, 7780, 55430, 25810, 4270, 5470, 2610, 8530, 83570, 144990, -191, 50870, 15120, 9100, 6899, 5369, 4339, 95940, 7060, 177700, 14580, 62420, 44680, 36320, 82790, 11240, 29640, 5350, 21309, 8799, 7690, 6179, 909, 138260, 3059, 90480, 87110, -4101, 75260, 2719, 4339, 2549, 2070, 6279, 50830, 179020, 115620, 1230, 5409, 7520, 4549, -1141, 13970, 3320, 18240, 190990, 3740, 2349, 3870, -101, 8480, 8560, 16630, 1389, 4679, 1150, -531, 6899, -571, 1109, 3489, 3940, 4239, 6350, 989, 6099, 184330, 4029, 136120, 11500, 5270, 4470, 103190, 37550, 5079, 4369, 44680, 79400, 3469, 127120, 219, 5580, 77630, 122940, 7959, 34560, 4220, 56650, 53650, 71330, 26640, 141620, 83130, 19550, 7979, 71320, 7180, 10129, -4100, -11900, 2429, 36700, 15280, 3340, 11399, 6780, 13950, 10560, 7040, 2330, 161490, 10209, 74500, 10610, 16930, 5230, 4339, 193090, 1389, 1530, 11840, 111649, 8630, 70180, 11470, 42450, 5239, 7730, 8089, 9149, 5310, 26140, 6969, 3950, 8270, 19130, 8300, 4419, 59429, 35930, 166590, 1579, 669, 17340, 3090, 176800, 5580, 29690, 103940, 31200, 46640, 151130, 9630, 7710, 4560, 127080, 7350, 26160, 153950, 80670, 4330, 4460, 6990, 9869, 40380, 5870, -2880, 103500, 21309, 9840, 22010, 1879, 155440, 5320, 9159, -240, 10530, 7170, 8580, 62590, 10290, 38390, 154760, 4079, 86430, 10380, 709, 2680, 7610, 5500, 12500, 39100, 5030, 122840, 7719, 193080, 4229, 4550, 590, 9099, 1969, 4239, 130730, 32719, 5840, 95030, 1640, 1160, 77050, 6460, 32010, 190340, 182590, 160430, 86380, 43179, 113420, 47640, 151990, 1530, 52040, 30700, 41736, 4560, 118050, 47880, 168909, 8310, 2580, 47640, 29900, 64940, 27820, 15440, 20410, 71090, 2509, 9179, 2210, 3400, 5400, 133700, 91300, 8799, 27180, 5639, 28280, -6090, 31850, 59980, -25100, 112600, 26320, 29020, 9090, 29070, 8429, 9599, 1850, 19120, 13390, 12529, 11810, -130, 5140, 7759, 3960, 14660, 3279, 19110, 182550, 57820, 10169, 13660, 14190, 4360, 19180, 14070, 5679, 129820, 70070, 1580, 4700, 4869, 73520, -1301, 94730, 14280, 147660, 72330, 14620, 14260, 166400, 959, 1859, 58280, 41330, 2109, 15690, 32590, 195880, 24560, 56380, 17240, -18780, 5540, 9860, 116910, 177079, 5770, 41940, 990, 168950, 89070, 22450, 7950, 187390, 23220, 63840, 19090, 50460, 24420, 19780, 15800, 21300, 13850, 31820, 20840, 21370, 12700, 14140, 10550, 8199, 8609, 890, 12330, 17620, 4809, 18490, 7769, 12850, 13460, 15880, 176340, 145900, 8440, 1930, 4149, 6859, 83570, 6909, 83379, 15069, 4069, 29480, 93600, 8350, 3169, 3969, -21580, 13939, 13870, 7739, 2300, 19620, 12230, 12100, 549, 13010, 9090, 7509, 14090, 5739, 3050, 107120, 127899, 6969, 133470, 158020, 16530, 121510, 12350, -10570, 182369, 152200] + }, + { + "label": "Min width diameter", + "values": [98453, 319366, 234498, 455411, 391333, 147711, 479081, 208910, 124041, 344954, 280876, 501789, 368624, 98453, 429823, 234498, 170419, 391333, 258167, 479081, 319366, 124041, 455411, 280876, 147711, 368624, 315981, 203423, 170419, 318081, 237211, 321023, 258211, 260481, 341011, 429823, 273989, 296489, 285589, 302889, 235581, 214989, 388889, 392489, 334089, 432089, 423289, 358489, 235589, 244989, 223823, 229989, 389489, 262681, 219489, 226389, 312723, 344923, 401889, 464489, 387789, 283223, 254689, 233089, 397989, 370889, 374289, 256489, 409489, 410789, 294711, 380711, 203011, 280789, 288211, 234211, 284989, 353623, 479081, 143423, 399489, 313089, 249823, 282889, 172623, 287689, 170419, 325623, 389789, 348189, 299689, 275089, 215523, 226323, 377489, 412389, 416623, 497789, 309389, 340989, 270623, 294889, 104423, 121723, 339623, 334589, 132823, 386011, 345723, 206623, 256481, 408911, 289011, 149881, 117823, 317823, 208589, 319789, 286723, 428089, 426289, 425789, 320589, 321881, 344989, 398989, 306581, 412089, 305823, 284489, 373989, 282189, 302723, 442889, 429989, 343389, 253681, 315889, 267123, 174289, 379823, 319089, 345489, 170419, 447589, 305189, 436189, 387023, 446989, 439189, 366089, 472989, 491189, 465789, 368289, 416289, 263023, 195389, 451889, 368389, 351889, 458989, 318823, 413989, 347389, 360823, 406189, 361589, 430589, 481589, 254689, 422489, 361823, 379689, 297389, 380689, 363089, 383189, 409289, 388989, 424089, 397789, 401389, 386989, 346911, 450089, 427789, 391389, 345789, 402689, 429389, 434989, 351789, 468289, 365381, 402489, 436689, 372081, 382889, 384289, 392689, 411989, 440111, 390523, 393789, 376389, 397089, 495889, 335489, 424289, 414889, 409289, 389889, 408189, 412189, 384489, 402189, 433789, 379489, 271389, 392989, 401189, 390989, 410889, 415389, 381389, 409089, 449389, 317089, 387689, 312189, 409489, 448489, 405089, 405389, 449489, 364611, 424189, 221489, 418989, 302823, 408589, 413189, 389023, 439689, 417089, 389289, 420789, 262889, 172589, 420789, 419989, 409989, 405689, 418289, 410389, 406689, 408289, 407089, 423789, 409289, 423189, 406389, 423189, 320489, 418489, 410189, 417189, 216823, 424089, 387123, 395681, 412389, 239011, 416489, 418489, 417389, 429989, 393289, 419689, 406789, 332089, 327089, 419589, 414389, 413389, 413089, 403389, 420889, 261489, 424189, 412189, 402889, 426389, 417789, 415589, 404889, 418789, 413189, 415489, 405789, 408689, 418789, 437489, 474489, 399689, 403689, 414389, 415589, 416789, 422489, 196889, 411489, 424089, 217881, 423089, 418989, 421289, 422589, 411089, 422489, 211411, 424789, 415389, 426889, 417489, 411789, 430089, 395023, 411089, 417289, 428689, 415989, 423989, 420289, 387223, 394923, 432489, 390181, 439989, 313523, 490589, 115023, 398923, 399881, 236123, 180089, 399323, 343723, 190789, 421389, 415389, 405981, 427289, 432089, 403789, 381789, 420289, 414789, 418689, 408789, 436089, 422189, 318323, 437789, 420689, 420789, 411189, 437289, 435389, 286689, 444489, 418989, 437489, 422289, 418889, 440489, 427689, 354023, 418889, 425389, 414689, 444189, 208589, 446389, 418389, 483989, 421689, 412689, 328989, 423089, 427689, 339989, 425289, 381789, 421389, 227189, 353123, 426989, 428289, 418189, 425589, 427189, 420489, 432589, 428189, 426189, 396223, 421289, 421489, 420189, 435811, 422389, 446681, 486789, 421089, 426089, 422589, 422689, 435189, 359323, 485289, 433189, 351789, 387423, 322489, 304689, 426289, 420489, 423589, 146223, 398889, 397981, 406189, 418481, 408789, 241489, 395589, 398489, 419289, 425189, 426189, 405281, 141123, 398281, 229389, 422189, 426589, 428189, 420989, 386989, 262789, 421089, 476189, 232189, 413589, 412989, 494589, 422689, 269481, 223989, 426389, 368711, 397811, 418989, 429089, 414489, 417889, 426211, 410689, 425289, 445289, 415489, 421489, 370789, 387223, 416789, 412789, 284489, 351223, 399689, 472889, 415889, 290923, 407389, 393123, 410989, 348089, 359789, 419789, 218289, 427389, 417489, 370389, 395381, 417189, 400789, 389289, 388689, 420889, 171989, 146311, 419789, 388981, 421089, 396381, 370489, 484089, 418989, 362889, 388423, 392289, 400889, 408889, 419389, 365023, 413889, 277089, 407889, 403989, 421389, 461689, 432989, 409889, 455389, 412489, 440389, 426989, 188189, 483589, 436689, 405289, 247189, 330089, 441189, 453789, 425189, 418089, 415889, 374611, 417589, 409789, 330223, 276689, 408981, 406181, 501789, 211389, 413323, 455411, 277789, 375689, 314623, 274711, 188989, 452011, 366389, 300689, 285689, 316823, 333689, 320523, 501789, 282889, 345623, 283289, 442689, 440889, 318289, 330589, 341089, 271123, 325823, 452589, 316089, 323889, 477281, 289589, 390923, 265789, 261489, 353223, 310711, 501789, 210223, 325789, 288423, 284289, 302889, 326889, 380323, 338389, 394989, 294989, 339689, 302889, 288089, 334089, 346589, 329989, 270589, 317489, 271689, 315189, 314789, 383889, 337789, 270389, 248381, 303089, 302189, 320089, 334089, 134211, 337889, 313589, 333089, 452889, 308089, 443289, 305989, 448989, 338789, 291989, 296981, 317589, 362389, 336689, 344389, 211089, 353789, 173989, 289523, 325089, 316589, 370689, 331089, 338489, 329189, 340589, 322889, 323489, 335789, 372489, 376589, 423389, 316189, 209089, 318489, 481389, 334189, 467889, 246023, 334289, 384889, 274989, 396589, 409189, 391489, 342589, 290989, 338389, 319789, 348289, 352489, 346989, 449511, 345689, 318823, 395089, 350689, 351489, 285081, 339189, 179889, 355189, 411289, 334789, 332989, 210389, 409289, 354289, 426489, 353489, 370489, 325389, 348989, 302423, 320289, 367789, 358789, 344089, 356789, 360189, 365589, 352689, 354689, 445989, 358289, 423489, 392689, 358989, 404289, 400889, 348589, 498789, 342389, 380489, 258523, 458689, 353711, 343789, 339689, 320789, 387789, 392489, 364789, 407289, 398489, 387989, 430089, 313281, 404389, 404189, 379589, 372289, 435189, 422489, 410189, 248189, 400689, 413089, 316723, 401089, 409889, 447489, 360189, 426089, 406489, 399089, 356089, 402889, 401689, 399589, 408689, 396289, 402789, 417089, 416789, 407089, 421989, 425889, 404389, 384789, 315189, 464089, 390781, 425289, 380589, 416389, 412889, 407289, 407089, 420889, 401389, 408689, 412289, 421689, 367811, 422189, 406289, 402689, 288611, 394981, 402489, 418889, 409989, 407689, 400689, 176589, 424989, 419889, 336389, 392889, 341689, 410089, 240589, 415689, 343681, 425789, 412889, 467689, 405489, 161523, 385989, 435589, 432489, 421589, 445789, 414989, 367889, 386589, 438889, 443089, 415289, 416889, 397389, 482189, 416389, 418789, 421389, 453789, 440189, 301489, 303411, 423889, 405389, 254889, 413089, 417489, 343111, 323489, 410989, 501789, 324189, 425489, 428489, 414789, 423289, 418189, 419889, 415089, 418489, 426189, 400889, 419089, 330389, 416489, 442089, 409289, 418989, 366689, 420889, 413889, 438989, 342689, 409689, 424289, 393881, 415689, 425289, 411889, 426889, 450189, 262889, 414489, 419889, 354223, 490689, 429589, 430289, 243289, 329923, 412089, 417789, 334023, 404689, 325989, 408389, 404489, 412789, 413989, 425889, 496989, 317489, 362189, 263589, 421489, 416089, 429089, 418689, 414689, 411181, 416689, 214589, 412189, 416889, 420289, 285689, 171189, 449589, 416789, 416889, 416089, 420489, 146123, 410489, 404989, 414489, 413389, 417289, 408389, 286689, 263989, 429489, 429289, 417389, 411889, 191589, 419189, 412389, 433689, 415589, 431889, 419389, 424489, 424689, 427489, 277789, 421889, 413889, 415689, 414189, 430389, 423689, 400289, 431989, 416489, 395989, 217689, 429689, 416489, 423389, 351423, 428489, 418189, 409689, 444389, 420389, 423289, 425289, 361489, 415189, 419689, 417189, 423189, 414689, 419389, 423889, 176489, 422589, 413389, 418789, 330389, 422289, 421589, 424589, 405481, 408489, 415789, 392181, 419689, 421989, 419389, 485389, 428589, 426189, 425689, 417689, 425089, 400489, 425989, 420989, 419289, 426889, 428481, 427789, 418989, 418689, 422489, 422789, 423089, 404781, 428989, 421189, 420389, 418689, 421389, 419189, 398089, 429189, 224189, 420089, 349023, 420189, 425189, 424889, 418389, 417889, 419689, 414289, 416389, 421289, 415989, 419389, 421989, 420989, 416989, 421889, 418789, 421389, 411689, 422689, 421589, 421689, 419989, 414189, 419489, 427989, 418489, 421589, 349723, 283989, 420689, 421789, 419989, 390489, 425389, 424089, 424089, 423689, 196989, 413389, 401189, 428689, 474589, 380289, 471889, 421789, 418389, 432389, 411589, 427789, 413789, 393389, 431989, 483589, 427589, 431489, 423989, 500489, 419189, 410289, 411989, 330489, 423989, 408889, 419089, 429389, 436189, 428289, 350523, 342311, 427989, 355423, 416589, 412189, 416689, 431389, 421889, 232189, 422589, 302889, 422389, 417789, 426889, 290589, 306489, 427589, 428189, 381889, 427489, 417089, 292889, 419889, 333389, 429589, 332089, 419189, 420489, 425289, 414189, 416089, 417889, 419089, 409989, 422689, 428989, 198489, 416189, 421889, 191389, 415689, 429789, 424489, 429389, 210289, 316989, 424589, 429289, 281881, 423189, 425089, 420589, 422989, 423989, 449189, 427089, 424589, 419789, 426589, 420089, 420089, 435889, 420189, 432189, 414589, 422289, 426689, 424289, 421989, 438989, 209089, 418989, 429089, 415889, 459689, 423389, 427389, 394589, 435589, 261089, 424089, 447789, 415989, 303289, 376989, 425689, 295789, 419589, 427189, 419389, 284589, 414989, 316689, 420789, 372511, 427089, 323489, 417089, 355589, 424089, 427089, 423989, 198789, 303889, 342189, 364689, 419489, 415989, 424089, 428489, 283789, 414989, 421589, 422789, 337989, 418189, 392189, 415889, 428589, 412389, 415189, 339723, 420689, 414189, 402189, 423489, 346923, 292189, 445311, 229489, 418889, 401589, 467089, 424089, 490789, 396789, 420889, 404089, 334889, 242823, 441789, 404989, 465189, 423389, 408511, 413289, 382281, 460389, 411989, 401589, 411889, 210289, 312489, 420189, 424489, 433789, 404189, 242111, 414489, 440689, 424689, 418089, 298689, 447089, 419189, 295689, 397389, 431389, 431981, 418689, 421089, 423589, 396889, 415289, 485089, 418589, 418089, 428189, 452289, 428089, 418889, 418589, 412189, 426789, 428289, 419989, 316089, 450189, 297589, 349589, 321589, 431889, 434089, 394989, 424389, 274889, 347289, 431789, 422289, 462189, 341789, 153111, 425989, 427889, 374011, 430189, 302489, 404789, 410389, 447289, 457189, 399681, 396689, 352281, 423389, 373489, 410889, 428589, 412589, 427489, 418689, 400089, 497489, 428089, 422389, 381011, 421189, 282089, 415889, 407889, 425789, 222889, 377911, 421789, 376011, 431489, 423589, 412089, 422289, 286889, 423989, 420089, 479389, 490189, 437889, 414889, 419789, 320789, 382489, 294289, 417689, 419189, 255689, 422589, 350089, 412989, 404489, 420289, 414689, 423089, 421589, 437489, 414089, 308789, 418889, 224389, 420489, 199089, 268289, 479081, 416989, 418089, 392489, 310589, 427489, 406089, 411389, 423089, 383189, 261489, 273089, 413689, 406089, 353089, 369389, 409489, 411381, 372389, 418589, 492089, 423789, 427789, 365689, 357389, 420289, 307889, 377389, 430789, 402711, 430789, 433189, 419289, 406881, 428389, 361289, 395989, 401789, 388789, 298823, 413089, 413489, 410389, 406289, 398981, 423489, 424089, 302189, 412889, 392981, 415689, 340923, 310289, 400689, 392389, 460889, 415989, 407289, 408089, 405589, 418389, 403281, 411889, 366011, 407489, 297489, 424889, 408389, 444489, 414489, 268489, 413589, 288589, 299489, 412789, 305989, 420089, 401189, 422289, 413589, 457689, 367289, 124041, 437611, 161211, 379881, 420189, 302023, 342523, 385089, 307189, 474789, 367389, 418289, 377789, 373789, 401411, 397989, 405189, 315789, 372211, 415789, 422589, 425489, 404689, 415689, 417189, 219989, 413289, 371689, 281489, 417089, 405989, 408289, 397289, 424989, 198889, 409889, 427389, 424589, 222889, 409089, 325689, 438489, 295789, 428889, 408689, 417189, 349589, 365311, 392689, 409789, 395189, 424989, 259723, 388589, 423889, 407189, 419089, 408589, 350389, 390789, 398589, 406089, 387989, 402089, 427089, 180289, 403689, 414189, 412189, 431789, 413289, 225611, 386681, 406289, 275189, 387089, 399389, 405989, 402889, 407189, 489289, 275689, 413289, 394089, 462389, 408289, 323289, 335923, 410889, 411089, 410389, 413089, 416989, 278289, 401689, 460389, 330023, 416189, 195689, 372489, 309189, 391889, 205623, 307889, 407889, 422689, 415889, 317389, 407989, 411423, 337189, 342323, 334589, 405989, 415689, 431089, 407789, 408789, 420189, 422389, 394981, 413989, 409989, 419689, 399289, 398889, 425089, 408589, 372789, 402389, 171289, 409889, 414389, 486189, 407689, 326789, 380981, 415089, 428589, 486489, 374289, 166481, 474989, 412489, 393989, 419389, 385381, 404589, 410989, 416189, 410589, 422389, 419989, 394181, 241789, 412289, 400081, 419189, 418589, 421689, 378489, 258989, 415789, 306389, 421089, 416689, 402989, 400281, 461489, 404789, 393581, 419889, 416889, 360389, 420989, 397381, 432289, 402889, 422389, 405589, 423389, 428989, 421089, 435989, 334989, 423389, 413889, 412189, 397581, 413389, 418289, 407389, 496689, 407981, 309389, 412189, 327589, 418889, 410489, 418389, 445489, 422189, 408089, 390681, 424789, 455789, 234189, 281689, 390581, 426889, 415489, 418189, 392681, 405189, 412189, 412989, 254389, 416989, 425789, 284189, 423689, 438089, 347089, 328989, 410489, 425589, 420589, 439889, 372189, 413089, 422689, 420489, 417989, 422489, 428389, 269489, 263989, 408989, 430589, 409989, 282689, 274289, 422089, 423289, 419689, 365789, 427689, 424089, 247389, 499089, 428081, 408789, 410589, 470889, 415189, 413389, 394711, 421489, 419089, 421089, 409389, 424989, 395089, 295523, 479089, 394011, 490789, 361889, 227189, 270023, 454389, 416581, 393281, 429889, 376689, 361789, 365089, 303289, 242189, 241989, 420489, 419189, 462289, 406989, 178589, 412589, 432289, 414889, 416789, 425089, 413789, 366011, 419189, 266989, 498389, 419289, 260389, 417489, 447289, 454789, 406789, 388789, 386489, 250989, 390489, 434189, 291611, 313089, 394389, 379389, 412789, 408289, 419089, 260589, 302489, 457189, 396689, 273989, 409589, 390381, 422089, 443889, 257689, 473289, 454589, 369289, 332489, 241189, 465889, 501789, 380489, 356289, 456589, 360189, 421089, 423489, 339511, 261289, 469489, 436989, 457289, 443689, 422289, 381489, 380181, 435489, 456089, 454089, 281489, 424289, 306689, 410089, 440389, 474989, 434489, 458889, 395723, 420289, 210989, 423889, 368323, 411189, 434989, 441689, 413689, 437189, 398981, 372723, 458589, 424889, 361311, 261781, 429189, 353289, 420189, 381089, 437389, 394889, 346123, 412589, 431389, 176489, 418289, 424189, 372289, 428589, 421089, 303089, 420789, 420689, 343389, 428589, 411889, 251189, 406789, 433689, 362889, 173989, 423289, 416589, 420989, 436789, 326089, 406789, 427389, 412289, 276889, 309289, 310389, 326789, 485489, 322489, 409889, 476689, 415489, 226189, 414089, 424689, 453889, 340623, 319989, 399789, 412689, 346489, 429889, 428089, 405889, 423089, 411289, 467589, 411489, 432889, 414189, 385481, 430489, 270689, 248489, 422089, 501089, 421189, 266189, 421889, 347489, 421989, 433389, 334323, 197489, 401989, 414989, 339681, 449389, 383189, 417489, 419889, 401489, 192611, 232389, 419289, 427089, 380789, 362189, 437989, 372289, 417889, 408289, 383989, 409589, 401389, 420889, 406189, 420589, 233589, 399889, 371189, 387989, 373811, 405889, 419789, 301189, 412789, 413989, 472889, 419789, 426689, 349389, 198323, 412989, 283989, 422789, 392481, 417389, 416089, 431289, 398481, 249689, 417989, 401981, 197389, 366589, 415889, 295423, 413789, 423789, 236089, 302789, 424489, 415989, 415689, 360889, 409489, 412289, 217989, 420689, 451889, 360489, 414989, 382089, 347689, 415189, 420789, 389781, 420789, 350089, 387989, 416189, 343489, 372989, 439189, 283489, 382781, 386589, 387589, 384789, 406889, 398389, 403889, 399589, 419789, 404289, 372511, 264889, 413189, 391389, 386689, 387089, 409789, 321089, 375689, 413589, 407589, 385089, 405489, 402989, 416989, 387889, 491389, 381089, 422189, 419089, 415089, 423889, 353489, 412389, 397389, 336689, 415189, 400389, 429689, 409189, 402089, 391089, 402489, 192689, 333789, 395589, 383123, 229189, 349623, 411889, 403289, 353189, 414189, 334223, 399989, 423989, 347623, 400689, 408989, 410089, 395889, 409189, 386989, 425589, 253289, 431489, 402489, 406289, 287789, 408189, 410089, 393489, 333889, 404589, 258889, 414489, 404789, 462689, 416189, 253789, 235289, 278889, 402289, 351889, 279289, 401589, 204889, 403589, 412789, 258089, 327089, 415289, 319789, 392389, 312489, 444789, 398489, 434789, 421789, 430189, 262189, 406689, 399189, 346789, 410389, 411089, 333489, 289689, 346589, 337989, 397789, 392289, 398689, 400789, 418589, 394789, 400489, 404989, 289189, 414689, 418689, 401189, 421189, 407289, 433089, 412689, 419489, 458189, 417381, 367911, 482989, 398989, 365989, 407989, 416789, 407189, 431689, 407889, 404389, 342589, 407389, 491589, 404889, 405889, 409989, 413489, 398989, 409589, 432589, 396789, 414889, 407389, 402489, 453489, 332423, 403389, 399689, 468589, 412889, 403589, 253989, 464589, 415289, 442181, 404789, 400889, 489489, 414689, 410089, 414489, 492889, 415989, 379211, 412789, 418489, 413689, 369711, 180889, 283589, 413489, 429389, 500089, 336389, 412789, 421689, 423989, 432789, 385289, 421489, 501789, 405489, 407589, 400189, 417589, 418689, 224689, 425489, 413289, 421389, 301389, 420289, 421489, 299289, 386389, 415489, 170419, 217189, 418989, 416289, 407689, 417089, 417789, 374889, 410889, 416289, 180981, 392289, 388689, 281989, 433589, 356789, 326889, 350089, 416989, 406181, 424089, 246489, 415989, 420289, 420889, 399589, 376889, 341989, 361489, 417689, 278089, 206289, 347289, 387589, 276789, 255789, 414989, 211489, 328311, 409089, 418089, 423689, 471489, 448089, 228889, 419689, 480089, 420589, 425789, 287789, 433089, 340423, 280389, 423189, 255789, 421989, 498589, 425989, 459589, 426889, 285389, 335389, 430289, 207689, 427789, 431889, 398281, 425689, 445189, 429189, 211989, 427689, 343789, 306189, 417589, 418389, 460289, 425089, 415989, 381489, 259589, 359589, 282489, 416689, 243589, 426289, 309189, 418089, 434589, 378389, 182889, 422389, 421289, 426089, 428789, 427989, 424189, 390489, 424889, 425989, 438289, 432089, 297789, 416489, 442689, 329889, 433389, 422389, 427289, 426889, 366823, 232489, 431781, 399589, 173411, 367123, 374089, 127923, 279289, 408281, 435089, 361023, 281789, 439089, 462881, 437589, 412989, 281489, 374389, 481189, 323481, 411589, 335289, 332289, 425489, 402389, 179589, 437489, 397581, 409281, 462589, 395281, 424489, 404081, 462789, 433489, 450789, 418989, 424389, 393081, 413989, 418289, 413189, 401681, 421489, 303889, 426689, 240789, 436689, 397111, 448489, 421389, 249889, 428889, 425489, 400389, 437289, 406489, 357989, 411089, 401289, 333423, 419489, 408889, 415289, 422689, 447389, 417089, 427289, 417089, 314489, 451789, 409589, 496489, 177489, 185889, 432989, 426089, 399389, 381511, 325789, 368611, 307889, 376011, 425789, 386389, 492489, 475489, 304689, 423189, 351989, 422289, 268189, 316289, 386711, 306489, 334223, 404889, 433089, 447989, 419089, 250589, 252789, 398689, 415389, 416689, 416989, 295389, 417589, 302189, 423189, 399489, 439089, 385989, 436889, 411889, 327889, 404189, 438989, 207489, 410989, 412689, 417989, 411689, 424789, 391789, 334789, 410489, 239389, 417589, 248989, 386781, 328323, 415889, 399789, 423089, 415389, 369489, 499589, 414389, 437489, 396681, 412189, 216911, 410189, 380723, 269389, 227889, 254489, 480989, 384989, 254589, 336389, 363889, 412489, 466389, 501789, 170419, 421189, 467289, 456989, 368689, 423689, 291989, 454389, 341823, 465389, 343623, 421389, 341689, 284889, 446689, 423989, 427689, 430789, 262789, 321789, 345411, 423789, 311989, 442389, 393023, 395689, 409289, 424989, 501789, 457789, 355589, 409589, 418889, 406089, 434489, 413789, 431289, 403589, 368889, 394781, 428689, 424089, 436389, 413189, 424189, 410189, 455989, 414689, 243289, 357589, 427089, 411189, 425889, 398481, 350281, 499089, 349989, 304589, 421089, 438989, 414789, 434089, 431589, 364823, 424489, 417989, 357189, 331489, 381589, 418189, 260789, 420189, 422189, 328989, 438489, 417689, 477889, 419889, 221989, 199189, 269989, 334389, 473589, 419389, 417189, 413981, 375989, 415089, 432389, 425889, 301289, 399089, 386581, 418289, 263889, 373589, 382389, 417181, 402189, 417589, 348023, 423789, 399789, 440289, 342589, 435389, 416089, 439789, 454389, 458289, 413789, 425689, 415889, 407489, 437589, 407689, 386889, 417089, 405289, 412189, 393989, 364389, 276789, 413389, 286489, 416289, 418189, 316089, 479689, 221989, 415089, 406089, 423989, 209789, 423289, 433089, 401089, 437589, 404389, 411089, 407389, 446789, 355589, 407489, 403789, 428289, 354689, 423889, 412689, 404889, 425389, 428289, 414589, 173789, 329089, 220711, 456589, 492489, 309689, 377289, 477489, 314089, 206411] + }, + { + "label": "RF block", + "values": [1417, 23377, 3376, 33336, 5635, 10812, 6898, 21273, 2484, 35126, 5626, 51096, 7384, 22020, 18912, 52449, 7498, 87528, 11359, 107154, 9197, 18159, 13115, 41120, 4254, 53966, 17129, 14957, 12469, 12882, 19875, 23547, 16325, 15238, 15452, 31817, 18210, 16237, 13815, 24070, 14163, 10748, 16292, 12787, 19559, 10597, 34781, 25859, 23121, 7331, 19298, 17056, 18788, 12009, 8997, 9280, 10990, 9825, 13690, 14547, 15443, 14758, 22429, 9324, 13396, 10915, 12615, 13307, 16842, 12533, 11312, 29347, 2923, 28796, 42332, 12953, 14401, 16151, 23973, 4730, 21716, 13116, 13175, 15085, 8140, 14046, 15629, 13231, 5612, 14571, 14929, 12812, 9048, 10826, 20129, 17258, 12673, 11513, 12391, 14423, 10741, 14543, 4797, 6770, 12516, 15056, 26071, 38770, 15137, 15072, 11241, 26828, 8765, 10555, 10704, 13486, 6364, 10951, 12683, 21652, 27201, 21344, 10776, 9748, 11037, 12370, 8567, 13685, 11766, 12085, 11494, 20165, 13118, 14030, 13022, 10399, 14657, 11485, 10530, 13011, 6136, 10941, 24564, 2983, 44046, 27024, 13288, 11442, 25304, 11719, 10889, 42292, 21241, 13750, 11650, 12963, 7752, 11368, 12729, 10642, 9786, 12557, 11922, 10954, 10880, 9807, 11606, 10332, 11490, 12266, 8847, 11958, 9329, 11618, 30498, 9096, 9656, 10880, 12137, 10590, 30171, 10776, 12029, 10048, 9194, 12699, 11935, 10320, 12246, 10999, 11670, 12919, 10448, 28090, 9996, 11446, 11869, 11452, 11130, 10617, 10938, 10938, 61633, 9401, 10986, 10264, 11382, 26443, 7246, 10959, 10865, 10461, 15205, 10010, 11370, 10761, 9628, 10072, 15113, 15277, 10752, 15445, 10415, 10409, 11365, 42807, 10732, 80687, 14568, 10607, 25736, 10835, 25227, 10372, 10690, 10861, 9204, 24356, 9578, 10690, 16420, 32922, 9966, 10328, 22516, 11073, 10370, 10319, 16053, 12519, 10850, 10016, 23430, 9967, 10409, 16565, 33216, 10086, 11852, 10717, 71528, 10854, 6473, 9864, 24531, 10169, 10465, 13817, 8117, 10114, 10539, 9383, 9575, 9905, 10607, 10809, 12302, 11300, 17273, 19981, 10379, 62047, 32661, 10668, 10740, 11887, 10168, 10328, 10606, 5848, 19699, 9904, 10606, 12471, 10735, 10454, 10221, 11269, 10282, 10788, 10518, 13610, 10157, 12402, 12469, 10341, 11117, 11692, 11407, 11290, 10950, 11411, 10684, 15902, 9235, 11594, 10388, 10673, 10287, 11358, 10456, 21224, 11029, 9757, 10623, 20290, 11303, 10606, 10576, 10914, 10215, 11150, 10688, 20300, 10648, 10158, 9969, 10490, 9674, 14900, 8394, 58012, 9555, 18938, 12074, 10625, 16410, 18293, 8646, 7452, 10486, 10598, 10851, 9883, 9527, 9921, 8487, 12350, 21204, 10475, 33939, 10793, 10449, 12448, 11840, 16981, 9941, 9714, 10921, 17966, 13494, 13501, 9559, 12461, 10527, 10273, 12408, 10142, 8618, 10065, 10490, 19855, 11973, 6992, 27078, 9865, 22933, 10190, 39964, 15056, 10890, 10469, 9225, 9722, 22231, 10448, 16940, 8739, 9933, 10792, 10162, 10820, 10476, 10596, 15300, 10848, 10490, 10626, 11052, 11152, 9908, 10688, 10853, 23939, 10974, 10706, 11293, 25292, 10575, 44141, 9329, 42453, 11111, 33703, 9989, 14744, 29684, 10627, 12450, 10102, 10804, 22365, 15455, 10235, 17927, 28090, 22636, 5696, 10830, 11452, 37616, 10548, 14079, 2381, 9319, 5708, 10278, 10270, 10173, 10438, 10466, 14781, 11824, 13649, 11169, 10106, 10054, 48407, 10727, 8452, 10180, 11032, 9142, 27478, 10124, 10562, 10836, 10135, 7096, 9831, 11865, 10439, 10077, 10337, 10278, 10402, 40924, 10160, 24221, 8787, 12698, 13555, 20043, 9006, 10211, 30486, 10615, 5012, 13470, 11561, 21404, 11943, 35820, 10150, 10799, 10569, 10388, 18464, 10494, 10739, 17119, 10382, 10994, 10169, 10365, 10862, 10219, 35420, 11482, 36677, 10085, 9303, 10751, 26201, 9832, 9444, 11268, 16820, 24669, 11580, 10429, 13545, 31487, 14811, 28689, 13605, 22274, 13142, 15556, 39192, 11083, 28305, 22002, 32055, 11237, 14968, 15304, 10818, 14371, 9237, 10504, 11672, 15811, 20320, 13030, 18281, 37483, 10853, 18766, 33670, 11700, 25359, 13903, 19952, 17043, 18835, 21038, 13206, 10850, 13772, 8348, 14495, 25290, 14003, 13966, 12454, 16773, 15792, 14666, 12615, 18555, 20326, 13386, 16211, 11108, 12505, 18943, 13578, 13475, 9963, 13037, 24033, 10640, 25696, 8173, 12725, 9708, 9863, 12975, 12783, 29488, 10613, 15552, 10566, 9981, 11013, 10682, 10087, 12383, 11656, 10325, 10872, 8027, 11261, 11077, 38056, 10047, 9527, 9601, 12561, 10987, 10731, 10944, 6680, 11525, 10922, 10432, 38982, 12574, 19619, 12819, 8162, 9543, 12403, 9836, 14314, 22537, 11423, 11359, 16214, 12020, 11313, 9979, 10532, 11140, 5538, 11040, 10342, 7274, 11035, 10156, 9986, 10486, 12454, 12438, 24463, 20432, 20455, 12397, 37736, 10196, 18212, 15145, 18863, 13024, 13364, 12974, 41227, 11856, 11346, 11326, 12760, 10202, 15894, 11309, 22422, 17922, 9380, 11075, 11609, 9989, 21795, 16305, 10791, 18100, 10980, 12215, 10666, 10339, 7981, 12100, 10235, 28922, 10339, 11453, 15440, 24216, 8614, 14903, 11618, 10720, 10714, 11399, 10649, 10249, 11125, 11523, 13787, 10415, 12882, 10920, 11001, 23505, 19807, 12172, 76180, 10338, 10975, 8062, 13561, 20564, 11107, 9966, 8921, 34621, 36878, 11835, 10960, 11871, 10982, 29514, 10178, 10481, 11149, 10573, 9197, 34702, 15114, 11222, 7482, 11016, 28924, 9036, 11100, 12007, 30205, 10454, 10890, 10902, 10595, 10095, 10696, 10249, 10609, 10740, 10824, 10277, 10679, 10296, 13965, 9912, 10483, 9972, 10735, 19105, 24162, 10498, 9856, 11457, 10418, 10479, 9695, 10405, 20038, 21024, 10611, 10964, 10095, 18471, 10126, 11042, 10546, 13961, 9864, 10287, 10254, 10350, 36948, 10205, 19478, 16141, 10222, 32500, 9865, 19020, 32054, 7968, 10325, 26167, 15826, 10497, 26223, 10784, 11040, 21312, 13074, 11326, 10699, 11514, 10271, 9270, 27080, 11929, 29848, 13399, 10618, 16773, 38775, 15158, 10308, 16630, 24280, 10359, 26577, 25968, 11063, 9358, 24236, 10131, 10633, 8785, 16274, 10153, 17928, 10168, 12024, 15155, 10751, 10514, 10726, 10694, 10684, 12918, 10318, 9723, 10353, 18212, 11901, 35670, 10645, 10501, 14751, 11704, 5960, 21709, 33016, 11319, 10692, 9730, 11579, 10545, 10898, 10450, 16733, 20856, 10557, 10411, 9420, 31288, 35500, 10552, 7849, 8744, 10903, 9795, 9018, 10362, 11398, 11504, 21077, 9900, 19523, 22921, 48955, 10100, 35563, 17163, 10109, 10710, 10407, 10174, 10338, 19927, 10088, 11713, 9719, 10242, 37731, 15195, 6232, 41049, 10615, 10017, 9755, 10709, 14637, 9291, 11864, 10109, 10156, 11304, 67519, 17390, 17379, 12079, 10161, 10612, 9842, 15579, 10903, 9928, 10148, 10154, 16966, 10889, 10372, 12307, 13177, 26663, 10878, 9647, 10531, 9319, 13014, 9437, 9204, 12344, 11695, 29491, 4829, 9900, 33272, 14803, 6452, 10605, 11949, 14380, 41594, 10764, 11066, 10315, 13599, 10388, 10160, 22538, 10492, 10394, 11021, 11273, 16408, 10459, 9505, 11608, 27802, 10337, 10946, 10642, 10364, 19852, 9766, 9477, 10783, 10463, 32639, 33506, 10877, 11257, 11148, 11070, 10769, 32854, 11405, 10836, 9867, 10488, 14866, 10453, 10822, 10211, 10304, 10483, 10395, 10455, 11100, 10595, 10385, 10249, 10315, 10299, 14743, 10506, 4196, 10680, 8481, 10569, 10217, 10535, 10788, 10380, 10104, 10496, 10774, 10578, 12092, 10172, 10273, 11082, 28496, 10138, 11213, 10182, 10541, 10214, 10813, 10209, 9657, 10418, 10325, 9225, 10075, 10889, 8608, 11322, 11055, 10799, 10054, 22351, 34451, 10954, 10801, 10028, 10797, 10584, 8069, 23265, 19284, 10490, 12889, 11179, 10694, 23407, 10668, 10530, 10576, 33861, 16659, 18867, 10082, 16290, 9883, 14526, 9639, 10930, 10400, 6394, 10245, 10304, 11994, 10994, 11345, 10426, 8470, 17899, 10053, 16420, 10516, 29232, 10200, 10599, 10119, 14293, 10478, 27110, 10359, 9926, 9912, 29435, 17805, 12276, 10674, 26997, 10445, 20195, 9146, 10524, 10816, 10555, 10744, 10242, 10180, 14829, 10046, 11402, 13681, 9995, 10387, 10157, 10482, 15997, 21537, 20617, 7234, 19940, 10347, 9837, 10492, 3567, 15063, 10527, 14404, 26219, 9845, 10367, 12283, 10012, 11008, 16150, 10090, 9801, 10182, 10385, 11210, 10227, 10945, 10796, 12408, 10596, 12523, 10445, 10863, 15001, 11714, 4158, 10011, 11102, 18453, 25567, 34427, 21636, 17312, 11486, 25894, 10305, 11143, 10014, 7083, 29212, 11225, 13217, 12442, 10534, 30505, 18992, 9916, 9305, 9562, 14432, 10474, 15954, 11336, 14433, 10782, 10858, 13947, 13731, 16533, 18216, 23681, 32935, 9827, 10190, 9891, 12630, 10233, 10130, 10387, 15376, 10256, 24143, 10237, 9739, 10317, 9752, 8255, 10923, 8741, 37789, 61374, 8664, 4220, 34907, 3366, 9820, 18920, 28985, 11698, 10181, 82710, 10549, 34749, 25408, 11746, 16455, 10624, 17395, 12460, 11048, 12144, 12643, 13238, 11049, 10607, 10713, 16579, 22372, 10607, 11766, 11282, 10549, 22312, 9792, 12057, 9784, 10705, 21263, 39010, 10601, 20597, 10461, 10502, 8825, 10079, 10800, 11227, 20574, 10297, 28465, 11264, 10799, 11484, 32910, 10132, 10895, 21699, 10646, 10735, 10696, 11264, 19742, 42988, 41859, 10492, 5759, 24954, 10411, 13437, 11267, 5603, 10173, 10822, 11230, 33464, 17149, 11761, 10849, 11071, 10266, 10318, 5839, 14954, 10101, 39692, 29152, 9676, 12924, 11540, 43420, 30908, 9929, 23278, 17192, 9964, 10193, 20560, 27021, 19244, 9997, 11196, 11353, 14331, 10630, 9783, 10959, 14011, 21597, 12489, 10930, 19611, 10617, 10366, 32400, 5912, 12172, 32577, 65364, 44139, 10069, 10473, 10503, 9310, 33098, 10077, 10394, 10412, 5522, 12512, 10444, 11968, 23134, 20539, 10636, 10680, 9865, 17915, 9652, 57471, 17323, 19811, 12337, 19754, 25944, 18475, 9532, 10535, 20382, 26345, 13869, 12280, 12403, 10090, 14846, 17309, 11379, 11821, 18237, 46284, 7399, 12253, 21048, 14545, 12262, 14172, 11900, 11608, 23811, 11756, 12709, 11665, 13314, 11359, 11199, 13162, 11013, 10641, 10930, 11373, 16875, 10709, 14663, 19210, 9117, 10354, 10345, 10785, 33407, 11203, 9776, 22824, 5670, 9550, 10557, 11541, 8667, 41163, 10187, 17357, 76115, 10894, 10300, 14510, 15094, 9959, 9200, 10324, 8811, 10727, 15676, 34492, 11302, 30983, 10239, 27184, 11148, 16012, 13382, 11702, 18726, 10832, 16952, 24133, 9454, 21152, 22064, 5202, 29716, 8219, 18975, 10078, 11633, 10604, 9357, 25145, 82471, 25294, 13270, 8653, 20891, 41040, 11945, 9080, 25991, 8592, 26568, 12760, 9918, 11163, 25627, 12672, 15235, 18263, 11658, 12806, 11580, 10176, 11538, 10923, 11015, 18276, 10587, 10847, 10852, 18896, 14635, 16942, 18271, 8292, 12197, 11126, 11489, 14929, 9764, 15179, 11765, 10865, 25110, 10109, 10387, 15412, 11745, 10938, 10866, 7458, 11852, 31513, 11403, 16621, 11869, 22140, 27762, 11317, 10083, 11296, 18886, 12088, 4649, 10649, 11756, 5362, 5696, 11160, 12697, 10587, 11287, 49254, 5111, 11307, 16226, 65648, 10693, 12976, 9795, 11685, 13300, 9676, 11079, 19515, 4971, 36232, 30848, 8851, 9364, 12046, 10543, 27251, 14449, 25057, 8742, 10756, 10119, 31794, 16824, 13457, 13126, 10940, 8487, 15164, 12277, 10026, 10669, 11707, 10301, 10134, 10264, 12246, 9538, 10608, 10708, 9828, 30769, 10272, 10700, 22730, 10375, 28088, 10679, 15887, 26494, 10750, 16367, 10320, 20659, 11089, 25920, 37391, 9229, 57506, 24371, 13704, 10908, 12191, 10632, 11670, 22268, 14633, 10035, 28198, 10394, 18725, 16048, 9974, 12317, 10831, 11404, 8516, 12843, 10178, 13677, 9834, 23288, 11986, 11347, 18648, 12240, 21040, 10354, 10543, 29142, 10722, 11426, 11068, 9953, 11366, 10677, 10497, 10617, 10630, 11202, 22069, 48435, 10150, 10683, 9589, 10529, 21533, 10302, 24630, 9491, 12154, 10609, 10864, 10744, 10824, 11051, 35643, 10335, 11128, 10196, 20262, 14029, 15512, 13132, 9473, 10776, 10227, 10858, 27460, 10466, 41882, 10425, 23124, 9776, 10710, 10243, 11306, 11631, 13932, 9667, 15904, 15014, 34062, 12569, 10702, 10223, 10575, 24485, 12828, 20228, 11740, 11350, 15787, 12331, 11897, 11918, 5419, 11540, 10408, 10647, 10595, 9036, 11470, 11221, 15296, 19651, 11423, 10007, 9515, 38820, 10686, 10398, 23090, 11000, 9523, 9228, 10795, 11570, 25015, 16290, 41501, 23156, 27076, 9705, 16633, 39615, 25068, 11360, 10211, 14392, 9340, 16150, 8181, 51944, 8740, 17771, 10974, 24164, 8383, 11886, 6533, 11492, 10738, 11183, 11084, 10903, 10390, 9487, 10620, 8266, 15542, 11094, 17072, 33639, 33150, 12483, 10196, 29392, 24209, 18940, 30223, 25634, 20366, 6509, 14943, 10926, 10030, 9480, 10221, 15497, 6424, 12117, 25062, 13167, 9658, 9925, 19563, 62188, 21058, 14014, 57943, 19077, 25315, 15032, 12432, 13616, 14913, 20394, 17053, 26546, 10478, 10214, 21465, 18236, 14091, 11012, 11873, 12159, 33008, 14540, 14730, 20518, 13484, 12526, 4889, 10978, 11327, 11275, 11315, 37227, 15152, 12142, 30949, 13920, 6760, 13238, 10143, 11176, 10785, 12044, 10015, 11509, 10305, 9929, 11989, 11969, 9381, 19884, 14021, 9348, 12366, 6139, 60031, 5686, 9360, 11195, 11103, 17782, 14637, 10345, 24660, 10742, 10857, 9383, 10755, 11377, 8993, 11301, 10398, 8455, 9976, 13778, 8067, 31746, 10800, 10741, 10798, 37306, 6794, 15761, 11289, 11595, 4846, 20598, 9148, 10764, 41269, 10303, 11103, 17525, 9367, 22586, 9782, 10147, 33394, 28569, 9935, 9319, 13227, 30809, 10949, 11866, 12566, 10833, 11049, 10057, 10110, 10675, 11593, 12021, 30957, 4385, 23884, 21501, 21241, 19901, 4683, 9416, 28303, 12191, 11174, 9041, 15090, 19681, 10345, 9568, 22790, 20433, 10896, 11544, 19006, 7436, 17652, 10867, 11300, 14826, 12256, 18901, 17356, 22603, 20761, 15085, 10008, 10169, 9754, 12484, 21462, 10322, 10221, 21330, 10370, 9100, 12219, 9615, 12862, 11684, 10562, 30345, 10522, 11059, 28976, 8969, 23416, 4984, 13203, 11497, 6010, 12975, 44056, 10758, 18000, 16477, 11233, 19186, 12322, 12033, 8707, 11488, 10317, 14374, 9960, 10525, 11512, 11073, 9890, 11719, 11539, 10378, 12021, 20131, 34812, 16470, 10299, 14957, 11583, 12118, 10190, 11986, 5592, 10248, 11855, 6832, 9332, 11067, 4082, 10369, 9916, 15017, 12934, 9081, 10595, 10432, 11759, 10559, 11043, 8917, 21134, 9891, 9176, 16130, 12942, 13627, 18725, 10904, 9808, 10271, 10536, 10638, 13854, 10695, 11433, 39161, 11455, 18960, 11107, 10703, 12723, 9257, 11431, 11105, 10333, 10313, 11585, 10344, 11084, 21966, 8377, 10323, 8185, 14299, 10609, 10551, 16646, 11337, 10546, 10707, 26303, 12953, 9294, 11267, 39151, 8228, 10602, 11245, 10260, 10439, 9924, 10518, 10226, 13153, 9727, 10631, 10293, 4908, 11351, 11699, 13297, 7873, 10887, 13199, 39299, 10164, 28920, 11162, 21162, 10873, 5283, 9938, 13808, 5140, 10517, 12483, 9389, 23219, 19894, 16043, 11175, 14779, 11053, 10940, 39710, 10974, 12795, 10458, 29754, 19573, 11346, 10526, 11079, 10434, 11672, 6137, 10845, 18903, 11224, 10704, 12516, 10495, 11055, 10604, 9788, 10452, 10533, 4945, 9983, 11643, 9712, 10519, 13844, 10913, 14131, 10514, 14742, 33770, 8857, 13931, 10485, 20982, 10189, 10240, 11140, 12490, 10792, 10299, 28767, 10669, 13604, 6395, 10977, 39186, 10903, 61691, 10745, 18824, 10159, 12396, 11054, 10595, 20240, 9738, 10219, 21439, 41329, 10739, 10896, 4868, 52815, 10708, 38900, 9872, 9994, 13546, 8304, 10149, 10501, 14794, 9865, 24487, 10105, 10997, 10480, 8867, 15620, 4849, 14141, 21448, 44760, 24356, 10123, 10512, 32705, 10711, 14130, 10830, 26961, 13539, 10216, 12642, 10823, 11040, 13619, 10147, 10247, 11415, 30393, 10969, 11854, 7609, 46668, 22548, 7873, 62534, 10747, 10471, 11411, 14595, 10810, 26857, 11315, 10359, 13682, 19665, 19345, 27815, 14945, 20679, 31038, 13784, 15296, 10509, 10744, 22472, 10520, 11555, 10757, 27673, 14992, 14989, 27100, 10319, 27530, 7593, 15409, 11668, 10774, 17530, 11036, 8222, 10799, 20249, 10742, 20896, 13897, 38765, 18303, 9745, 71755, 12680, 11783, 5892, 22802, 8486, 23485, 11273, 24528, 12647, 27395, 18613, 19047, 25991, 6369, 22035, 11269, 4850, 11819, 23594, 10413, 10210, 38584, 10776, 11590, 26886, 12407, 15941, 10203, 10543, 16827, 10406, 10801, 16961, 25091, 26117, 4995, 10669, 4570, 10934, 5509, 12342, 11069, 11221, 18032, 10606, 10294, 10794, 10149, 23535, 11605, 11509, 10267, 10945, 10808, 10208, 12462, 9539, 10996, 13746, 11135, 10701, 22650, 10277, 9871, 22744, 23044, 33427, 3378, 9747, 8703, 7656, 9463, 10656, 11297, 15888, 14886, 11302, 38639, 10594, 10537, 14643, 57349, 14269, 11499, 10223, 15088, 28919, 23684, 13888, 13690, 26912, 12774, 11234, 26520, 10459, 11919, 8800, 9204, 10845, 18581, 12632, 10618, 11108, 10805, 24695, 11472, 10718, 10299, 55165, 12039, 11745, 12596, 12705, 36938, 10675, 25627, 10441, 10320, 11116, 32508, 10810, 18654, 23086, 16685, 8342, 11231, 10819, 11306, 10918, 16246, 10979, 10863, 11223, 8547, 12869, 10174, 26564, 10143, 16311, 10658, 10181, 12059, 9562, 32135, 9438, 29761, 26396, 16018, 16535, 46584, 14336, 9155, 21595, 27259, 11287, 7579, 38688, 46567, 6178, 8256, 31900, 12278, 19151, 10862, 3608, 15766, 12738, 15914, 42111, 10020, 36021, 10692, 6690, 9883, 15079, 12033, 9900, 22825, 11361, 11951, 37286, 11418, 10924, 11337, 9619, 10213, 10856, 11048, 10842, 12414, 10325, 16869, 11143, 25523, 9572, 8037, 9731, 10596, 14328, 10393, 41055, 20795, 14812, 29254, 9532, 9682, 22098, 10576, 14922, 27530, 22068, 44823, 62466, 15851, 17035, 13790, 32455, 9763, 22771, 20480, 5260, 10708, 36714, 21263, 35770, 11534, 5466, 21040, 12474, 25403, 12246, 12780, 19804, 14025, 22915, 11714, 10546, 10914, 4907, 25442, 21807, 11633, 9574, 11884, 20814, 10725, 15213, 21476, 24079, 34650, 11473, 14708, 11460, 14527, 12063, 11321, 10635, 38457, 9976, 11387, 12442, 9942, 11507, 21903, 14923, 12090, 12044, 13137, 23724, 16638, 12050, 23906, 12763, 10095, 10450, 16574, 7953, 23314, 46235, 10924, 10452, 11349, 49136, 8569, 28080, 12395, 31054, 17199, 10749, 12401, 23741, 9983, 10240, 14952, 18745, 10093, 15763, 15947, 22766, 9734, 11323, 9103, 8183, 10813, 11526, 31744, 37984, 10665, 18484, 10234, 28322, 24927, 12733, 11218, 26552, 11835, 19255, 13685, 18189, 14281, 11213, 12967, 12791, 13413, 23402, 14537, 13631, 13160, 14190, 13652, 11060, 11685, 9787, 11534, 14020, 10163, 11664, 11130, 11526, 11963, 11541, 36500, 31777, 11087, 5208, 10415, 11008, 17780, 13966, 11527, 12402, 9959, 15587, 11744, 11524, 10972, 9728, 6301, 11682, 11987, 10687, 11419, 10401, 11515, 11320, 10253, 9305, 11693, 10882, 11733, 22243, 10735, 29551, 12129, 7360, 16884, 43866, 16754, 22618, 10169, 10098, 31603, 17397] + } + ] + }] +} \ No newline at end of file From edffa6e63235402bd129f45525e967f0b68dda46 Mon Sep 17 00:00:00 2001 From: Robert Monfera Date: Wed, 22 Feb 2017 14:08:11 +0100 Subject: [PATCH 5/7] parcoords: unit tests --- test/jasmine/tests/parcoords_test.js | 901 +++++++++++++++++++++++++++ 1 file changed, 901 insertions(+) create mode 100644 test/jasmine/tests/parcoords_test.js diff --git a/test/jasmine/tests/parcoords_test.js b/test/jasmine/tests/parcoords_test.js new file mode 100644 index 00000000000..08d81acd601 --- /dev/null +++ b/test/jasmine/tests/parcoords_test.js @@ -0,0 +1,901 @@ +var Plotly = require('@lib/index'); +var Lib = require('@src/lib'); +var d3 = require('d3'); +var Plots = require('@src/plots/plots'); +var Parcoords = require('@src/traces/parcoords'); +var attributes = require('@src/traces/parcoords/attributes'); + +var createGraphDiv = require('../assets/create_graph_div'); +var destroyGraphDiv = require('../assets/destroy_graph_div'); +var hasWebGLSupport = require('../assets/has_webgl_support'); +var mouseEvent = require('../assets/mouse_event'); + +// mock with two dimensions (one panel); special case, e.g. left and right panel is obv. the same +var mock2 = require('@mocks/gl2d_parcoords_2.json'); + +// mock with one dimension (zero panels); special case, as no panel can be rendered +var mock1 = require('@mocks/gl2d_parcoords_1.json'); + +// mock with zero dimensions; special case, as no dimension can be rendered +var mock0 = Lib.extendDeep({}, mock1); +mock0.data[0].dimensions = []; + +var mock = require('@mocks/gl2d_parcoords_large.json'); + +var lineStart = 30; +var lineCount = 10; + +describe('parcoords initialization tests', function() { + + 'use strict'; + + describe('parcoords defaults', function() { + + function _supply(traceIn) { + var traceOut = { visible: true }, + defaultColor = '#444', + layout = { }; + + Parcoords.supplyDefaults(traceIn, traceOut, defaultColor, layout); + + return traceOut; + } + + it('\'line\' specification should yield a default color', function() { + var fullTrace = _supply({}); + expect(fullTrace.line.color).toEqual('#444'); + }); + + it('\'colorscale\' should assume a default value if the \'color\' array is specified', function() { + var fullTrace = _supply({ + line: { + color: [35, 63, 21, 42] + }, + dimensions: [ + {values: [321, 534, 542, 674]}, + {values: [562, 124, 942, 189]}, + {values: [287, 183, 385, 884]}, + {values: [113, 489, 731, 454]} + ] + }); + expect(fullTrace.line).toEqual({ + color: [35, 63, 21, 42], + colorscale: attributes.line.colorscale.dflt, + cauto: true, + autocolorscale: false, + reversescale: false, + showscale: false + }); + }); + + it('\'domain\' specification should have a default', function() { + var fullTrace = _supply({}); + expect(fullTrace.domain).toEqual({x: [0, 1], y: [0, 1]}); + }); + + it('\'dimension\' specification should have a default of an empty array', function() { + var fullTrace = _supply({}); + expect(fullTrace.dimensions).toEqual([]); + }); + + it('\'dimension\' should be used with default values where attributes are not provided', function() { + var fullTrace = _supply({ + dimensions: [{ + values: [1], + alienProperty: 'Alpha Centauri' + }] + }); + expect(fullTrace.dimensions).toEqual([{values: [1], visible: true, tickformat: '3s', _index: 0}]); + }); + + it('\'dimension.visible\' should be set to false, and other props just passed through if \'values\' is not provided', function() { + var fullTrace = _supply({ + dimensions: [{ + alienProperty: 'Alpha Centauri' + }] + }); + expect(fullTrace.dimensions).toEqual([{visible: false, values: [], _index: 0}]); + }); + + it('\'dimension.visible\' should be set to false, and other props just passed through if \'values\' is an empty array', function() { + var fullTrace = _supply({ + dimensions: [{ + values: [], + alienProperty: 'Alpha Centauri' + }] + }); + expect(fullTrace.dimensions).toEqual([{visible: false, values: [], _index: 0}]); + }); + + it('\'dimension.visible\' should be set to false, and other props just passed through if \'values\' is not an array', function() { + var fullTrace = _supply({ + dimensions: [{ + values: null, + alienProperty: 'Alpha Centauri' + }] + }); + expect(fullTrace.dimensions).toEqual([{visible: false, values: [], _index: 0}]); + }); + + it('\'dimension.values\' should get truncated to a common shortest length', function() { + var fullTrace = _supply({dimensions: [ + {values: [321, 534, 542, 674]}, + {values: [562, 124, 942]}, + {values: [], visible: true}, + {values: [1, 2], visible: false} // shouldn't be truncated to as false + ]}); + expect(fullTrace.dimensions).toEqual([ + {values: [], visible: true, tickformat: '3s', _index: 0}, + {values: [], visible: true, tickformat: '3s', _index: 1}, + {values: [], visible: true, tickformat: '3s', _index: 2}, + {values: [1, 2], visible: false, _index: 3} + ]); + }); + }); + + describe('parcoords calc', function() { + + function _calc(trace) { + var gd = { data: [trace] }; + + Plots.supplyDefaults(gd); + + var fullTrace = gd._fullData[0]; + Parcoords.calc(gd, fullTrace); + return fullTrace; + } + + var base = { type: 'parcoords' }; + + it('\'colorscale\' should assume a default value if the \'color\' array is specified', function() { + + var fullTrace = _calc(Lib.extendDeep({}, base, { + line: { + color: [35, 63, 21, 42] + }, + dimensions: [ + {values: [321, 534, 542, 674]}, + {values: [562, 124, 942, 189]}, + {values: [287, 183, 385, 884]}, + {values: [113, 489, 731, 454]} + ] + })); + + expect(fullTrace.line).toEqual({ + color: [35, 63, 21, 42], + colorscale: attributes.line.colorscale.dflt, + cauto: true, + cmin: 21, + cmax: 63, + autocolorscale: false, + reversescale: false, + showscale: false + }); + }); + + it('use a singular \'color\' if it is not an array', function() { + + var fullTrace = _calc(Lib.extendDeep({}, base, { + line: { + color: '#444' + }, + dimensions: [ + {values: [321, 534, 542, 674]}, + {values: [562, 124, 942, 189]} + ] + })); + + expect(fullTrace.line).toEqual({ + color: [0.5, 0.5, 0.5, 0.5], + colorscale: [[0, '#444'], [1, '#444']], + cmin: 0, + cmax: 1 + }); + }); + + it('use a singular \'color\' even if a \'colorscale\' is supplied', function() { + + var fullTrace = _calc(Lib.extendDeep({}, base, { + line: { + color: '#444', + colorscale: 'Jet' + }, + dimensions: [ + {values: [321, 534, 542, 674]}, + {values: [562, 124, 942, 189]} + ] + })); + + expect(fullTrace.line).toEqual({ + color: [0.5, 0.5, 0.5, 0.5], + colorscale: [[0, '#444'], [1, '#444']], + autocolorscale: false, + showscale: false, + reversescale: false, + cauto: true, + cmin: 0, + cmax: 1 + }); + }); + }); +}); + +describe('parcoords', function() { + + if(!hasWebGLSupport('parcoords')) return; + + beforeAll(function() { + mock.data[0].dimensions.forEach(function(d) { + d.values = d.values.slice(lineStart, lineStart + lineCount); + }); + mock.data[0].line.color = mock.data[0].line.color.slice(lineStart, lineStart + lineCount); + }); + + afterEach(destroyGraphDiv); + + describe('edge cases', function() { + + it('Works fine with one panel only', function(done) { + + var mockCopy = Lib.extendDeep({}, mock2); + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(2); + expect(document.querySelectorAll('.axis').length).toEqual(2); + expect(gd.data[0].dimensions[0].visible).not.toBeDefined(); + expect(gd.data[0].dimensions[0].range).not.toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([200, 700]); + expect(gd.data[0].dimensions[1].range).toBeDefined(); + expect(gd.data[0].dimensions[1].range).toEqual([0, 700000]); + expect(gd.data[0].dimensions[1].constraintrange).not.toBeDefined(); + + done(); + }); + }); + + it('Do something sensible if there is no panel i.e. dimension count is less than 2', function(done) { + + var mockCopy = Lib.extendDeep({}, mock1); + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(1); + expect(document.querySelectorAll('.axis').length).toEqual(1); // sole axis still shows up + expect(gd.data[0].line.cmin).toEqual(-4000); + expect(gd.data[0].dimensions[0].visible).not.toBeDefined(); + expect(gd.data[0].dimensions[0].range).not.toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([200, 700]); + + done(); + }); + }); + + it('Does not error with zero dimensions', function(done) { + + var mockCopy = Lib.extendDeep({}, mock0); + var gd = createGraphDiv(); + + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(0); + expect(document.querySelectorAll('.axis').length).toEqual(0); + done(); + }); + }); + + it('Works with a single line; also, use a longer color array than the number of lines', function(done) { + + var mockCopy = Lib.extendDeep({}, mock2); + var dim, i, j; + + mockCopy.layout.width = 320; + for(i = 0; i < mockCopy.data[0].dimensions.length; i++) { + dim = mockCopy.data[0].dimensions[i]; + delete dim.constraintrange; + dim.range = [1, 2]; + dim.values = []; + for(j = 0; j < 1; j++) { + dim.values[j] = 1 + Math.random(); + } + } + + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(2); + expect(document.querySelectorAll('.axis').length).toEqual(2); + expect(gd.data[0].dimensions[0].values.length).toEqual(1); + done(); + }); + }); + + it('Does not raise an error with zero lines and no specified range', function(done) { + + var mockCopy = Lib.extendDeep({}, mock2); + var dim, i; + + mockCopy.layout.width = 320; + for(i = 0; i < mockCopy.data[0].dimensions.length; i++) { + dim = mockCopy.data[0].dimensions[i]; + delete dim.range; + delete dim.constraintrange; + dim.values = []; + } + + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(2); + expect(document.querySelectorAll('.axis').length).toEqual(0); + expect(gd.data[0].dimensions[0].values.length).toEqual(0); + done(); + }); + }); + + it('Works with non-finite `values` elements', function(done) { + + var mockCopy = Lib.extendDeep({}, mock2); + var dim, i, j; + var values = [[0, 1, 2, 3, 4], [Infinity, NaN, void(0), null, 1]]; + + mockCopy.layout.width = 320; + for(i = 0; i < values.length; i++) { + dim = mockCopy.data[0].dimensions[i]; + delete dim.range; + delete dim.constraintrange; + dim.values = []; + for(j = 0; j < values[0].length; j++) { + dim.values[j] = values[i][j]; + } + } + + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(2); + expect(document.querySelectorAll('.axis').length).toEqual(2); + expect(gd.data[0].dimensions[0].values.length).toEqual(values[0].length); + done(); + }); + }); + + it('Works with 60 dimensions', function(done) { + + var mockCopy = Lib.extendDeep({}, mock1); + var newDimension, i, j; + + mockCopy.layout.width = 1680; + mockCopy.data[0].dimensions = []; + for(i = 0; i < 60; i++) { + newDimension = Lib.extendDeep({}, mock1.data[0].dimensions[0]); + newDimension.id = 'S' + i; + newDimension.label = 'S' + i; + delete newDimension.constraintrange; + newDimension.range = [1, 2]; + newDimension.values = []; + for(j = 0; j < 100; j++) { + newDimension.values[j] = 1 + Math.random(); + } + mockCopy.data[0].dimensions[i] = newDimension; + } + + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(60); + expect(document.querySelectorAll('.axis').length).toEqual(60); + done(); + }); + }); + + it('Truncates 60+ dimensions to 60', function(done) { + + var mockCopy = Lib.extendDeep({}, mock1); + var newDimension, i, j; + + mockCopy.layout.width = 1680; + for(i = 0; i < 70; i++) { + newDimension = Lib.extendDeep({}, mock1.data[0].dimensions[0]); + newDimension.id = 'S' + i; + newDimension.label = 'S' + i; + delete newDimension.constraintrange; + newDimension.range = [0, 999]; + for(j = 0; j < 10; j++) { + newDimension.values[j] = Math.floor(1000 * Math.random()); + } + mockCopy.data[0].dimensions[i] = newDimension; + } + + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(60); + expect(document.querySelectorAll('.axis').length).toEqual(60); + done(); + }); + }); + + it('Truncates dimension values to the shortest array, retaining only 3 lines', function(done) { + + var mockCopy = Lib.extendDeep({}, mock1); + var newDimension, i, j; + + mockCopy.layout.width = 1680; + for(i = 0; i < 60; i++) { + newDimension = Lib.extendDeep({}, mock1.data[0].dimensions[0]); + newDimension.id = 'S' + i; + newDimension.label = 'S' + i; + delete newDimension.constraintrange; + newDimension.range = [0, 999]; + newDimension.values = []; + for(j = 0; j < 65 - i; j++) { + newDimension.values[j] = Math.floor(1000 * Math.random()); + } + mockCopy.data[0].dimensions[i] = newDimension; + } + + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(60); + expect(document.querySelectorAll('.axis').length).toEqual(60); + done(); + }); + }); + + it('Skip dimensions which are not plain objects or whose `values` is not an array', function(done) { + + var mockCopy = Lib.extendDeep({}, mock1); + var newDimension, i, j; + + mockCopy.layout.width = 680; + mockCopy.data[0].dimensions = []; + for(i = 0; i < 5; i++) { + newDimension = Lib.extendDeep({}, mock1.data[0].dimensions[0]); + newDimension.id = 'S' + i; + newDimension.label = 'S' + i; + delete newDimension.constraintrange; + newDimension.range = [1, 2]; + newDimension.values = []; + for(j = 0; j < 100; j++) { + newDimension.values[j] = 1 + Math.random(); + } + mockCopy.data[0].dimensions[i] = newDimension; + } + + mockCopy.data[0].dimensions[0] = 'This is not a plain object'; + mockCopy.data[0].dimensions[1].values = 'This is not an array'; + + var gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(5); // it's still five, but ... + expect(document.querySelectorAll('.axis').length).toEqual(3); // only 3 axes shown + done(); + }); + }); + + + }); + + describe('basic use', function() { + var mockCopy, + gd; + + beforeEach(function(done) { + mockCopy = Lib.extendDeep({}, mock); + mockCopy.data[0].domain = { + x: [0.1, 0.9], + y: [0.05, 0.85] + }; + gd = createGraphDiv(); + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(done); + }); + + it('`Plotly.plot` should have proper fields on `gd.data` on initial rendering', function() { + + expect(gd.data.length).toEqual(1); + expect(gd.data[0].dimensions.length).toEqual(11); + expect(document.querySelectorAll('.axis').length).toEqual(10); // one dimension is `visible: false` + expect(gd.data[0].line.cmin).toEqual(-4000); + expect(gd.data[0].dimensions[0].visible).not.toBeDefined(); + expect(gd.data[0].dimensions[4].visible).toEqual(true); + expect(gd.data[0].dimensions[5].visible).toEqual(false); + expect(gd.data[0].dimensions[0].range).not.toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([100000, 150000]); + expect(gd.data[0].dimensions[1].range).toBeDefined(); + expect(gd.data[0].dimensions[1].range).toEqual([0, 700000]); + expect(gd.data[0].dimensions[1].constraintrange).not.toBeDefined(); + + }); + + it('Calling `Plotly.plot` again should add the new parcoords', function(done) { + + var reversedMockCopy = Lib.extendDeep({}, mockCopy); + reversedMockCopy.data[0].dimensions = reversedMockCopy.data[0].dimensions.slice().reverse(); + reversedMockCopy.data[0].dimensions.forEach(function(d) {d.id = 'R_' + d.id;}); + reversedMockCopy.data[0].dimensions.forEach(function(d) {d.label = 'R_' + d.label;}); + + Plotly.plot(gd, reversedMockCopy.data, reversedMockCopy.layout).then(function() { + + expect(gd.data.length).toEqual(2); + + expect(gd.data[0].dimensions.length).toEqual(11); + expect(gd.data[0].line.cmin).toEqual(-4000); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([100000, 150000]); + expect(gd.data[0].dimensions[1].constraintrange).not.toBeDefined(); + + expect(gd.data[1].dimensions.length).toEqual(11); + expect(gd.data[1].line.cmin).toEqual(-4000); + expect(gd.data[1].dimensions[10].constraintrange).toBeDefined(); + expect(gd.data[1].dimensions[10].constraintrange).toEqual([100000, 150000]); + expect(gd.data[1].dimensions[1].constraintrange).not.toBeDefined(); + + expect(document.querySelectorAll('.axis').length).toEqual(20); // one dimension is `visible: false` + + done(); + }); + + }); + + it('Calling `Plotly.restyle` with a string path should amend the preexisting parcoords', function(done) { + + expect(gd.data.length).toEqual(1); + + Plotly.restyle(gd, 'line.colorscale', 'Viridis').then(function() { + + expect(gd.data.length).toEqual(1); + + expect(gd.data[0].line.colorscale).toEqual('Viridis'); + expect(gd.data[0].dimensions.length).toEqual(11); + expect(gd.data[0].line.cmin).toEqual(-4000); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([100000, 150000]); + expect(gd.data[0].dimensions[1].constraintrange).not.toBeDefined(); + + done(); + }); + + }); + + it('Calling `Plotly.restyle` for a dimension should amend the preexisting dimension', function(done) { + + function restyleDimension(key, setterValue) { + + // array values need to be wrapped in an array; unwrapping here for value comparison + var value = Lib.isArray(setterValue) ? setterValue[0] : setterValue; + + return function() { + return Plotly.restyle(gd, 'dimensions[2].' + key, setterValue).then(function() { + expect(gd.data[0].dimensions[2][key]).toEqual(value, 'for dimension attribute \'' + key + '\''); + }); + }; + } + + restyleDimension('label', 'new label')() + .then(restyleDimension('tickvals', [[0, 0.1, 0.4, 1, 2]])) + .then(restyleDimension('ticktext', [['alpha', 'gamma', 'beta', 'omega', 'epsilon']])) + .then(restyleDimension('tickformat', '4s')) + .then(restyleDimension('range', [[0, 2]])) + .then(restyleDimension('constraintrange', [[0, 1]])) + .then(restyleDimension('values', [[0, 0.1, 0.4, 1, 2, 0, 0.1, 0.4, 1, 2]])) + .then(restyleDimension('visible', false)) + .then(done); + }); + + it('Calling `Plotly.restyle` with an object should amend the preexisting parcoords', function(done) { + + var newStyle = Lib.extendDeep({}, mockCopy.data[0].line); + newStyle.colorscale = 'Viridis'; + newStyle.reversescale = false; + + Plotly.restyle(gd, {line: newStyle}).then(function() { + + expect(gd.data.length).toEqual(1); + + expect(gd.data[0].line.colorscale).toEqual('Viridis'); + expect(gd.data[0].line.reversescale).toEqual(false); + expect(gd.data[0].dimensions.length).toEqual(11); + expect(gd.data[0].line.cmin).toEqual(-4000); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([100000, 150000]); + expect(gd.data[0].dimensions[1].constraintrange).not.toBeDefined(); + + done(); + }); + + + }); + + it('Should emit a \'plotly_restyle\' event', function(done) { + + var tester = (function() { + + var eventCalled = false; + + return { + set: function(d) {eventCalled = d;}, + get: function() {return eventCalled;} + }; + })(); + + gd.on('plotly_restyle', function() { + tester.set(true); + }); + + expect(tester.get()).toBe(false); + Plotly.restyle(gd, 'line.colorscale', 'Viridis') + .then(window.setTimeout(function() { + expect(tester.get()).toBe(true); + done(); + }, 0)); + + }); + + it('Should emit a \'plotly_hover\' event', function(done) { + + var tester = (function() { + + var eventCalled = false; + + return { + set: function(d) {eventCalled = d;}, + get: function() {return eventCalled;} + }; + })(); + + gd.on('plotly_hover', function(d) { + tester.set({hover: d}); + }); + + gd.on('plotly_unhover', function(d) { + tester.set({unhover: d}); + }); + + expect(tester.get()).toBe(false); + + mouseEvent('mousemove', 324, 216); + mouseEvent('mouseover', 324, 216); + + window.setTimeout(function() { + + expect(tester.get().hover && tester.get().hover.curveNumber).not.toBe(null); + expect(tester.get().hover && tester.get().hover.curveNumber).not.toBe(undefined); + + mouseEvent('mousemove', 329, 153); + mouseEvent('mouseover', 329, 153); + + window.setTimeout(function() { + + expect(tester.get().unhover && tester.get().unhover.curveNumber).toBe(null); + done(); + }, 20); + + }, 20); + + }); + + it('Calling `Plotly.relayout` with string should amend the preexisting parcoords', function(done) { + + expect(gd.layout.width).toEqual(1184); + + Plotly.relayout(gd, 'width', 500).then(function() { + + expect(gd.data.length).toEqual(1); + + expect(gd.layout.width).toEqual(500); + expect(gd.data[0].line.colorscale).toEqual('Jet'); + expect(gd.data[0].dimensions.length).toEqual(11); + expect(gd.data[0].line.cmin).toEqual(-4000); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([100000, 150000]); + expect(gd.data[0].dimensions[1].constraintrange).not.toBeDefined(); + + done(); + }); + + }); + + it('Calling `Plotly.relayout`with object should amend the preexisting parcoords', function(done) { + + expect(gd.layout.width).toEqual(1184); + + Plotly.relayout(gd, {width: 500}).then(function() { + + expect(gd.data.length).toEqual(1); + + expect(gd.layout.width).toEqual(500); + expect(gd.data[0].line.colorscale).toEqual('Jet'); + expect(gd.data[0].dimensions.length).toEqual(11); + expect(gd.data[0].line.cmin).toEqual(-4000); + expect(gd.data[0].dimensions[0].constraintrange).toBeDefined(); + expect(gd.data[0].dimensions[0].constraintrange).toEqual([100000, 150000]); + expect(gd.data[0].dimensions[1].constraintrange).not.toBeDefined(); + + done(); + }); + + }); + + }); + + describe('Lifecycle methods', function() { + + it('Plotly.deleteTraces with one trace removes the plot', function(done) { + + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep({}, mock); + + mockCopy.data[0].line.showscale = false; + + Plotly.plot(gd, mockCopy).then(function() { + + expect(gd.data.length).toEqual(1); + + Plotly.deleteTraces(gd, 0).then(function() { + expect(d3.selectAll('.parcoords-line-layers').node()).toEqual(null); + expect(gd.data.length).toEqual(0); + done(); + }); + }); + }); + + it('Plotly.deleteTraces with two traces removes the deleted plot', function(done) { + + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep({}, mock); + var mockCopy2 = Lib.extendDeep({}, mock); + mockCopy2.data[0].dimensions.splice(3, 4); + mockCopy.data[0].line.showscale = false; + + Plotly.plot(gd, mockCopy) + .then(function() { + expect(gd.data.length).toEqual(1); + expect(document.querySelectorAll('.yAxis').length).toEqual(10); + return Plotly.plot(gd, mockCopy2); + }) + .then(function() { + expect(gd.data.length).toEqual(2); + expect(document.querySelectorAll('.yAxis').length).toEqual(10 + 7); + return Plotly.deleteTraces(gd, [0]); + }) + .then(function() { + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(1); + expect(document.querySelectorAll('.yAxis').length).toEqual(7); + expect(gd.data.length).toEqual(1); + return Plotly.deleteTraces(gd, 0); + }) + .then(function() { + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(0); + expect(document.querySelectorAll('.yAxis').length).toEqual(0); + expect(gd.data.length).toEqual(0); + done(); + }); + }); + + describe('Having two datasets', function() { + + it('Two subsequent calls to Plotly.plot should create two parcoords rows', function(done) { + + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep({}, mock); + var mockCopy2 = Lib.extendDeep({}, mock); + mockCopy.data[0].domain = {x: [0, 0.45]}; + mockCopy2.data[0].domain = {x: [0.55, 1]}; + mockCopy2.data[0].dimensions.splice(3, 4); + + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(0); + + Plotly.plot(gd, mockCopy) + .then(function() { + + expect(1).toEqual(1); + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(1); + expect(gd.data.length).toEqual(1); + + return Plotly.plot(gd, mockCopy2); + }) + .then(function() { + + expect(1).toEqual(1); + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(2); + expect(gd.data.length).toEqual(2); + + done(); + }); + }); + + it('Plotly.addTraces should add a new parcoords row', function(done) { + + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep({}, mock); + var mockCopy2 = Lib.extendDeep({}, mock); + mockCopy.data[0].domain = {y: [0, 0.35]}; + mockCopy2.data[0].domain = {y: [0.65, 1]}; + mockCopy2.data[0].dimensions.splice(3, 4); + + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(0); + + Plotly.plot(gd, mockCopy) + .then(function() { + + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(1); + expect(gd.data.length).toEqual(1); + + return Plotly.addTraces(gd, [mockCopy2.data[0]]); + }) + .then(function() { + + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(2); + expect(gd.data.length).toEqual(2); + + done(); + }); + + }); + + it('Plotly.restyle should update the existing parcoords row', function(done) { + + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep({}, mock); + var mockCopy2 = Lib.extendDeep({}, mock); + + delete mockCopy.data[0].dimensions[0].constraintrange; + delete mockCopy2.data[0].dimensions[0].constraintrange; + + // in this example, the brush range doesn't change... + mockCopy.data[0].dimensions[2].constraintrange = [0, 2]; + mockCopy2.data[0].dimensions[2].constraintrange = [0, 2]; + + // .. but what's inside the brush does: + function numberUpdater(v) { + switch(v) { + case 0.5: return 2.5; + default: return v; + } + } + + // shuffle around categorical values + mockCopy2.data[0].dimensions[2].ticktext = ['A', 'B', 'Y', 'AB', 'Z']; + mockCopy2.data[0].dimensions[2].tickvals = [0, 1, 2, 2.5, 3]; + mockCopy2.data[0].dimensions[2].values = mockCopy2.data[0].dimensions[2].values.map(numberUpdater); + + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(0); + + Plotly.plot(gd, mockCopy) + .then(function() { + + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(1); + expect(gd.data.length).toEqual(1); + + return Plotly.restyle(gd, { + // wrap the `dimensions` array + dimensions: [mockCopy2.data[0].dimensions] + }); + }) + .then(function() { + + expect(document.querySelectorAll('.parcoords-line-layers').length).toEqual(1); + expect(gd.data.length).toEqual(1); + + done(); + }); + + }); + }); + }); +}); From 7005671d8c7b134d476699b946d2ba47098d66be Mon Sep 17 00:00:00 2001 From: Robert Monfera Date: Wed, 22 Feb 2017 14:08:28 +0100 Subject: [PATCH 6/7] parcoords: inclusion in builds --- lib/index-gl2d.js | 3 ++- lib/index.js | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/index-gl2d.js b/lib/index-gl2d.js index a7738a91744..9c24ec21267 100644 --- a/lib/index-gl2d.js +++ b/lib/index-gl2d.js @@ -14,7 +14,8 @@ Plotly.register([ require('./scattergl'), require('./pointcloud'), require('./heatmapgl'), - require('./contourgl') + require('./contourgl'), + require('./parcoords') ]); module.exports = Plotly; diff --git a/lib/index.js b/lib/index.js index 1cbbb8bba08..150bece3355 100644 --- a/lib/index.js +++ b/lib/index.js @@ -32,6 +32,7 @@ Plotly.register([ require('./scattergl'), require('./pointcloud'), require('./heatmapgl'), + require('./parcoords'), require('./scattermapbox'), From 0d650128347ce4866d2265981004dc088cd1e44c Mon Sep 17 00:00:00 2001 From: Robert Monfera Date: Thu, 23 Feb 2017 21:59:48 +0100 Subject: [PATCH 7/7] test case update for cross-OS hover check --- test/jasmine/tests/parcoords_test.js | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/test/jasmine/tests/parcoords_test.js b/test/jasmine/tests/parcoords_test.js index 08d81acd601..724ff72d501 100644 --- a/test/jasmine/tests/parcoords_test.js +++ b/test/jasmine/tests/parcoords_test.js @@ -648,40 +648,45 @@ describe('parcoords', function() { it('Should emit a \'plotly_hover\' event', function(done) { - var tester = (function() { + function testMaker() { var eventCalled = false; return { - set: function(d) {eventCalled = d;}, + set: function() {eventCalled = eventCalled || true;}, get: function() {return eventCalled;} }; - })(); + } + + var hoverTester = testMaker(); + var unhoverTester = testMaker(); gd.on('plotly_hover', function(d) { - tester.set({hover: d}); + hoverTester.set({hover: d}); }); gd.on('plotly_unhover', function(d) { - tester.set({unhover: d}); + unhoverTester.set({unhover: d}); }); - expect(tester.get()).toBe(false); + expect(hoverTester.get()).toBe(false); + expect(unhoverTester.get()).toBe(false); mouseEvent('mousemove', 324, 216); mouseEvent('mouseover', 324, 216); + mouseEvent('mousemove', 315, 218); + mouseEvent('mouseover', 315, 218); window.setTimeout(function() { - expect(tester.get().hover && tester.get().hover.curveNumber).not.toBe(null); - expect(tester.get().hover && tester.get().hover.curveNumber).not.toBe(undefined); + expect(hoverTester.get()).toBe(true); mouseEvent('mousemove', 329, 153); mouseEvent('mouseover', 329, 153); window.setTimeout(function() { - expect(tester.get().unhover && tester.get().unhover.curveNumber).toBe(null); + expect(unhoverTester.get()).toBe(true); done(); }, 20);