From 8deaed177f70cee2b8f9645e3cb003041da2b16d Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Mon, 22 Jul 2019 19:02:31 -0400 Subject: [PATCH 01/37] texttemplate: initial implementation Add `textemplate` support to the following traces: - [x] pie - [x] sunburst - [x] funnelarea - [x] bar - [x] waterfall - [x] funnel - [x] scatter --- src/components/drawing/index.js | 7 +- src/components/fx/texttemplate_attributes.js | 53 +++++ src/lib/index.js | 39 +++- src/traces/bar/attributes.js | 4 + src/traces/bar/defaults.js | 1 + src/traces/bar/plot.js | 71 ++++++- src/traces/funnel/attributes.js | 4 + src/traces/funnel/defaults.js | 3 +- src/traces/funnelarea/attributes.js | 5 + src/traces/funnelarea/defaults.js | 7 +- src/traces/funnelarea/plot.js | 1 + src/traces/pie/attributes.js | 4 + src/traces/pie/calc.js | 28 --- src/traces/pie/defaults.js | 7 +- src/traces/pie/plot.js | 56 ++++++ src/traces/scatter/arrays_to_calcdata.js | 1 + src/traces/scatter/attributes.js | 5 + src/traces/scatter/defaults.js | 1 + src/traces/sunburst/attributes.js | 4 + src/traces/sunburst/defaults.js | 3 +- src/traces/sunburst/plot.js | 44 +++-- src/traces/waterfall/attributes.js | 5 +- src/traces/waterfall/defaults.js | 3 +- test/image/baselines/texttemplate.png | Bin 0 -> 76209 bytes test/image/mocks/texttemplate.json | 196 +++++++++++++++++++ test/jasmine/assets/check_texttemplate.js | 28 +++ test/jasmine/tests/bar_test.js | 12 ++ test/jasmine/tests/funnel_test.js | 12 ++ test/jasmine/tests/funnelarea_test.js | 13 ++ test/jasmine/tests/lib_test.js | 18 ++ test/jasmine/tests/pie_test.js | 14 ++ test/jasmine/tests/scatter_test.js | 11 ++ test/jasmine/tests/sunburst_test.js | 15 ++ test/jasmine/tests/waterfall_test.js | 13 ++ 34 files changed, 624 insertions(+), 64 deletions(-) create mode 100644 src/components/fx/texttemplate_attributes.js create mode 100644 test/image/baselines/texttemplate.png create mode 100644 test/image/mocks/texttemplate.json create mode 100644 test/jasmine/assets/check_texttemplate.js diff --git a/src/components/drawing/index.js b/src/components/drawing/index.js index 32744bcbaea..43b4173d741 100644 --- a/src/components/drawing/index.js +++ b/src/components/drawing/index.js @@ -689,15 +689,20 @@ drawing.textPointStyle = function(s, trace, gd) { selectedTextColorFn = fns.selectedTextColorFn; } + var template = trace.texttemplate; s.each(function(d) { var p = d3.select(this); - var text = Lib.extractOption(d, trace, 'tx', 'text'); + var text = Lib.extractOption(d, trace, template ? 'txt' : 'tx', template ? 'texttemplate' : 'text'); if(!text && text !== 0) { p.remove(); return; } + if(template) { + text = Lib.texttemplateString(text, {}, gd._fullLayout._d3locale, d, trace._meta || {}); + } + var pos = d.tp || trace.textposition; var fontSize = extracTextFontSize(d, trace); var fontColor = selectedTextColorFn ? diff --git a/src/components/fx/texttemplate_attributes.js b/src/components/fx/texttemplate_attributes.js new file mode 100644 index 00000000000..56b8b1fe7cb --- /dev/null +++ b/src/components/fx/texttemplate_attributes.js @@ -0,0 +1,53 @@ +/** +* Copyright 2012-2019, 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 FORMAT_LINK = require('../../constants/docs').FORMAT_LINK; + +module.exports = function(opts, extra) { + opts = opts || {}; + extra = extra || {}; + + var descPart = extra.description ? ' ' + extra.description : ''; + var keys = extra.keys || []; + if(keys.length > 0) { + var quotedKeys = []; + for(var i = 0; i < keys.length; i++) { + quotedKeys[i] = '`' + keys[i] + '`'; + } + descPart = descPart + 'Finally, the template string has access to '; + if(keys.length === 1) { + descPart = 'variable ' + quotedKeys[0]; + } else { + descPart = 'variables ' + quotedKeys.slice(0, -1).join(', ') + ' and ' + quotedKeys.slice(-1) + '.'; + } + } + + var texttemplate = { + valType: 'string', + role: 'info', + dflt: '', + editType: opts.editType || 'calc', + description: [ + 'Template string used for rendering the information that appear on points.', + 'Note that this will override `textinfo`.', + 'Variables are inserted using %{variable}, for example "y: %{y}".', + 'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".', + FORMAT_LINK, + 'for details on the formatting syntax.', + 'Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.', + descPart + ].join(' ') + }; + + if(opts.arrayOk !== false) { + texttemplate.arrayOk = true; + } + return texttemplate; +}; diff --git a/src/lib/index.js b/src/lib/index.js index da1e75093ba..c4aea7b4bbc 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -993,9 +993,25 @@ lib.templateString = function(string, obj) { }); }; +var hovertemplateWarnings = { + max: 10, + count: 0, + name: 'hovertemplate' +}; +lib.hovertemplateString = function() { + return lib.templateFormatString.apply(hovertemplateWarnings, arguments); +}; + +var texttemplateWarnings = { + max: 10, + count: 0, + name: 'texttemplate' +}; +lib.texttemplateString = function() { + return lib.templateFormatString.apply(texttemplateWarnings, arguments); +}; + var TEMPLATE_STRING_FORMAT_SEPARATOR = /^:/; -var numberOfHoverTemplateWarnings = 0; -var maximumNumberOfHoverTemplateWarnings = 10; /** * Substitute values from an object into a string and optionally formats them using d3-format, * or fallback to associated labels. @@ -1005,14 +1021,15 @@ var maximumNumberOfHoverTemplateWarnings = 10; * Lib.hovertemplateString('name: %{trace[0].name}', {trace: [{name: 'asdf'}]}) --> 'name: asdf' * Lib.hovertemplateString('price: %{y:$.2f}', {y: 1}) --> 'price: $1.00' * - * @param {obj} d3 locale * @param {string} input string containing %{...:...} template strings * @param {obj} data object containing fallback text when no formatting is specified, ex.: {yLabel: 'formattedYValue'} + * @param {obj} d3 locale * @param {obj} data objects containing substitution values * * @return {string} templated string */ -lib.hovertemplateString = function(string, labels, d3locale) { +lib.templateFormatString = function(string, labels, d3locale) { + var opts = this; var args = arguments; // Not all that useful, but cache nestedProperty instantiation // just in case it speeds things up *slightly*: @@ -1034,16 +1051,18 @@ lib.hovertemplateString = function(string, labels, d3locale) { if(value !== undefined) break; } - if(value === undefined) { - if(numberOfHoverTemplateWarnings < maximumNumberOfHoverTemplateWarnings) { - lib.warn('Variable \'' + key + '\' in hovertemplate could not be found!'); + if(value === undefined && opts) { + if(opts.count < opts.max) { + lib.warn('Variable \'' + key + '\' in ' + opts.name + ' could not be found!'); value = match; } - if(numberOfHoverTemplateWarnings === maximumNumberOfHoverTemplateWarnings) { - lib.warn('Too many hovertemplate warnings - additional warnings will be suppressed'); + if(opts.count === opts.max) { + lib.warn('Too many ' + opts.name + ' warnings - additional warnings will be suppressed'); } - numberOfHoverTemplateWarnings++; + opts.count++; + + return match; } if(format) { diff --git a/src/traces/bar/attributes.js b/src/traces/bar/attributes.js index 5c391df606f..d2130fd7012 100644 --- a/src/traces/bar/attributes.js +++ b/src/traces/bar/attributes.js @@ -10,6 +10,7 @@ var scatterAttrs = require('../scatter/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); var fontAttrs = require('../../plots/font_attributes'); var constants = require('./constants.js'); @@ -59,6 +60,9 @@ module.exports = { dy: scatterAttrs.dy, text: scatterAttrs.text, + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: constants.eventDataKeys + }), hovertext: scatterAttrs.hovertext, hovertemplate: hovertemplateAttrs({}, { keys: constants.eventDataKeys diff --git a/src/traces/bar/defaults.js b/src/traces/bar/defaults.js index e6df70f4562..b362600fdc7 100644 --- a/src/traces/bar/defaults.js +++ b/src/traces/bar/defaults.js @@ -36,6 +36,7 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { coerce('width'); coerce('text'); + coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); diff --git a/src/traces/bar/plot.js b/src/traces/bar/plot.js index a52fdd7ae43..dba0d0a1091 100644 --- a/src/traces/bar/plot.js +++ b/src/traces/bar/plot.js @@ -226,7 +226,7 @@ function appendBarText(gd, plotinfo, bar, calcTrace, i, x0, x1, y0, y1, opts) { var trace = calcTrace[0].trace; var isHorizontal = (trace.orientation === 'h'); - var text = getText(calcTrace, i, xa, ya); + var text = getText(fullLayout, calcTrace, i, xa, ya); textPosition = getTextPosition(trace, i); // compute text position @@ -516,14 +516,17 @@ function getTransform(textX, textY, targetX, targetY, scale, rotation) { return transformTranslate + transformScale + transformRotate; } -function getText(calcTrace, index, xa, ya) { +function getText(fullLayout, calcTrace, index, xa, ya) { var trace = calcTrace[0].trace; + var texttemplate = trace.texttemplate; var value; - if(!trace.textinfo) { - value = helpers.getValue(trace.text, index); - } else { + if(texttemplate) { + value = calcTexttemplate(fullLayout, calcTrace, index, xa, ya); + } else if(trace.textinfo) { value = calcTextinfo(calcTrace, index, xa, ya); + } else { + value = helpers.getValue(trace.text, index); } return helpers.coerceString(attributeText, value); @@ -534,6 +537,64 @@ function getTextPosition(trace, index) { return helpers.coerceEnumerated(attributeTextPosition, value); } +function calcTexttemplate(fullLayout, calcTrace, index, xa, ya) { + var trace = calcTrace[0].trace; + var texttemplate = Lib.castOption(trace, index, 'texttemplate'); + if(!texttemplate) return ''; + var isHorizontal = (trace.orientation === 'h'); + var isWaterfall = (trace.type === 'waterfall'); + var isFunnel = (trace.type === 'funnel'); + + function formatLabel(u) { + var pAxis = isHorizontal ? ya : xa; + return tickText(pAxis, u, true).text; + } + + function formatNumber(v) { + var sAxis = isHorizontal ? xa : ya; + return tickText(sAxis, +v, true).text; + } + + var cdi = calcTrace[index]; + var obj = {}; + + obj.label = cdi.p; + obj.labelLabel = formatLabel(cdi.p); + + var tx = Lib.castOption(trace, cdi.i, 'text'); + if(tx === 0 || tx) obj.text = tx; + + obj.value = cdi.s; + obj.valueLabel = formatNumber(cdi.s); + + obj.x = cdi.x; + obj.y = cdi.y; + + if(isWaterfall) { + obj.delta = +cdi.rawS || cdi.s; + obj.deltaLabel = formatNumber(obj.delta); + obj.final = cdi.v; + obj.finalLabel = formatNumber(obj.final); + obj.initial = obj.final - obj.delta; + obj.initialLabel = formatNumber(obj.initial); + } + + if(isFunnel) { + obj.value = cdi.s; + obj.valueLabel = formatNumber(obj.value); + + obj.percentInitial = cdi.begR; + obj.percentInitialLabel = Lib.formatPercent(cdi.begR); + obj.percentPrevious = cdi.difR; + obj.percentPreviousLabel = Lib.formatPercent(cdi.difR); + obj.percentTotal = cdi.sumR; + obj.percenTotalLabel = Lib.formatPercent(cdi.sumR); + } + + return Lib.texttemplateString(texttemplate, obj, fullLayout._d3locale, obj, trace._meta || {}); +} + +// TODO: calcTextinfo should build a texttemplate pass it to calcTexttemplate() function calcTextinfo(calcTrace, index, xa, ya) { var trace = calcTrace[0].trace; var isHorizontal = (trace.orientation === 'h'); diff --git a/src/traces/funnel/attributes.js b/src/traces/funnel/attributes.js index 5e5f5f2ed27..e5db501bddb 100644 --- a/src/traces/funnel/attributes.js +++ b/src/traces/funnel/attributes.js @@ -12,6 +12,7 @@ var barAttrs = require('../bar/attributes'); var lineAttrs = require('../scatter/attributes').line; var plotAttrs = require('../../plots/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); var constants = require('./constants'); var extendFlat = require('../../lib/extend').extendFlat; var Color = require('../../components/color'); @@ -46,6 +47,9 @@ module.exports = { 'are computed separately (per trace).' ].join(' ') }, + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: constants.eventDataKeys + }), text: barAttrs.text, textposition: extendFlat({}, barAttrs.textposition, {dflt: 'auto'}), diff --git a/src/traces/funnel/defaults.js b/src/traces/funnel/defaults.js index f4ae0a1fd71..b4a893a2034 100644 --- a/src/traces/funnel/defaults.js +++ b/src/traces/funnel/defaults.js @@ -32,6 +32,7 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { coerce('width'); var text = coerce('text'); + coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); @@ -46,7 +47,7 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { moduleHasInsideanchor: true }); - if(traceOut.textposition !== 'none') { + if(traceOut.textposition !== 'none' && !traceOut.texttemplate) { coerce('textinfo', Array.isArray(text) ? 'text+value' : 'value'); } diff --git a/src/traces/funnelarea/attributes.js b/src/traces/funnelarea/attributes.js index 7c995d007fb..c141ff97f61 100644 --- a/src/traces/funnelarea/attributes.js +++ b/src/traces/funnelarea/attributes.js @@ -12,6 +12,7 @@ var pieAttrs = require('../pie/attributes'); var plotAttrs = require('../../plots/attributes'); var domainAttrs = require('../../plots/domain').attributes; var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); var extendFlat = require('../../lib/extend').extendFlat; @@ -53,6 +54,10 @@ module.exports = { flags: ['label', 'text', 'value', 'percent'] }), + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['label', 'color', 'value', 'percent', 'text'] + }), + hoverinfo: extendFlat({}, plotAttrs.hoverinfo, { flags: ['label', 'text', 'value', 'percent', 'name'] }), diff --git a/src/traces/funnelarea/defaults.js b/src/traces/funnelarea/defaults.js index ae20aba2d6f..a138b8d51ea 100644 --- a/src/traces/funnelarea/defaults.js +++ b/src/traces/funnelarea/defaults.js @@ -46,11 +46,14 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout coerce('scalegroup'); var textData = coerce('text'); - var textInfo = coerce('textinfo', Array.isArray(textData) ? 'text+percent' : 'percent'); + var textTemplate = coerce('texttemplate'); + var textInfo; + if(!textTemplate) textInfo = coerce('textinfo', Array.isArray(textData) ? 'text+percent' : 'percent'); + coerce('hovertext'); coerce('hovertemplate'); - if(textInfo && textInfo !== 'none') { + if(textTemplate || (textInfo && textInfo !== 'none')) { var textposition = coerce('textposition'); handleText(traceIn, traceOut, layout, coerce, textposition, { moduleHasSelected: false, diff --git a/src/traces/funnelarea/plot.js b/src/traces/funnelarea/plot.js index 4e0667fa96e..ad2571601be 100644 --- a/src/traces/funnelarea/plot.js +++ b/src/traces/funnelarea/plot.js @@ -78,6 +78,7 @@ module.exports = function plot(gd, cdModule) { slicePath.attr('d', shape); // add text + piePlot.formatSliceLabel(gd, pt, cd0); var textPosition = pieHelpers.castOption(trace.textposition, pt.pts); var sliceTextGroup = sliceTop.selectAll('g.slicetext') .data(pt.text && (textPosition !== 'none') ? [0] : []); diff --git a/src/traces/pie/attributes.js b/src/traces/pie/attributes.js index 475ae885fb0..3ade1a3f8c5 100644 --- a/src/traces/pie/attributes.js +++ b/src/traces/pie/attributes.js @@ -13,6 +13,7 @@ var domainAttrs = require('../../plots/domain').attributes; var fontAttrs = require('../../plots/font_attributes'); var colorAttrs = require('../../components/color/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); var extendFlat = require('../../lib/extend').extendFlat; @@ -163,6 +164,9 @@ module.exports = { hovertemplate: hovertemplateAttrs({}, { keys: ['label', 'color', 'value', 'percent', 'text'] }), + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['label', 'color', 'value', 'percent', 'text'] + }), textposition: { valType: 'enumerated', role: 'info', diff --git a/src/traces/pie/calc.js b/src/traces/pie/calc.js index 461094aac19..89b361d29fc 100644 --- a/src/traces/pie/calc.js +++ b/src/traces/pie/calc.js @@ -13,8 +13,6 @@ var isArrayOrTypedArray = require('../../lib').isArrayOrTypedArray; var tinycolor = require('tinycolor2'); var Color = require('../../components/color'); -var helpers = require('./helpers'); -var isValidTextValue = require('../../lib').isValidTextValue; var extendedColorWayList = {}; @@ -93,32 +91,6 @@ function calc(gd, trace) { // include the sum of all values in the first point if(cd[0]) cd[0].vTotal = vTotal; - // now insert text - var textinfo = trace.textinfo; - if(textinfo && textinfo !== 'none') { - var parts = textinfo.split('+'); - var hasFlag = function(flag) { return parts.indexOf(flag) !== -1; }; - var hasLabel = hasFlag('label'); - var hasText = hasFlag('text'); - var hasValue = hasFlag('value'); - var hasPercent = hasFlag('percent'); - - var separators = fullLayout.separators; - var text; - - for(i = 0; i < cd.length; i++) { - pt = cd[i]; - text = hasLabel ? [pt.label] : []; - if(hasText) { - var tx = helpers.getFirstFilled(trace.text, pt.pts); - if(isValidTextValue(tx)) text.push(tx); - } - if(hasValue) text.push(helpers.formatPieValue(pt.v, separators)); - if(hasPercent) text.push(helpers.formatPiePercent(pt.v / vTotal, separators)); - pt.text = text.join('
'); - } - } - return cd; } diff --git a/src/traces/pie/defaults.js b/src/traces/pie/defaults.js index 3e94c24483d..c25b46b7671 100644 --- a/src/traces/pie/defaults.js +++ b/src/traces/pie/defaults.js @@ -47,11 +47,14 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout // TODO: hole needs to be coerced to the same value within a scaleegroup var textData = coerce('text'); - var textInfo = coerce('textinfo', Array.isArray(textData) ? 'text+percent' : 'percent'); + var textTemplate = coerce('texttemplate'); + var textInfo; + if(!textTemplate) textInfo = coerce('textinfo', Array.isArray(textData) ? 'text+percent' : 'percent'); + coerce('hovertext'); coerce('hovertemplate'); - if(textInfo && textInfo !== 'none') { + if(textTemplate || (textInfo && textInfo !== 'none')) { var textposition = coerce('textposition'); handleText(traceIn, traceOut, layout, coerce, textposition, { moduleHasSelected: false, diff --git a/src/traces/pie/plot.js b/src/traces/pie/plot.js index bcc67a99d51..08dfea99781 100644 --- a/src/traces/pie/plot.js +++ b/src/traces/pie/plot.js @@ -18,6 +18,7 @@ var svgTextUtils = require('../../lib/svg_text_utils'); var helpers = require('./helpers'); var eventData = require('./event_data'); +var isValidTextValue = require('../../lib').isValidTextValue; function plot(gd, cdModule) { var fullLayout = gd._fullLayout; @@ -125,6 +126,7 @@ function plot(gd, cdModule) { } // add text + formatSliceLabel(gd, pt, cd0); var textPosition = helpers.castOption(trace.textposition, pt.pts); var sliceTextGroup = sliceTop.selectAll('g.slicetext') .data(pt.text && (textPosition !== 'none') ? [0] : []); @@ -941,8 +943,62 @@ function setCoords(cd) { } } +function formatSliceLabel(gd, pt, cd0) { + var fullLayout = gd._fullLayout; + var trace = cd0.trace; + // look for textemplate + var texttemplate = trace.texttemplate; + + // now insert text + var textinfo = trace.textinfo; + if(!texttemplate && textinfo && textinfo !== 'none') { + var parts = textinfo.split('+'); + var hasFlag = function(flag) { return parts.indexOf(flag) !== -1; }; + var hasLabel = hasFlag('label'); + var hasText = hasFlag('text'); + var hasValue = hasFlag('value'); + var hasPercent = hasFlag('percent'); + + var separators = fullLayout.separators; + var text; + + text = hasLabel ? [pt.label] : []; + if(hasText) { + var tx = helpers.getFirstFilled(trace.text, pt.pts); + if(isValidTextValue(tx)) text.push(tx); + } + if(hasValue) text.push(helpers.formatPieValue(pt.v, separators)); + if(hasPercent) text.push(helpers.formatPiePercent(pt.v / cd0.vTotal, separators)); + pt.text = text.join('
'); + } + + function makeTemplateVariables(pt) { + return { + label: pt.label, + value: pt.v, + valueLabel: helpers.formatPieValue(pt.v, fullLayout.separators), + percent: pt.v / cd0.vTotal, + percentLabel: helpers.formatPiePercent(pt.v / cd0.vTotal, fullLayout.separators), + color: pt.color, + text: pt.text + }; + } + + if(texttemplate) { + var txt = Lib.castOption(trace, pt.i, 'texttemplate'); + if(!txt) { + pt.text = ''; + } else { + var obj = makeTemplateVariables(pt); + var ptTx = helpers.getFirstFilled(trace.text, pt.pts); + if(isValidTextValue(ptTx)) obj.text = ptTx; + pt.text = Lib.texttemplateString(txt, obj, gd._fullLayout._d3locale, obj, trace._meta || {}); + } + } +} module.exports = { plot: plot, + formatSliceLabel: formatSliceLabel, transformInsideText: transformInsideText, determineInsideTextFont: determineInsideTextFont, positionTitleOutside: positionTitleOutside, diff --git a/src/traces/scatter/arrays_to_calcdata.js b/src/traces/scatter/arrays_to_calcdata.js index ee83c3aac31..5135cd61ebf 100644 --- a/src/traces/scatter/arrays_to_calcdata.js +++ b/src/traces/scatter/arrays_to_calcdata.js @@ -18,6 +18,7 @@ module.exports = function arraysToCalcdata(cd, trace) { for(var i = 0; i < cd.length; i++) cd[i].i = i; Lib.mergeArray(trace.text, cd, 'tx'); + Lib.mergeArray(trace.texttemplate, cd, 'txt'); Lib.mergeArray(trace.hovertext, cd, 'htx'); Lib.mergeArray(trace.customdata, cd, 'data'); Lib.mergeArray(trace.textposition, cd, 'tp'); diff --git a/src/traces/scatter/attributes.js b/src/traces/scatter/attributes.js index e46a5f75513..8ad1629cca8 100644 --- a/src/traces/scatter/attributes.js +++ b/src/traces/scatter/attributes.js @@ -8,6 +8,7 @@ 'use strict'; +var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); var fontAttrs = require('../../plots/font_attributes'); @@ -166,6 +167,10 @@ module.exports = { 'these elements will be seen in the hover labels.' ].join(' ') }, + + texttemplate: texttemplateAttrs({arrayOk: true}, { + + }), hovertext: { valType: 'string', role: 'info', diff --git a/src/traces/scatter/defaults.js b/src/traces/scatter/defaults.js index 3ff337d0e57..82fd150e17f 100644 --- a/src/traces/scatter/defaults.js +++ b/src/traces/scatter/defaults.js @@ -37,6 +37,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout var defaultMode = !stackGroupOpts && (len < constants.PTS_LINESONLY) ? 'lines+markers' : 'lines'; coerce('text'); + coerce('texttemplate'); coerce('hovertext'); coerce('mode', defaultMode); diff --git a/src/traces/sunburst/attributes.js b/src/traces/sunburst/attributes.js index b6398a59edc..d80062cd66b 100644 --- a/src/traces/sunburst/attributes.js +++ b/src/traces/sunburst/attributes.js @@ -10,6 +10,7 @@ var plotAttrs = require('../../plots/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); var domainAttrs = require('../../plots/domain').attributes; var pieAtts = require('../pie/attributes'); @@ -129,6 +130,9 @@ module.exports = { editType: 'plot', flags: ['label', 'text', 'value'] }), + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['label', 'text', 'value', 'color'] + }), textfont: pieAtts.textfont, hovertext: pieAtts.hovertext, diff --git a/src/traces/sunburst/defaults.js b/src/traces/sunburst/defaults.js index 5a8a1d3bc2f..c34e27b019e 100644 --- a/src/traces/sunburst/defaults.js +++ b/src/traces/sunburst/defaults.js @@ -40,7 +40,8 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout coerce('leaf.opacity'); var text = coerce('text'); - coerce('textinfo', Array.isArray(text) ? 'text+label' : 'label'); + coerce('texttemplate'); + if(!traceOut.texttemplate) coerce('textinfo', Array.isArray(text) ? 'text+label' : 'label'); coerce('hovertext'); coerce('hovertemplate'); diff --git a/src/traces/sunburst/plot.js b/src/traces/sunburst/plot.js index df35feb912a..73b9de85ce3 100644 --- a/src/traces/sunburst/plot.js +++ b/src/traces/sunburst/plot.js @@ -719,30 +719,50 @@ function makeEventData(pt, trace) { } function formatSliceLabel(pt, trace, fullLayout) { + var texttemplate = trace.texttemplate; var textinfo = trace.textinfo; - if(!textinfo || textinfo === 'none') { + if(!texttemplate && (!textinfo || textinfo === 'none')) { return ''; } var cdi = pt.data.data; var separators = fullLayout.separators; - var parts = textinfo.split('+'); - var hasFlag = function(flag) { return parts.indexOf(flag) !== -1; }; - var thisText = []; + if(!texttemplate) { + var parts = textinfo.split('+'); + var hasFlag = function(flag) { return parts.indexOf(flag) !== -1; }; + var thisText = []; - if(hasFlag('label') && cdi.label) thisText.push(cdi.label); + if(hasFlag('label') && cdi.label) { + thisText.push(cdi.label); + } - if(cdi.hasOwnProperty('v') && hasFlag('value')) { - thisText.push(formatPieValue(cdi.v, separators)); - } + if(cdi.hasOwnProperty('v') && hasFlag('value')) { + thisText.push(formatPieValue(cdi.v, separators)); + } - if(hasFlag('text')) { - var tx = Lib.castOption(trace, cdi.i, 'text'); - if(Lib.isValidTextValue(tx)) thisText.push(tx); + if(hasFlag('text')) { + var tx = Lib.castOption(trace, cdi.i, 'text'); + if(Lib.isValidTextValue(tx)) thisText.push(tx); + } + + return thisText.join('
'); } - return thisText.join('
'); + var txt = Lib.castOption(trace, cdi.i, 'texttemplate'); + if(!txt) return ''; + var obj = {}; + if(cdi.label) obj.label = cdi.label; + if(cdi.hasOwnProperty('v')) { + obj.value = cdi.v; + obj.valueLabel = formatPieValue(cdi.v, separators); + } + if(cdi.hasOwnProperty('color')) { + obj.color = cdi.color; + } + var ptTx = Lib.castOption(trace, cdi.i, 'text'); + if(Lib.isValidTextValue(ptTx)) obj.text = ptTx; + return Lib.texttemplateString(txt, obj, fullLayout._d3locale, obj, trace._meta || {}); } function determineOutsideTextFont(trace, pt, layoutFont) { diff --git a/src/traces/waterfall/attributes.js b/src/traces/waterfall/attributes.js index 08ddfb6bdd2..b111224a559 100644 --- a/src/traces/waterfall/attributes.js +++ b/src/traces/waterfall/attributes.js @@ -12,6 +12,7 @@ var barAttrs = require('../bar/attributes'); var lineAttrs = require('../scatter/attributes').line; var plotAttrs = require('../../plots/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); var constants = require('./constants'); var extendFlat = require('../../lib/extend').extendFlat; var Color = require('../../components/color'); @@ -98,7 +99,9 @@ module.exports = { 'are computed separately (per trace).' ].join(' ') }, - + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['label', 'text', 'initial', 'delta', 'final'] + }), text: barAttrs.text, textposition: barAttrs.textposition, insidetextanchor: barAttrs.insidetextanchor, diff --git a/src/traces/waterfall/defaults.js b/src/traces/waterfall/defaults.js index cbff5eb6427..7e79d568591 100644 --- a/src/traces/waterfall/defaults.js +++ b/src/traces/waterfall/defaults.js @@ -62,7 +62,8 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { if(traceOut.textposition !== 'none') { - coerce('textinfo'); + coerce('texttemplate'); + if(!traceOut.texttemplate) coerce('textinfo'); } handleDirection(coerce, 'increasing', INCREASING_COLOR); diff --git a/test/image/baselines/texttemplate.png b/test/image/baselines/texttemplate.png new file mode 100644 index 0000000000000000000000000000000000000000..26e280a6fcd645dcaf148429cd501ef5b1f21ad8 GIT binary patch literal 76209 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%0A=3BJ1rHv6F+-- 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", + "textposition": "inside", + "hovertemplate": "%{text}", + "xaxis": "x6", + "yaxis": "y6" + }, + { + "type": "waterfall", + "y": [ + 1, + 5, + 3, + 2 + ], + "text": [ + "A", + "B", + "C", + "D" + ], + "texttemplate": "%{text}-%{initial}-%{final}-%{delta}", + "textposition": "inside", + "hovertemplate": "%{text}", + "xaxis": "x7", + "yaxis": "y7" + }, + { + "type": "funnel", + "orientation": "h", + "y": [ + "A", + "B", + "C" + ], + "x": [ + 3, + 2, + 1 + ], + "textinfo": "value+percent initial+percent previous+percent total", + "texttemplate": "%{value}-%{percentInitial}-%{percentPrevious}-%{percentTotal:0.3f}", + "xaxis": "x8", + "yaxis": "y8" + } + ], + "layout": { + "width": 1000, + "height": 500, + "margin": {"t": 5, "b": 25, "l": 15, "r": 0}, + "grid": { + "rows": 2, + "columns": 4, + "pattern": "independent", + "xgap": 5, + "ygap": 5 + }, + "xaxis": { + "type": "category", + "range": [ + -0.5, + 3.5 + ], + "autorange": true + }, + "yaxis": { + "type": "linear", + "range": [ + -2.1944444444444446, + 11.694444444444445 + ], + "autorange": true + } + } +} diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js new file mode 100644 index 00000000000..9c722891751 --- /dev/null +++ b/test/jasmine/assets/check_texttemplate.js @@ -0,0 +1,28 @@ +var Plotly = require('@lib/index'); +var Lib = require('@src/lib'); +var failTest = require('../assets/fail_test'); +var createGraphDiv = require('../assets/create_graph_div'); +var destroyGraphDiv = require('../assets/destroy_graph_div'); + +'use strict'; + +module.exports = function checkTextTemplate(mock, selector, tests) { + tests.forEach(function(test) { + it('should support textemplate', function(done) { + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep(mock, {}); + mockCopy[0].texttemplate = test[0]; + Plotly.newPlot(gd, mockCopy) + .then(function() { + var pts = Plotly.d3.selectAll(selector); + expect(pts.size()).toBe(test[1].length); + pts.each(function() { + expect(test[1]).toContain(Plotly.d3.select(this).text()); + }); + }) + .catch(failTest) + .finally(destroyGraphDiv) + .then(done); + }); + }); +}; diff --git a/test/jasmine/tests/bar_test.js b/test/jasmine/tests/bar_test.js index 9a108e5644a..346762897a4 100644 --- a/test/jasmine/tests/bar_test.js +++ b/test/jasmine/tests/bar_test.js @@ -25,6 +25,7 @@ var customAssertions = require('../assets/custom_assertions'); var assertClip = customAssertions.assertClip; var assertNodeDisplay = customAssertions.assertNodeDisplay; var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var Fx = require('@src/components/fx'); var d3 = require('d3'); @@ -1096,6 +1097,17 @@ describe('A bar plot', function() { }; } + checkTextTemplate([{ + type: 'bar', + y: [1, 5, 3, 2], + text: ['A', 'B', 'C', 'D'], + textposition: 'inside', + hovertemplate: '%{text}' + }], 'text.bartext', [ + ['%{text} - %{value}', ['A - 1', 'B - 5', 'C - 3', 'D - 2']], + [['%{y}', '%{value}', '%{text}'], ['1', '5', 'C']] + ]); + it('should show bar texts (inside case)', function(done) { var data = [{ y: [10, 20, 30], diff --git a/test/jasmine/tests/funnel_test.js b/test/jasmine/tests/funnel_test.js index cb3861833ae..dbc3b3f1eff 100644 --- a/test/jasmine/tests/funnel_test.js +++ b/test/jasmine/tests/funnel_test.js @@ -16,6 +16,7 @@ var rgb = color.rgb; var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var Fx = require('@src/components/fx'); var d3 = require('d3'); @@ -1220,6 +1221,17 @@ describe('A funnel plot', function() { .catch(failTest) .then(done); }); + + checkTextTemplate([{ + type: 'funnel', + orientation: 'v', + x: ['A', 'B', 'C'], + y: [3, 2, 1], + textinfo: 'value+percent initial+percent previous+percent total', + }], 'text.bartext', [ + ['txt: %{value}', ['txt: 3', 'txt: 2', 'txt: 1']], + ['%{value}-%{percentInitial}-%{percentPrevious}-%{percentTotal:0.3f}', ['3-100%-100%-0.500', '2-67%-67%-0.333', '1-33%-50%-0.167']] + ]); }); describe('funnel hover', function() { diff --git a/test/jasmine/tests/funnelarea_test.js b/test/jasmine/tests/funnelarea_test.js index 81b6e50f492..67e2fa6a015 100644 --- a/test/jasmine/tests/funnelarea_test.js +++ b/test/jasmine/tests/funnelarea_test.js @@ -14,6 +14,7 @@ var rgb = require('../../../src/components/color').rgb; var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelStyle = customAssertions.assertHoverLabelStyle; var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var SLICES_SELECTOR = '.slice path'; var SLICES_TEXT_SELECTOR = '.funnelarealayer text.slicetext'; @@ -637,6 +638,18 @@ describe('Funnelarea traces', function() { .catch(failTest) .then(done); }); + + checkTextTemplate([{ + type: 'funnelarea', + values: [1, 5, 3, 2], + labels: ['A', 'B', 'C', 'D'], + text: ['textA', 'textB', 'textC', 'textD'], + textposition: 'inside', + hovertemplate: '%{text}' + }], 'g.slicetext', [ + ['%{label}-%{color}-%{value}-%{percent}-%{text}', ['A-#1f77b4-1-9.09%-textA', 'B-#ff7f0e-5-45.5%-textB', 'C-#2ca02c-3-27.3%-textC', 'D-#d62728-2-18.2%-textD']], + [['%{label} - %{value}', '%{text}', '%{value}', '%{percent}'], ['A - 1', 'textB', '3', '18.2%']], + ]); }); describe('funnelarea hovering', function() { diff --git a/test/jasmine/tests/lib_test.js b/test/jasmine/tests/lib_test.js index 38dc37927a0..17addb9df1f 100644 --- a/test/jasmine/tests/lib_test.js +++ b/test/jasmine/tests/lib_test.js @@ -2247,6 +2247,24 @@ describe('Test lib.js:', function() { }); }); + describe('texttemplateString', function() { + it('evaluates attributes', function() { + var locale = false; + expect(Lib.texttemplateString('foo %{bar}', {}, locale, {bar: 'baz'})).toEqual('foo baz'); + }); + + it('warns user up to 10 times if a variable cannot be found', function() { + spyOn(Lib, 'warn').and.callThrough(); + Lib.texttemplateString('%{idontexist}', {}); + expect(Lib.warn.calls.count()).toBe(1); + + for(var i = 0; i < 15; i++) { + Lib.texttemplateString('%{idontexist}', {}); + } + expect(Lib.warn.calls.count()).toBe(11); + }); + }); + describe('relativeAttr()', function() { it('replaces the last part always', function() { expect(Lib.relativeAttr('annotations[3].x', 'y')).toBe('annotations[3].y'); diff --git a/test/jasmine/tests/pie_test.js b/test/jasmine/tests/pie_test.js index 4b6f84c8ebc..d4afa9ed524 100644 --- a/test/jasmine/tests/pie_test.js +++ b/test/jasmine/tests/pie_test.js @@ -14,6 +14,7 @@ var rgb = require('../../../src/components/color').rgb; var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelStyle = customAssertions.assertHoverLabelStyle; var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var SLICES_SELECTOR = '.slice path'; var SLICES_TEXT_SELECTOR = '.pielayer text.slicetext'; @@ -862,6 +863,19 @@ describe('Pie traces', function() { .catch(failTest) .then(done); }); + + checkTextTemplate([{ + type: 'pie', + values: [1, 5, 3, 2], + labels: ['A', 'B', 'C', 'D'], + text: ['textA', 'textB', 'textC', 'textD'], + textposition: 'inside', + hovertemplate: '%{text}' + }], 'g.slicetext', [ + ['%{label} - %{value}', ['A - 1', 'B - 5', 'C - 3', 'D - 2']], + [['%{label} - %{value}', '%{text}', '%{value}', '%{percent}'], ['A - 1', 'textB', '3', '18.2%']], + ['%{text}-%{color}', ['textA-#d62728', 'textB-#1f77b4', 'textC-#ff7f0e', 'textD-#2ca02c']] + ]); }); describe('pie hovering', function() { diff --git a/test/jasmine/tests/scatter_test.js b/test/jasmine/tests/scatter_test.js index 1c24d177a3b..c51292d2f29 100644 --- a/test/jasmine/tests/scatter_test.js +++ b/test/jasmine/tests/scatter_test.js @@ -16,6 +16,7 @@ var assertClip = customAssertions.assertClip; var assertNodeDisplay = customAssertions.assertNodeDisplay; var assertMultiNodeOrder = customAssertions.assertMultiNodeOrder; var checkEventData = require('../assets/check_event_data'); +var checkTextTemplate = require('../assets/check_texttemplate'); var constants = require('@src/traces/scatter/constants'); var getOpacity = function(node) { return Number(node.style.opacity); }; @@ -1186,6 +1187,16 @@ describe('end-to-end scatter tests', function() { .catch(failTest) .then(done); }); + + checkTextTemplate([{ + type: 'scatter', + mode: 'markers+lines+text', + y: [1, 5, 3, 2], + textposition: 'top' + }], '.textpoint', [ + ['%{y}', ['1', '5', '3', '2']], + [['%{y}', '%{x}-%{y}'], ['1', '1-5', '', '']] + ]); }); describe('stacked area', function() { diff --git a/test/jasmine/tests/sunburst_test.js b/test/jasmine/tests/sunburst_test.js index a6ce493d67f..f6672ba8230 100644 --- a/test/jasmine/tests/sunburst_test.js +++ b/test/jasmine/tests/sunburst_test.js @@ -14,6 +14,7 @@ var failTest = require('../assets/fail_test'); var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelStyle = customAssertions.assertHoverLabelStyle; var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); function _mouseEvent(type, gd, v) { return function() { @@ -1237,3 +1238,17 @@ describe('Test sunburst interactions edge cases', function() { .then(done); }); }); + +describe('Test texttemplate:', function() { + checkTextTemplate([{ + type: 'sunburst', + labels: ['Eve', 'Cain', 'Seth', 'Enos', 'Esther'], + values: [11, 12, 13, 14, 15], + text: ['1', '2', '3', '4', '5'], + parents: ['', 'Eve', 'Eve', 'Seth', 'Seth' ] + }], 'g.slicetext', [ + ['txt: %{label}', ['txt: Eve', 'txt: Cain', 'txt: Seth', 'txt: Enos', 'txt: Esther']], + [['txt: %{label}', '%{text}', 'value: %{value}'], ['txt: Eve', '2', 'value: 13', '', '']], + ['%{color}', ['rgba(0,0,0,0)', '#1f77b4', '#ff7f0e', '#1f77b4', '#1f77b4']] + ]); +}); diff --git a/test/jasmine/tests/waterfall_test.js b/test/jasmine/tests/waterfall_test.js index 20845b600f2..f9a35962863 100644 --- a/test/jasmine/tests/waterfall_test.js +++ b/test/jasmine/tests/waterfall_test.js @@ -16,6 +16,7 @@ var rgb = color.rgb; var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var Fx = require('@src/components/fx'); var d3 = require('d3'); @@ -1208,6 +1209,18 @@ describe('A waterfall plot', function() { .catch(failTest) .then(done); }); + + checkTextTemplate([{ + type: 'waterfall', + y: [1, 5, 3, 2], + text: ['A', 'B', 'C', 'D'], + textposition: 'inside', + hovertemplate: '%{text}' + }], 'text.bartext', [ + ['%{value}', ['1', '6', '9', '11']], + ['%{initial} %{delta} %{final}', ['0 1 1', '1 5 6', '6 3 9', '9 2 11']], + [['%{y}', '%{value}', '%{text}', '%{label}'], ['1', '6', 'C', '3']] + ]); }); describe('waterfall visibility toggling:', function() { From ce3c9cccca5b9ae3a2408681463a3b2f49d903ca Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 23 Jul 2019 13:10:40 -0400 Subject: [PATCH 02/37] move texttemplate_attributes.js from fx to plots --- src/{components/fx => plots}/texttemplate_attributes.js | 2 +- src/traces/bar/attributes.js | 2 +- src/traces/funnel/attributes.js | 2 +- src/traces/funnelarea/attributes.js | 2 +- src/traces/pie/attributes.js | 2 +- src/traces/scatter/attributes.js | 2 +- src/traces/sunburst/attributes.js | 2 +- src/traces/waterfall/attributes.js | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) rename src/{components/fx => plots}/texttemplate_attributes.js (96%) diff --git a/src/components/fx/texttemplate_attributes.js b/src/plots/texttemplate_attributes.js similarity index 96% rename from src/components/fx/texttemplate_attributes.js rename to src/plots/texttemplate_attributes.js index 56b8b1fe7cb..3ac40d6a099 100644 --- a/src/components/fx/texttemplate_attributes.js +++ b/src/plots/texttemplate_attributes.js @@ -8,7 +8,7 @@ 'use strict'; -var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK; +var FORMAT_LINK = require('../constants/docs').FORMAT_LINK; module.exports = function(opts, extra) { opts = opts || {}; diff --git a/src/traces/bar/attributes.js b/src/traces/bar/attributes.js index d2130fd7012..af17a0cb1d5 100644 --- a/src/traces/bar/attributes.js +++ b/src/traces/bar/attributes.js @@ -10,7 +10,7 @@ var scatterAttrs = require('../scatter/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); var fontAttrs = require('../../plots/font_attributes'); var constants = require('./constants.js'); diff --git a/src/traces/funnel/attributes.js b/src/traces/funnel/attributes.js index e5db501bddb..f97c0b098fd 100644 --- a/src/traces/funnel/attributes.js +++ b/src/traces/funnel/attributes.js @@ -12,7 +12,7 @@ var barAttrs = require('../bar/attributes'); var lineAttrs = require('../scatter/attributes').line; var plotAttrs = require('../../plots/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var constants = require('./constants'); var extendFlat = require('../../lib/extend').extendFlat; var Color = require('../../components/color'); diff --git a/src/traces/funnelarea/attributes.js b/src/traces/funnelarea/attributes.js index c141ff97f61..a5e51a5253f 100644 --- a/src/traces/funnelarea/attributes.js +++ b/src/traces/funnelarea/attributes.js @@ -12,7 +12,7 @@ var pieAttrs = require('../pie/attributes'); var plotAttrs = require('../../plots/attributes'); var domainAttrs = require('../../plots/domain').attributes; var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/pie/attributes.js b/src/traces/pie/attributes.js index 3ade1a3f8c5..235b44c6e3c 100644 --- a/src/traces/pie/attributes.js +++ b/src/traces/pie/attributes.js @@ -13,7 +13,7 @@ var domainAttrs = require('../../plots/domain').attributes; var fontAttrs = require('../../plots/font_attributes'); var colorAttrs = require('../../components/color/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/scatter/attributes.js b/src/traces/scatter/attributes.js index 8ad1629cca8..c93dfc85696 100644 --- a/src/traces/scatter/attributes.js +++ b/src/traces/scatter/attributes.js @@ -8,7 +8,7 @@ 'use strict'; -var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); var fontAttrs = require('../../plots/font_attributes'); diff --git a/src/traces/sunburst/attributes.js b/src/traces/sunburst/attributes.js index d80062cd66b..1c04a75a631 100644 --- a/src/traces/sunburst/attributes.js +++ b/src/traces/sunburst/attributes.js @@ -10,7 +10,7 @@ var plotAttrs = require('../../plots/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var domainAttrs = require('../../plots/domain').attributes; var pieAtts = require('../pie/attributes'); diff --git a/src/traces/waterfall/attributes.js b/src/traces/waterfall/attributes.js index b111224a559..988ff41c046 100644 --- a/src/traces/waterfall/attributes.js +++ b/src/traces/waterfall/attributes.js @@ -12,7 +12,7 @@ var barAttrs = require('../bar/attributes'); var lineAttrs = require('../scatter/attributes').line; var plotAttrs = require('../../plots/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../components/fx/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var constants = require('./constants'); var extendFlat = require('../../lib/extend').extendFlat; var Color = require('../../components/color'); From ee0a309ed478c121b6693c5833d45cf1c9e1f1ec Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 23 Jul 2019 13:17:52 -0400 Subject: [PATCH 03/37] do not export `templateFormatString` --- src/lib/index.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/index.js b/src/lib/index.js index c4aea7b4bbc..4ae2b03f6ea 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -999,7 +999,7 @@ var hovertemplateWarnings = { name: 'hovertemplate' }; lib.hovertemplateString = function() { - return lib.templateFormatString.apply(hovertemplateWarnings, arguments); + return templateFormatString.apply(hovertemplateWarnings, arguments); }; var texttemplateWarnings = { @@ -1008,7 +1008,7 @@ var texttemplateWarnings = { name: 'texttemplate' }; lib.texttemplateString = function() { - return lib.templateFormatString.apply(texttemplateWarnings, arguments); + return templateFormatString.apply(texttemplateWarnings, arguments); }; var TEMPLATE_STRING_FORMAT_SEPARATOR = /^:/; @@ -1028,7 +1028,7 @@ var TEMPLATE_STRING_FORMAT_SEPARATOR = /^:/; * * @return {string} templated string */ -lib.templateFormatString = function(string, labels, d3locale) { +function templateFormatString(string, labels, d3locale) { var opts = this; var args = arguments; // Not all that useful, but cache nestedProperty instantiation @@ -1078,7 +1078,7 @@ lib.templateFormatString = function(string, labels, d3locale) { } return value; }); -}; +} /* * alphanumeric string sort, tailored for subplot IDs like scene2, scene10, x10y13 etc From 9330290d01efb3e24aa2f39b37d2feb34237ab73 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 23 Jul 2019 14:23:28 -0400 Subject: [PATCH 04/37] texttemplate: test that textinfo is not coerced when it's defined --- src/plots/texttemplate_attributes.js | 1 - test/jasmine/assets/check_texttemplate.js | 10 ++++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/plots/texttemplate_attributes.js b/src/plots/texttemplate_attributes.js index 3ac40d6a099..078fda4d114 100644 --- a/src/plots/texttemplate_attributes.js +++ b/src/plots/texttemplate_attributes.js @@ -32,7 +32,6 @@ module.exports = function(opts, extra) { var texttemplate = { valType: 'string', role: 'info', - dflt: '', editType: opts.editType || 'calc', description: [ 'Template string used for rendering the information that appear on points.', diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js index 9c722891751..73a131c081c 100644 --- a/test/jasmine/assets/check_texttemplate.js +++ b/test/jasmine/assets/check_texttemplate.js @@ -3,10 +3,20 @@ var Lib = require('@src/lib'); var failTest = require('../assets/fail_test'); var createGraphDiv = require('../assets/create_graph_div'); var destroyGraphDiv = require('../assets/destroy_graph_div'); +var supplyAllDefaults = require('../assets/supply_defaults'); 'use strict'; module.exports = function checkTextTemplate(mock, selector, tests) { + it('should not coerce textinfo when texttemplate', function() { + var gd = {}; + gd.data = Lib.extendDeep(mock, {}); + gd.data[0].textinfo = 'text'; + gd.data[0].texttemplate = tests[0][0]; + supplyAllDefaults(gd); + expect(gd._fullData[0].textinfo).toBe(undefined); + }); + tests.forEach(function(test) { it('should support textemplate', function(done) { var gd = createGraphDiv(); From cf826ddcd9444be7979acb0c6180382df6a76ca5 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 23 Jul 2019 14:31:37 -0400 Subject: [PATCH 05/37] texttemplate: update description --- src/plots/texttemplate_attributes.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/plots/texttemplate_attributes.js b/src/plots/texttemplate_attributes.js index 078fda4d114..b4920a99355 100644 --- a/src/plots/texttemplate_attributes.js +++ b/src/plots/texttemplate_attributes.js @@ -34,9 +34,10 @@ module.exports = function(opts, extra) { role: 'info', editType: opts.editType || 'calc', description: [ - 'Template string used for rendering the information that appear on points.', + 'Template string used for rendering the information text that appear on points.', 'Note that this will override `textinfo`.', 'Variables are inserted using %{variable}, for example "y: %{y}".', + 'If the `text` attribute is set, it will be available via "%{text}"', 'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".', FORMAT_LINK, 'for details on the formatting syntax.', From c3e9961219ebf9c9b5b67258586e433a4fc21e82 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 23 Jul 2019 14:37:39 -0400 Subject: [PATCH 06/37] set texttemplate dflt back to '' --- src/plots/texttemplate_attributes.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plots/texttemplate_attributes.js b/src/plots/texttemplate_attributes.js index b4920a99355..d0d8f004f42 100644 --- a/src/plots/texttemplate_attributes.js +++ b/src/plots/texttemplate_attributes.js @@ -32,6 +32,7 @@ module.exports = function(opts, extra) { var texttemplate = { valType: 'string', role: 'info', + dflt: '', editType: opts.editType || 'calc', description: [ 'Template string used for rendering the information text that appear on points.', From e0bde45fe84d78d07f4d02882cd76a62f0345fa0 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 23 Jul 2019 18:43:29 -0400 Subject: [PATCH 07/37] texttemplate: add customdata variable and :lock: down with test --- src/components/drawing/index.js | 2 +- src/traces/bar/plot.js | 2 ++ src/traces/pie/plot.js | 3 ++- src/traces/sunburst/plot.js | 1 + test/jasmine/assets/check_texttemplate.js | 11 ++++++++++- test/jasmine/tests/sunburst_test.js | 2 +- 6 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/components/drawing/index.js b/src/components/drawing/index.js index 43b4173d741..11cad096fc4 100644 --- a/src/components/drawing/index.js +++ b/src/components/drawing/index.js @@ -700,7 +700,7 @@ drawing.textPointStyle = function(s, trace, gd) { } if(template) { - text = Lib.texttemplateString(text, {}, gd._fullLayout._d3locale, d, trace._meta || {}); + text = Lib.texttemplateString(text, {}, gd._fullLayout._d3locale, d, trace._meta || {}, {customdata: d.data}); } var pos = d.tp || trace.textposition; diff --git a/src/traces/bar/plot.js b/src/traces/bar/plot.js index dba0d0a1091..4f4d2fdc044 100644 --- a/src/traces/bar/plot.js +++ b/src/traces/bar/plot.js @@ -591,6 +591,8 @@ function calcTexttemplate(fullLayout, calcTrace, index, xa, ya) { obj.percenTotalLabel = Lib.formatPercent(cdi.sumR); } + var customdata = Lib.castOption(trace, cdi.i, 'customdata'); + if(customdata) obj.customdata = customdata; return Lib.texttemplateString(texttemplate, obj, fullLayout._d3locale, obj, trace._meta || {}); } diff --git a/src/traces/pie/plot.js b/src/traces/pie/plot.js index 08dfea99781..8f528c27aad 100644 --- a/src/traces/pie/plot.js +++ b/src/traces/pie/plot.js @@ -980,7 +980,8 @@ function formatSliceLabel(gd, pt, cd0) { percent: pt.v / cd0.vTotal, percentLabel: helpers.formatPiePercent(pt.v / cd0.vTotal, fullLayout.separators), color: pt.color, - text: pt.text + text: pt.text, + customdata: Lib.castOption(trace, pt.i, 'customdata') }; } diff --git a/src/traces/sunburst/plot.js b/src/traces/sunburst/plot.js index 73b9de85ce3..e703033b7d6 100644 --- a/src/traces/sunburst/plot.js +++ b/src/traces/sunburst/plot.js @@ -762,6 +762,7 @@ function formatSliceLabel(pt, trace, fullLayout) { } var ptTx = Lib.castOption(trace, cdi.i, 'text'); if(Lib.isValidTextValue(ptTx)) obj.text = ptTx; + obj.customdata = Lib.castOption(trace, cdi.i, 'customdata'); return Lib.texttemplateString(txt, obj, fullLayout._d3locale, obj, trace._meta || {}); } diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js index 73a131c081c..9fa5090b925 100644 --- a/test/jasmine/assets/check_texttemplate.js +++ b/test/jasmine/assets/check_texttemplate.js @@ -17,8 +17,17 @@ module.exports = function checkTextTemplate(mock, selector, tests) { expect(gd._fullData[0].textinfo).toBe(undefined); }); + // Generate customdata + var N = tests[0][1].length; + var customdata = []; + for(var i = 0; i < N; i++) { + customdata.push(Lib.randstr({})); + } + mock[0].customdata = customdata; + tests.push(['%{customdata}', customdata]); + tests.forEach(function(test) { - it('should support textemplate', function(done) { + it('should support texttemplate', function(done) { var gd = createGraphDiv(); var mockCopy = Lib.extendDeep(mock, {}); mockCopy[0].texttemplate = test[0]; diff --git a/test/jasmine/tests/sunburst_test.js b/test/jasmine/tests/sunburst_test.js index f6672ba8230..cce6b6034ff 100644 --- a/test/jasmine/tests/sunburst_test.js +++ b/test/jasmine/tests/sunburst_test.js @@ -1239,7 +1239,7 @@ describe('Test sunburst interactions edge cases', function() { }); }); -describe('Test texttemplate:', function() { +describe('Test sunburst texttemplate:', function() { checkTextTemplate([{ type: 'sunburst', labels: ['Eve', 'Cain', 'Seth', 'Enos', 'Esther'], From 902d2d37c276a9858beacb818f7ca250ac25f073 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 24 Jul 2019 00:58:31 -0400 Subject: [PATCH 08/37] texttemplate: add support for scatter(carpet|geo|polar|ternary) --- src/components/drawing/index.js | 5 +- src/traces/scattercarpet/attributes.js | 4 + src/traces/scattercarpet/defaults.js | 1 + src/traces/scattergeo/attributes.js | 4 + src/traces/scattergeo/defaults.js | 1 + src/traces/scatterpolar/attributes.js | 4 + src/traces/scatterpolar/defaults.js | 1 + src/traces/scatterternary/attributes.js | 4 + src/traces/scatterternary/defaults.js | 1 + test/image/baselines/texttemplate_scatter.png | Bin 0 -> 98934 bytes test/image/mocks/texttemplate_scatter.json | 140 ++++++++++++++++++ test/jasmine/tests/carpet_test.js | 19 +++ test/jasmine/tests/scattergeo_test.js | 13 ++ test/jasmine/tests/scatterpolar_test.js | 15 ++ test/jasmine/tests/scatterternary_test.js | 14 ++ 15 files changed, 225 insertions(+), 1 deletion(-) create mode 100644 test/image/baselines/texttemplate_scatter.png create mode 100644 test/image/mocks/texttemplate_scatter.json diff --git a/src/components/drawing/index.js b/src/components/drawing/index.js index 11cad096fc4..b0961dc7450 100644 --- a/src/components/drawing/index.js +++ b/src/components/drawing/index.js @@ -700,7 +700,10 @@ drawing.textPointStyle = function(s, trace, gd) { } if(template) { - text = Lib.texttemplateString(text, {}, gd._fullLayout._d3locale, d, trace._meta || {}, {customdata: d.data}); + var extra = {}; + if(d.tx) extra.text = d.tx; + if(d.data) extra.customdata = d.data; + text = Lib.texttemplateString(text, {}, gd._fullLayout._d3locale, d, trace._meta || {}, extra); } var pos = d.tp || trace.textposition; diff --git a/src/traces/scattercarpet/attributes.js b/src/traces/scattercarpet/attributes.js index 3c2fed05336..6a0ff3aa882 100644 --- a/src/traces/scattercarpet/attributes.js +++ b/src/traces/scattercarpet/attributes.js @@ -11,6 +11,7 @@ var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); var extendFlat = require('../../lib/extend').extendFlat; @@ -52,6 +53,9 @@ module.exports = { 'these elements will be seen in the hover labels.' ].join(' ') }), + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['a', 'b', 'text'] + }), hovertext: extendFlat({}, scatterAttrs.hovertext, { description: [ 'Sets hover text elements associated with each (a,b) point.', diff --git a/src/traces/scattercarpet/defaults.js b/src/traces/scattercarpet/defaults.js index cea51be903d..e32d6aafec6 100644 --- a/src/traces/scattercarpet/defaults.js +++ b/src/traces/scattercarpet/defaults.js @@ -44,6 +44,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout traceOut._length = len; coerce('text'); + coerce('texttemplate'); coerce('hovertext'); var defaultMode = len < constants.PTS_LINESONLY ? 'lines+markers' : 'lines'; diff --git a/src/traces/scattergeo/attributes.js b/src/traces/scattergeo/attributes.js index 772d6f8c786..fb4ca333d21 100644 --- a/src/traces/scattergeo/attributes.js +++ b/src/traces/scattergeo/attributes.js @@ -9,6 +9,7 @@ 'use strict'; var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); var colorAttributes = require('../../components/colorscale/attributes'); @@ -64,6 +65,9 @@ module.exports = overrideAll({ 'these elements will be seen in the hover labels.' ].join(' ') }), + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['latlon', 'text'] + }), hovertext: extendFlat({}, scatterAttrs.hovertext, { description: [ 'Sets hover text elements associated with each (lon,lat) pair', diff --git a/src/traces/scattergeo/defaults.js b/src/traces/scattergeo/defaults.js index d2b51fbfeb2..b67b34dd062 100644 --- a/src/traces/scattergeo/defaults.js +++ b/src/traces/scattergeo/defaults.js @@ -32,6 +32,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } coerce('text'); + coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); coerce('mode'); diff --git a/src/traces/scatterpolar/attributes.js b/src/traces/scatterpolar/attributes.js index d1a2b86fce5..a4ce7ca2004 100644 --- a/src/traces/scatterpolar/attributes.js +++ b/src/traces/scatterpolar/attributes.js @@ -9,6 +9,7 @@ 'use strict'; var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var extendFlat = require('../../lib/extend').extendFlat; var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); @@ -85,6 +86,9 @@ module.exports = { }, text: scatterAttrs.text, + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['r', 'theta', 'text'] + }), hovertext: scatterAttrs.hovertext, line: { diff --git a/src/traces/scatterpolar/defaults.js b/src/traces/scatterpolar/defaults.js index 81f7178549a..69d9fff752a 100644 --- a/src/traces/scatterpolar/defaults.js +++ b/src/traces/scatterpolar/defaults.js @@ -34,6 +34,7 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { coerce('thetaunit'); coerce('mode', len < PTS_LINESONLY ? 'lines+markers' : 'lines'); coerce('text'); + coerce('texttemplate'); coerce('hovertext'); if(traceOut.hoveron !== 'fills') coerce('hovertemplate'); diff --git a/src/traces/scatterternary/attributes.js b/src/traces/scatterternary/attributes.js index 9b86099c84b..ac2d0fb6038 100644 --- a/src/traces/scatterternary/attributes.js +++ b/src/traces/scatterternary/attributes.js @@ -9,6 +9,7 @@ 'use strict'; var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); @@ -80,6 +81,9 @@ module.exports = { 'these elements will be seen in the hover labels.' ].join(' ') }), + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['a', 'b', 'c', 'text'] + }), hovertext: extendFlat({}, scatterAttrs.hovertext, { description: [ 'Sets hover text elements associated with each (a,b,c) point.', diff --git a/src/traces/scatterternary/defaults.js b/src/traces/scatterternary/defaults.js index 920df2a0317..594099d8ec3 100644 --- a/src/traces/scatterternary/defaults.js +++ b/src/traces/scatterternary/defaults.js @@ -58,6 +58,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout coerce('sum'); coerce('text'); + coerce('texttemplate'); coerce('hovertext'); if(traceOut.hoveron !== 'fills') coerce('hovertemplate'); diff --git a/test/image/baselines/texttemplate_scatter.png b/test/image/baselines/texttemplate_scatter.png new file mode 100644 index 0000000000000000000000000000000000000000..48f4baf521e75bfb3b353169651ed33ae8d0adb1 GIT binary patch literal 98934 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 literal 0 HcmV?d00001 diff --git a/test/image/mocks/texttemplate_scatter.json b/test/image/mocks/texttemplate_scatter.json new file mode 100644 index 00000000000..96391ce2941 --- /dev/null +++ b/test/image/mocks/texttemplate_scatter.json @@ -0,0 +1,140 @@ +{ + "data": [{ + "type": "scattergeo", + "mode": "markers+text", + "lon": [ + -73.57, + -79.24, + -123.06 + ], + "lat": [ + 45.5, + 43.4, + 49.13 + ], + "text": [ + "Montreal", + "Toronto", + "Vancouver" + ], + "texttemplate": "%{text}: (%{lonlat[0]:.0f}, %{lonlat[1]:0.f}): %{customdata:.2s}", + "textposition": "top center", + "customdata": [1780000, 2930000, 675218], + "geo": "geo" + }, { + "type": "carpet", + "carpet": "carpet1", + "a": [0.1, 0.2, 0.3], + "b": [1, 2, 3], + "y": [ + [1, 2.2, 3], + [1.5, 2.7, 3.5], + [1.7, 2.9, 3.7] + ], + "cheaterslope": 1, + + "xaxis": "x2", + "yaxis": "y2" + }, + { + "type": "scattercarpet", + "carpet": "carpet1", + "name": "b = 1.5", + "mode": "markers+text", + "a": [0.1, 0.15, 0.25, 0.3], + "b": [1.5, 1.5, 1.5, 1.5], + + "text": ["a", "b", "c", "d"], + "texttemplate": "%{text}: (%{a}, %{b})", + "textposition": "top center", + "xaxis": "x2", + "yaxis": "y2" + }, { + "type": "scatterpolar", + "mode": "markers+text", + "text": ["A", "B", "C", "D"], + "texttemplate": "%{text}: (%{r:0.2f},%{theta:0.2f})", + "textposition": "top center", + "r": [1, 0.5, 1, 1.5], + "theta": [0, 90, 180, 270], + "showgrid": false + }, { + "type": "scatterternary", + "a": [ + 3, + 2, + 5 + ], + "b": [ + 2, + 5, + 2 + ], + "c": [ + 5, + 2, + 2 + ], + "mode": "markers+text", + "text": ["A", "B", "C"], + "texttemplate": "%{text}
(%{a:.2f}, %{b:.2f}, %{c:.2f})", + "textposition": "bottom center" + } + ], + "layout": { + "showlegend": false, + "width": 800, + "height": 800, + "margin": { + "t": 50, + "b": 50, + "l": 50, + "r": 50 + }, + "geo": { + "scope": "north america", + "domain": { + "row": 1, + "column": 0 + }, + "lonaxis": { + "range": [ + -130, + -55 + ] + }, + "lataxis": { + "range": [ + 40, + 70 + ] + }, + "center": { + "lat": 57 + } + }, + "polar": { + "radialaxis": { + "showline": false, + "linewidth": 0, + "tickwidth": 2, + "gridcolor": "white", + "gridwidth": 0 + } + }, + "ternary": { + "sum": 10, + "domain": { + "row": 1, + "column": 1 + } + }, + "grid": { + "rows": 2, + "columns": 2, + "pattern": "independent", + "xgap": 5, + "ygap": 5 + } + } +} diff --git a/test/jasmine/tests/carpet_test.js b/test/jasmine/tests/carpet_test.js index 3fada7b2e71..a71ffc3471a 100644 --- a/test/jasmine/tests/carpet_test.js +++ b/test/jasmine/tests/carpet_test.js @@ -13,6 +13,7 @@ var failTest = require('../assets/fail_test'); var mouseEvent = require('../assets/mouse_event'); var assertHoverLabelContent = require('../assets/custom_assertions').assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var supplyAllDefaults = require('../assets/supply_defaults'); @@ -714,6 +715,24 @@ describe('scattercarpet hover labels', function() { }); }); +describe('scattercarpet texttemplates', function() { + checkTextTemplate([{ + 'type': 'scattercarpet', + 'carpet': 'carpet1', + 'mode': 'markers+text', + 'a': [0.1, 0.15, 0.25], + 'b': [1.5, 1.5, 1.5], + 'text': ['A', 'B', 'C'] + }, { + 'type': 'carpet', + 'carpet': 'carpet1', + 'a': [0.1, 0.2, 0.3], + 'b': [1, 2, 3], + 'y': [[1, 2.2, 3], [1.5, 2.7, 3.5], [1.7, 2.9, 3.7]] + }], 'g.textpoint', [ + ['%{text}: %{a:0.1f}, %{b:0.1f}', ['A: 0.1, 1.5', 'B: 0.1, 1.5', 'C: 0.3, 1.5']] + ]); +}); describe('contourcarpet plotting & editing', function() { var gd; diff --git a/test/jasmine/tests/scattergeo_test.js b/test/jasmine/tests/scattergeo_test.js index d8b7c659479..65aaf8c7990 100644 --- a/test/jasmine/tests/scattergeo_test.js +++ b/test/jasmine/tests/scattergeo_test.js @@ -12,6 +12,7 @@ var mouseEvent = require('../assets/mouse_event'); var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelStyle = customAssertions.assertHoverLabelStyle; var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var failTest = require('../assets/fail_test'); var supplyAllDefaults = require('../assets/supply_defaults'); @@ -436,3 +437,15 @@ describe('scattergeo drawing', function() { .then(done); }); }); + +describe('Test scattergeo texttemplate:', function() { + checkTextTemplate([{ + 'type': 'scattergeo', + 'mode': 'markers+text', + 'lon': [-73.57, -79.24, -123.06], + 'lat': [45.5, 43.4, 49.13], + 'text': ['Montreal', 'Toronto', 'Vancouver'] + }], '.scattergeo text', [ + ['%{text}: %{lonlat[0]}, %{lonlat[1]}', ['Montreal: -73.57, 45.5', 'Toronto: -79.24, 43.4', 'Vancouver: -123.06, 49.13']] + ]); +}); diff --git a/test/jasmine/tests/scatterpolar_test.js b/test/jasmine/tests/scatterpolar_test.js index 69d26588719..69f6b99c715 100644 --- a/test/jasmine/tests/scatterpolar_test.js +++ b/test/jasmine/tests/scatterpolar_test.js @@ -9,6 +9,7 @@ var mouseEvent = require('../assets/mouse_event'); var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); describe('Test scatterpolar trace defaults:', function() { var traceOut; @@ -198,3 +199,17 @@ describe('Test scatterpolar hover:', function() { }); }); }); + +describe('Test scatterpolar texttemplate:', function() { + checkTextTemplate([{ + 'type': 'scatterpolar', + 'mode': 'markers+text', + 'text': ['A', 'B', 'C'], + 'textposition': 'top center', + 'r': [1, 0.5, 1], + 'theta': [0, 90, 180], + }], 'g.textpoint', [ + ['%{text}: (%{r:0.2f}, %{theta:0.2f})', ['A: (1.00, 0.00)', 'B: (0.50, 1.57)', 'C: (1.00, 3.14)']], + [['', '', '%{theta:0.2f}'], ['', '', '3.14']] + ]); +}); diff --git a/test/jasmine/tests/scatterternary_test.js b/test/jasmine/tests/scatterternary_test.js index 0cabd822e5d..b7dfca206f1 100644 --- a/test/jasmine/tests/scatterternary_test.js +++ b/test/jasmine/tests/scatterternary_test.js @@ -11,6 +11,7 @@ var supplyAllDefaults = require('../assets/supply_defaults'); var mouseEvent = require('../assets/mouse_event'); var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); var assertClip = customAssertions.assertClip; var assertNodeDisplay = customAssertions.assertNodeDisplay; @@ -554,3 +555,16 @@ describe('Test scatterternary *cliponaxis*', function() { .then(done); }); }); + +describe('Test scattergeo texttemplate:', function() { + checkTextTemplate([{ + 'type': 'scatterternary', + 'a': [3, 2, 5], + 'b': [2, 5, 2], + 'c': [5, 2, 2 ], + 'mode': 'markers+text', + 'text': ['A', 'B', 'C'] + }], 'g.textpoint', [ + ['%{text} (%{a:.2f}, %{b:.2f}, %{c:.2f})', ['A (0.30, 0.20, 0.50)', 'B (0.22, 0.56, 0.22)', 'C (0.56, 0.22, 0.22)']] + ]); +}); From 0b516f7086c2fff2e9e4009234cc804169eb2aa1 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 24 Jul 2019 14:47:50 -0400 Subject: [PATCH 09/37] texttemplate: use result of appendArrayPointValue as available variables --- src/components/drawing/index.js | 8 ++++---- src/traces/bar/plot.js | 8 +++++--- test/jasmine/tests/bar_test.js | 11 +++++++++++ test/jasmine/tests/scatterpolar_test.js | 4 ++-- test/jasmine/tests/scatterternary_test.js | 2 +- 5 files changed, 23 insertions(+), 10 deletions(-) diff --git a/src/components/drawing/index.js b/src/components/drawing/index.js index b0961dc7450..87dbe12dc84 100644 --- a/src/components/drawing/index.js +++ b/src/components/drawing/index.js @@ -28,6 +28,7 @@ var subTypes = require('../../traces/scatter/subtypes'); var makeBubbleSizeFn = require('../../traces/scatter/make_bubble_size_func'); var drawing = module.exports = {}; +var appendArrayPointValue = require('../fx/helpers').appendArrayPointValue; // ----------------------------------------------------- // styling functions for plot elements @@ -700,10 +701,9 @@ drawing.textPointStyle = function(s, trace, gd) { } if(template) { - var extra = {}; - if(d.tx) extra.text = d.tx; - if(d.data) extra.customdata = d.data; - text = Lib.texttemplateString(text, {}, gd._fullLayout._d3locale, d, trace._meta || {}, extra); + var pt = {}; + appendArrayPointValue(pt, trace, d.i); + text = Lib.texttemplateString(text, {}, gd._fullLayout._d3locale, pt, d, trace._meta || {}); } var pos = d.tp || trace.textposition; diff --git a/src/traces/bar/plot.js b/src/traces/bar/plot.js index 4f4d2fdc044..56678104f61 100644 --- a/src/traces/bar/plot.js +++ b/src/traces/bar/plot.js @@ -26,6 +26,8 @@ var attributes = require('./attributes'); var attributeText = attributes.text; var attributeTextPosition = attributes.textposition; +var appendArrayPointValue = require('../../components/fx/helpers').appendArrayPointValue; + // padding in pixels around text var TEXTPAD = 3; @@ -567,8 +569,8 @@ function calcTexttemplate(fullLayout, calcTrace, index, xa, ya) { obj.value = cdi.s; obj.valueLabel = formatNumber(cdi.s); - obj.x = cdi.x; - obj.y = cdi.y; + var pt = {}; + appendArrayPointValue(pt, trace, cdi.i); if(isWaterfall) { obj.delta = +cdi.rawS || cdi.s; @@ -593,7 +595,7 @@ function calcTexttemplate(fullLayout, calcTrace, index, xa, ya) { var customdata = Lib.castOption(trace, cdi.i, 'customdata'); if(customdata) obj.customdata = customdata; - return Lib.texttemplateString(texttemplate, obj, fullLayout._d3locale, obj, trace._meta || {}); + return Lib.texttemplateString(texttemplate, obj, fullLayout._d3locale, pt, obj, trace._meta || {}); } // TODO: calcTextinfo should build a texttemplate pass it to calcTexttemplate() diff --git a/test/jasmine/tests/bar_test.js b/test/jasmine/tests/bar_test.js index 346762897a4..8898484b608 100644 --- a/test/jasmine/tests/bar_test.js +++ b/test/jasmine/tests/bar_test.js @@ -1108,6 +1108,17 @@ describe('A bar plot', function() { [['%{y}', '%{value}', '%{text}'], ['1', '5', 'C']] ]); + checkTextTemplate([{ + type: 'bar', + textposition: 'outside', + x: ['2019-01-01', '2019-02-01'], + y: [1, 2], + hovertemplate: '%{x}', + texttemplate: '%{x}' + }], 'text.bartext', [ + ['%{x}', ['2019-01-01', '2019-02-01']] + ]); + it('should show bar texts (inside case)', function(done) { var data = [{ y: [10, 20, 30], diff --git a/test/jasmine/tests/scatterpolar_test.js b/test/jasmine/tests/scatterpolar_test.js index 69f6b99c715..494a893db5f 100644 --- a/test/jasmine/tests/scatterpolar_test.js +++ b/test/jasmine/tests/scatterpolar_test.js @@ -209,7 +209,7 @@ describe('Test scatterpolar texttemplate:', function() { 'r': [1, 0.5, 1], 'theta': [0, 90, 180], }], 'g.textpoint', [ - ['%{text}: (%{r:0.2f}, %{theta:0.2f})', ['A: (1.00, 0.00)', 'B: (0.50, 1.57)', 'C: (1.00, 3.14)']], - [['', '', '%{theta:0.2f}'], ['', '', '3.14']] + ['%{text}: (%{r:0.2f}, %{theta:0.1f})', ['A: (1.00, 0.0)', 'B: (0.50, 90.0)', 'C: (1.00, 180.0)']], + [['', 'b%{theta:0.2f}', '%{theta:0.2f}'], ['', 'b90.00', '180.00']] ]); }); diff --git a/test/jasmine/tests/scatterternary_test.js b/test/jasmine/tests/scatterternary_test.js index b7dfca206f1..53c787aee13 100644 --- a/test/jasmine/tests/scatterternary_test.js +++ b/test/jasmine/tests/scatterternary_test.js @@ -565,6 +565,6 @@ describe('Test scattergeo texttemplate:', function() { 'mode': 'markers+text', 'text': ['A', 'B', 'C'] }], 'g.textpoint', [ - ['%{text} (%{a:.2f}, %{b:.2f}, %{c:.2f})', ['A (0.30, 0.20, 0.50)', 'B (0.22, 0.56, 0.22)', 'C (0.56, 0.22, 0.22)']] + ['%{text} (%{a:.1f}, %{b:.1f}, %{c:.1f})', ['A (3.0, 2.0, 5.0)', 'B (2.0, 5.0, 2.0)', 'C (5.0, 2.0, 2.0)']] ]); }); From 7d216806f075a938bc0fbdbd9149ee09c4bac027 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 24 Jul 2019 14:49:19 -0400 Subject: [PATCH 10/37] texttemplate: fix scattergeo variable names --- src/traces/scattergeo/attributes.js | 2 +- test/image/baselines/texttemplate_scatter.png | Bin 98934 -> 99550 bytes test/image/mocks/texttemplate_scatter.json | 2 +- test/jasmine/tests/scattergeo_test.js | 11 ++++++++++- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/traces/scattergeo/attributes.js b/src/traces/scattergeo/attributes.js index fb4ca333d21..2b3ea5fd2d0 100644 --- a/src/traces/scattergeo/attributes.js +++ b/src/traces/scattergeo/attributes.js @@ -66,7 +66,7 @@ module.exports = overrideAll({ ].join(' ') }), texttemplate: texttemplateAttrs({editType: 'plot'}, { - keys: ['latlon', 'text'] + keys: ['lat', 'lon', 'location', 'text'] }), hovertext: extendFlat({}, scatterAttrs.hovertext, { description: [ diff --git a/test/image/baselines/texttemplate_scatter.png b/test/image/baselines/texttemplate_scatter.png index 48f4baf521e75bfb3b353169651ed33ae8d0adb1..3d858675867f66f6645543f8afdf676ab3f67396 100644 GIT binary patch literal 99550 zcmeGERX~(o_Xdo^Fu(u;LkQ9X3?MBH(j_1v(j_6?EubhV-5@C-h$s@$-6AESAl)t9 zCH3F){NCqzpYQ#jeuv+I2M#lH-}l~YuXU~Ky4HlNt0~~)QsSbaq2Vhj%4wjXVIWZd zU|8UlDHkjoG&BU7lAN@bxA9gc&Y9}Sb!Unq#gM5@+%0-}rk?3MczA>ie_WmtE9LEU z{#lL3;aa)UmSJbgNQ#EnisY)jamd%C@i&M1HQTgZ6enq?5*JqzgFck6UVK@2V!zuo zyQ^n9R`R4FN)84?r$<18{o!zkj1=lWahOotFnr zfFuZf8j1hsEB^C+42VgL|NGAWUcdq$ohYtIx;W-vSNy-fqW`4*`xgFwJHj3Y?gZb? z6ZyY)0t-9&?;Zc=?fSA(P^7(jAtU|Ypa1K55KuX(O6>o=TsI|z0ihpcK!bz+KW~TR zivQ2&gQZ5{aP%I^UmJ@5^X%wE@a_NoJhVK-AEr3^PDkN?pFPaqhVcJywFSWKm19-i zCx-mb+o5tV{&WBT-24Bx)c>(X-#rA>{uK`v zw^7mBUOdnk)0)g_s8ZuJ)8~(lp>lq((of~wXqL?N#O}}OuCq?Dfu&Q^vCd%!$)nT+ zCgt={+UMO`g*yF}j#Hyibds}4teTy_3Uvp?&gO%XQ%Sjvr#FX3&i>h0aOyl!aX?Ua z|A-fIxHc%X+j7%fw^`D#br!VLrGQ;(zG}u~%R-3f!fWz$91`YK8qsH|(m_~h0`{Y+;3?BW@Ts1A zMo^~w>#Vy)fOuD1&|Nc@onOoLtKQM9)qlhFWYRzoi-6ju2XjXcpOXLH$Lv>scFbfS zT<_jo50c(hZ?)I_>HV(-m{$S|AXdjgsl`Qu{%GH{Ck> z|)nMDqIVee~L$`yQWsHj8We zz^(U<=$bhG)T?$#J0EMgw#@RoKKIXkZ;SWeGmLNrw?W*c;su4GcVkf$8&uku4cy=4 zsBoIO?|#@XWH=;E#=&c;U8MKZW8)VqBFrZJUzb;;0rB#SM+?sK*?Ewe$?_KuB1~2Uvy?(Gr0v6e~ zT%9uipDX@%`>Tn@>pcr68ht7z$}J<$uTJOiZ?3xN{8A-vE{7fFnrAML$4pLY+}G6j z?0(&K|0z$N2HrDA%BIz=BQxjRaT)Njv2XnH&zADi8u(kUxh@f1uh}>!A2Arrqed|oiVmc>i0;DHkPb%b0 zIuIedIamsPx~H^=$?dH24IMWp1zN{-%GnJ^6TRiCfj4kqScDaaUh3uE;ZzM#%u1c zC?_?s zeL2kvD^>R)C6=^}k-{}x%47EbE=NEu$dw%cMp^Iw5%T+`xrb1^5Fs8wuGwUv`@ zQe8ylw3==YA(nVh8uV%3u+%glnp@Pw`C zU-=de2WJOT{=+zpnIgxkFV)Oy;H|CIV3s4u-WG&iAW{ya^Jh1qNRMJA^jmF9*b`r0 zZ&wbh@qs9>XEmt&q+9*E^S@^q3Imac#`%ovV}$*WO55SSqxIq94?(hf1s}8QG?)LV zUdl0C4z*N4@&{9JoRBOr zpYoAPA^Xuje%m4B7hb*<40N0sO;8c4n8N!a9Sn-}ul^igRd4ef|8tO9QAO^|BIoj+ z3PC9eiyA-ai2ZD1op|@E`CI8`BDl5l6}Z3TV3l z4iUh5SCnVZp`gGBEOo`!v;a7f2Fm~HOBM7gp-=MVgAx~K&$plA)3T2SqgGtR#0S5Jz_R(@%V<3U!Lh z%ZSfaq~6M(Erinb)w(Wmv^k7?ep3g^#BG+vbDGcSxaj})fO~>qt!Itt2BUXC5DS7N zQSGyq>BX@=uUqY)KN!uIh|#M{UZj`mI9>ZQL3K2{guhJuCq4bQgw zzzx!NzkH|k-*VZ5g8tM_0dQ~+tI~N+!lgv#C)pF|vR^kG z@959wmyFZd7lR&K<3Bxq|DcZ>j9|_*gpP+kX?P|eH0=^pEPy2XzbABN1VOZY+|%>h zsz2S*_~o&-{rbGRK3MX%QC|x)BmB3Tc-eJJDlLvBZ_Z=ae-$JaUoj9tCS=|@&ozfc z`EnXmf&d`etZ3CI282~(Vv?%Gq0-%2tEEKx)x!mvSFE#tB z5=|)puu6w|%3mAe762+Qm-?xCcCF$5g2Za7xk?Jx6G+AcTRamHfJ9^z6(NLlPN;NI z(s=N2xYAbBOK5|Qex5j>VYhiIKe$A{BH!oF`bRI4I27swD_iFvpYj)mybNk>zS!B! zZtJ{L08=#PFkehW6z|}1H=3dlaF7rczfGJsBYKl86j}D#q|zpy0)Q@7{qnr^(c%nT z3TCYAl9<3&0D}7tR=)Rx`tAG$#)1Io>tiViYS)%&Am1X%2O~wo{g=P-G7IAP=4bm| z`wSQ9^C?Rp!%e>hyP`+oJz5i{C^s^8gQcbPyXaNdeFT*if5t&ptQP( zmNl0RlEC2KIX+3B_q=(hep3ZxaZP7+PADx%udUAL=m==Ae=GoR`#+yDiE4#)U7jBn zfAQF!tV(ozaC#L4?(cauL_jvnXO+VJ*JFhVh+A*c8(O20h`&qT7gSgu-+pN3%dS&& z4+EQkf8~2hjl|E3?HUu@;&mN>t>TV$FpbJr2QuwXZ9upWP1PFwwYq=Zx>zWvmutyL zag1DoubPj3_>EY&=7e`+2$o`v_2T^I+jaBE1 zv17N$pxJdh9(Sde<3#zlC~A=*Uy!#>TD~W9+CM+pvb_nPem3Q}8p+)}p84SeK$n8o zi?Nc|_Xs5~ORv^?ShC-qwEIyngJf#erSak6?G(OWmQG+vT_d%gj$NHC#jb|4WZh$W zm{j_r#^z^kxWN44hRLh*ZxTVZzK@ad21MX=-g}LEd-CP!6R#OdP`gw1*M5C-@%$Sa z1T@M?K|8*ca~akC`14u!lX@F901*v1u+TJ6cgI_urZYODD9p_{v2NWlHT&{m*yh!NCHGeVTfE7tV z(^E2f7-5t3-ni*`nt80aU^rRs+)$0PNrmU8j`Dp3B16cz+9LEm(?UYQ8h5Q6g|A~#E-LeSr7xo zL}t}n*trrf|DY00!yTm~WrR!|%^wi;jt?EzSI1#RhBX7k-Fu$5oz`Xjt%I+oL4#MR zt^V=4AM~VK6Ep0P92knxp3v~O#??CUK`{_Z0Eiq1;AkzRg>@p}P} zw_dJKIk!08J$MFsuJrq!8+pHyonm6q$jX*tC1=UR6D~QVU7-6=+A0X6MwjODS|6TH7Fi?GP zI6OEYi~O>;YgWyHTkyMT20O z)IrsWyPr=s3cpbDS}b@OSJ`Q2Y`7o&{<)g?NFw~sR(dPEi1`#$1wMd5j3#dT3zaRQanH9irNmG6Ph`e<=YHm<rGJ{HHKW3*RUCYBr>ytvjYUQKU}imZf!BVNWB7}S79fC0GRsiW( zOmJ}?Ujf=dWq%D=hzaY!%JH0nGI}~t=<2GZ^53_96tXIO{GT!d@1{f1A+^al$l$Mk z722vMXr{6oYLRxvS}D+7^-ibVV{HMtjSeS1-y4{;`3IKgf^xa|vq}1mhuv-UBDkMd z-~`jG6v&EHoAXhD!t8-V1#@LKKN?^iwb^@oWHt zKo~(HtC1noDg;u9w?)Axdl!%;CmnP>H-3c+v&F-mIg(KuOiy|4@}M)vU*>hw^J89s z^LnrR1t1{44sg*Gy9On19B7~arq`^r`T5Cxs`+KZIjXY-lm~}&z*{MmyAPwL?gj_n zO354NR(~gDY?jvp3(!Md(bVr9>%u#a8PBnA#akT22^W|o=snw%9gK7Xzfp%ysT)-e zL3`XWO<>RjU}c;T%+&1L3a;~O3rj#@pc?nlz`zmc>0=mKx~rM5a=$^#PzLc4JjOEVEA!{4JB~}@ z#HuuG#0d?r!BgO$go6ttfqqSBxA~$3#qTk-Y)*4zKEDlVR`8EX(vt{Vsl7Uxs^Fz7 zs=X{tns3+sti|d+?b=0=;KXn9qm}t%JPf@B1%|%9`Re7-a&^Kd{^CT%jx-LwLrAFi z=rhmEG9~&4Ll1oINiI36Gmu3l2)QRph~F%H4b1>(ECU?_3;DdT1h8R<`M-+swCC89 zQGt#845wZSO5a1t^JS95^R;Zl8ctrz(IWlf1R@S5V)}U&aMs-_4XDF@*u*&r-Iit# z(!bLmh7^UVWZoa?+yK?&v)rs_U1irCi2VqT;`t5XkmOqYOOCgBP zKzi&4bd2N1Xt8}s(}}^LX{pbl6(2}q8ToWF?G63(jG)jS^$82W>ES3HhI%WyCy^xs z)t-r+FDK^9g%h*JO6};e%BHGgxV1fml_YUJn=Uy!Bj?b&_o2EL03he;=3m=WHIM2z z1wh`Edd29U5T_T*Hz+m?!0gCy;u8S=nUEdv4&$Y5%(MPspn2~YUK*VbM8S*Xu`D#c zMF~I)r|KjYC@P+iX+V*pdMs3jMD`xF8q?lO(Sl3UfO$yI4F5z9!reC%Z8sa>(R4CS zgYk5kSHwkv!yg|B0dUQCDa!iFXD&SI%=Y%7UlGu9jLfG$0N8JaF)(<4v#9bEg!eN= zM!~y~1fREj(h_eU`+?r3+U3qfS#Jt=_Ib~z&|tV;mED^*`4Lxk>BPu6aW3x#nRH7# z4&h@GgBqu8A5~8o)8C745&pSxUL9cDoB<7=n#hw^s5x}8C@A*g!~rBSN-Bl1T32%_ zA&?X50QN*i{+@Fm6wiP9Eg~NzHi}JcB+~rHj*}h~S#ifY!B?1(j?XG;1TG_koR#ta zItO^eK7flI6wjm<(d-!I+%f=fmr;BuW1tldSHy89MZ_*;0~QvOp9dVusWYVFh8~ds6nkOVSONN z6SPClt9@zay#V7c8FAIlLoU>kU;z#&42+qCa|_k{QHXh$qFVd%AMeZ3c)E$y&>5AU z14N?4ouy_!fuvK*?g*S;dbv}#W@V*eC%^=Kb+&+gh=MNwO-|jCTnLO*0r{n$&hOHU zO}E71i|AJASB(u#A#4(Kg5|4=Q=t^&=LNQaHhL%Jz1wukK|x=|U7}C=Ab(b|Rweab z8ykjG?Lvsu!uuX8ED+g!^Ysnd8es|bv36?~b3OTC!4_DKpg~$n$2(}_=yv;h815$J z1Y0*5voL%s=$MY`d;5Xr;>1<|n_;t>l66~P(eJyoiQ}_gpWbaZJa1G4?PE~ zk+^Mqig^otxrY9 z9tE7V6zQE;Z*+}$467Y@PG`KbX{^~;XDgaa4nClL0Bx-ofh!%g!;jC)GIBCQvGt&l zz!z6pWCqrGgnqu;*%uyi$lvK(gQU%IW6i+}PexyG9S(|;1 z<0a^LeECN8Fm9vw%=2n&V(4UVZhU8;Uw>i&HfSNu{$QamnBg^)x9g%b-+9%phZABW zx7&EArYyIJLpcoMpafr3kEsZkl3#k9Xk~?NqU7{ zD8aAJZG}T={-$ZalWLR(@4L(=(>KUrmNI=kUIZ<_$G1UOoK}&Mwne#=QRiw-=!7uRYu1GkWH-|GmaR zcYl?3Q>w*bg4dpCemc-|0kn2CTygW?__`Ysw3<7@)D`P2zbC)o@8avO2-CpM3BkQl z%YgZI)VeK~DWyYvUBfAUO-sI~2yxoX!k6#qd}VZQ%P5;lbDLkT3# z<}GrDUn-$aJk-X?sqXsE<~Fk=fZWqYS#Rt?++kF}6gPyQhx-aww5i-1i! zoci}J94(g2eUN!;M9~Qc?`_AuzGvhTv~tnwK6vG{`QaNQq9e$xEx=bD53`WG1GH=p zp23bhN3?ZWZ6DPOCVqb=CuIbA(`|XrRwAMn-&<8qM#F>%hyoEVE&Xbh|yKHZ*?F8;7+&cfHRgl1{{W)nHOBs8VemaG^tyjv@Gt?;R4o^E) zabjnR{pLua^_kyY!ne<@b&XtKSLF$3A@Z(1^xKfZ{{$jUdyr^Zo)IkjFvYX0sI>F@ zyFMov`;y0-W3gjzuCpEhfG`AOR$b7X1nmf)$8Yt)^uxV1G0;UbTD?)?qxPA23sXG! z9^uEc{5CdTw<6{p4x?>{?Z?dIOF7Sv0N!WGq7_n<{Olk@m1*~-@8A4g%#j2T-A)&B zWTUW)i5o{dG=GVJA}b{2<_7Q*24hM_)nQkN21H;66-6|*ZRhSX@WAnC`q0Lv6^ z-bv%D()~%JP>1sodCXUZG!Cu~TGR3r(DcmvL4O>~xqat6xmuzYyOJ#YWraqB2%|b6 zVjYE$D@+%`W|R?N^}DI>}H{7n#_)d$;#K zwcq7_@-+2}t+MW3ynGk;sM6?{?G_uSY7Y&&$Q^m068C?1 z(v7#0<$%d>q@dueAESSHu|h2E3B0#W^C^c!PhF@M1j+*G?_+ zfWx24*4|W4IZa`xaZKx_gf$?7MnI0Y<!>XqeA*J5-l&N{rLi``IYGVUk?bB z=I8P0zssrObVIOxH^S6^?FHg-mC7M0+U#b5^8h2v(@j0kr3}^5E7IAPp~2;^(kZfd>rb>KRr=y>|HX(ik;^=J@V{3r^i~Ym120l!zm=3b$uMFZ|MY(7SV#v~T@|9o2yf zK=NFfhJUsOV7QBuJ~|>iN2F361jygjm2q9InSK8KEnq?(V#O88?` zvk^zgKuqj+TVCp^c@p>X*EGv!@uhvQ+7dYA`oa8!b@t2?RYQ6CXng8WU${$_^1;Fu zTi~QV<8*o0u6nP#pQLk7j4>3czZ_LId0QpiM&Yn0n1z`5g=Uz)To=n+H#Xn5UY`le zlnD-whlZK$c$zi10UQV^_5D1h#6D1joG=E1xQxqutz>Thtmzm=hdmrk=$Nk=9fDlt;_#){B zR78HL0Lud^P0jk63b27tbKnuO%qc|aNNzZI=4kw|D= zop<0cQ(q-=*vHp&vu779gD{1mfEJ3$4QV~B_uRyCIC=4C3`h7hVoJLR^W0&^di9_u zW!Do&Cr)&8mg20cPZv#2D#1wqARIVV)~o&1Bq9~NXA9XOCz zUy~bmuPGS2lR%nf{n;kHW_><#QcnV@VlG;827|f3ByqbJkB4r5RmlFBWB8@rX%me{`&tZJ&pyEb&O6=zqj*#ka zN;*^z+mSot@)dtIH8j&_bVKy1eNcxYki8_;TkcHK{W&}=)fIe z#jKKQ%5IINN?qafgAYC2|4z_Kkcn~$KEb9LN z7^Jl_eaCPqD7QdQ0`Mxygx?#ws8M=i)~i3Z01VO?9_c60p?KiZ7(L0^7rWvaS8UzH z9>l~J5Mqym1+mjwGi~66sDJtpl@7QdgW{)e+c;C7J_A|$(KFFgJ?ECogUEA0ulBii z(O3hA$xhkN56;3Z*MAB<{k|~)>(>siWp9#_$&wu_O4dfAiBbr1)h!bbzmpDv?(_~S zS4hkJ@K#CV{ifr@2}*_tIAyA!aZm*o0Q0~#c6rHf$_dza^8IeE zt$uxae17h4uOrj?9@Yp5nALuvxymYlmlt8NF}$K*7c*L4P}HzD<4D7s-GMKSKTrOP zNy{sE{@WUNQgqk4N{ePn@#mEk!Y=Q=iyqvRt0cl<-6&R=kHGa__I=OKszHA`shm5Y zUI)uPA*N;ozqJZmfNH(ng==CKp>R-60PI1)PP9Hz@zGJzsC{bwo7bf6$20(Ky;*S|SkSHYWo?!6)}WyD3>=48{Y9qjO^l~+jyP}NN`G6N!O)O@cly+vWh z624Kuv{T#luJn~DE4?U*#R}M6At2S4jrjsk+URQnW%*C=#?xP#kJ1$AUV40?A)4(3 z&5GTg(zje9Hob1AhHXL35+jj|79|}irb+OpN#c0Wmi@?gkw?j4AmOoG)ToC)djcGe zTUQ-4!ag$>$D7vstq+56vSN9IkuwYjL=-<+p5 zPX8G0llcMi!U{CaZeCslI&6Nrt-a0=0g4acTP3fci|R@n z`nTyK33QkhVNhs$K&Ky2NJqbg>0vM4&&44l;6PWavb)YqrI9d-aWM_P1J@;Hvw7nk z|C4+a?rYb>LpO_c3T&E7FRIX$UY8pAth})TtzxpbDdigGMDxoRvh#Ve$vS?fqQgfmo}mraNYM8 zUFhF*INZmTZZ@k`=c5(FL}WWbYwV2PpF1TIsVu$(SaY$62wT<2=ZBs0B4eByF)=NM z%&s29MZgX?2s_%~Z~MQ;c*@Q`-{hf; zj4$zanX~JU%uE>QQoX!%ILm9{r2}mOTDea`FVN9fq4lB#WIjKMQlGD+(e;7jZX{%n z*Fya40(fES75XqFa`cE`2dm%0SEEws@}Py#9W7{aB16hi6*VnTp`C1~iXVZzu#J~U zp6mX^n~Iv>hhkVLP0=L?_odGPI)G_}MI%vVGN$LwMm29a^z=p$nw4KYN#huFm_|MO z&?B)AgA^AMUQ?wUnspK<*x5adkL{q-Ta4)b95R*NcN4z!Q8ZWz2~|HbJ)RG}E!xfN zG%ZXu7KTZuYhe_8akOs!=F#08nH50VSM@wR3lS*`_?eK>(S8IXv_^-J)L3t$=cMbj zw-_#}obKI?HkxDu4Nf{@REUYv`*r(N$EZ*-b601N1C1^$lH_9j#P~@Hst7Ft?aW9W?>YtSHJS*p_WT zZQ~QRG7lg0rpK#P?h7Z``uz(N$MHSzYOaEi5tNT0Eu&NDRtM>@*qI9&RCbUXG9FwX zLBzk)k>z6QIdt}vS)pRNHe9}efSemL!J~Wlc>cqd#fU+LRdhd;m|NbpNSpLr(IGa} zIQl#rw?mpRPL)=Ah821pidN=(H>MPheFg84rnQI8u`SZM7RW4M7D(BCE;95rSCZa&@H_jg!v+e?4O)zK=63q-D@3mk zo1od3Yc0M{l*VHoa`nJm`tg<%L$~Fr0a4r?@53MORyv~}BnU&OH^P0opOsQu>2Z)O zusV@sOD~Jcu;(mMVg|f3R^q}`y`4rSO?TCJqfk|*|wMyCB;5%UjV9Zu7=W!iRT;$bO`$VOE$$x;I&kDu}lPeLBg z65X^Bexr#HoL)o_>?3K>+dgBM1y0Y$OI0g(HBoH3f$Yr4934K!z0auUgm~H~zbFoN zH@65!V#cP1#Bz4laB(^&jGTNj$vj4c*&ZWj2YZ<)`Y|&uzX%knjD2k8_T()wNOEwa zN*PV!22AQxK7KWuz0(P6x|*8x`g_oEJgu5X9ghqU%&}+}v}5>2o^XytJ@oUB9W5}^ zrcPY^9Kv#xUPv|s91$g|gu6(p@KBr*g<65fbU|lb-aX1PQ(rA3Wkp9L2x#uhZQ~X~ z3pQr*=wcP5+C|N>ycva$RrhZB2Q!giK=s=bg4o4V6;WceV$yMIDEt}SCjHT<#&a+J zb(gM(9?xu!&cot)kTb+~=t^EwJ(buCGLg#g9Nw9%YvoxT?$TEt*}pr!_8ZxIr&UmICFiIH&W}_lW$$FvZi4 z#oqe6G`s!z7Kz5L3Vhj)tzz!&o)Kuzp?L7*l^;ikJr2%d1}^d#BzBHUjVM1}uqT3q zNV*I9N@*xmN+K=}A1H;p`HjxK0(LeJfug~xmn-)Nt@o)i16>+=28RW8)>|k>+PZvk z2%~>zsw{q}psmPNjifi-!hN}|HlU1cwBY2~cGz709Cv?5*#GJDrvjaRAzE4VWpop5 zR$~W6JMi${k{*v?5;QnS_#wxIG+dvqJ2c++yOdmH31c@i>cHmZT4e80IRTka-yVn6 zONoeDsU1hrrX>zBpl^}4{E9=OLtCa1uDBkEi8qw6_;!D3RDpr2NG4$#U8GLcDs-Ew5^o zT14p1U0i(Ppf?4$$9avR9KsW{nlt^4*{*a!{37}+nvQ(rr%P_>gn)CXj`$Uiu!l_C zNy5L&XE+^;v^YFkw;B<6L52^_{Q76soFIm%D1`!==&ZfW=(9CFtHfrUbSEz<$pRa_ ze8mOMfJfmZMs0WQN4(1@^@DHDpyu|MCdv2956(b82sHYAT>N_5%zAn%A*af9H$GNm z0HRF=IQWKV@ol$zcEVnF6eMKXv2>6xNMM~Kz807;rTP1E4`@S?4%)N8uVy$RtQj>M znSmfTKcK>y5O&Ku-*0Yua`5okwq5U0Jrg;cdHQ3wLVFyOCx(DEbxKGc`10vELOFmZK&FLM#|a^Hf9OhSDZCSsn2_+X9PB-MH9Qs@)6RxduSMTC&k z);Z?w^X^&V00HSFn?*~cp zw#H>XpZl$juYnm@?=^4LW3~J1c||A11B%me`JJZ6M@bi7Jo;?Inm`=FyMxbwxRE*n&G7_&{*i<0sY)mJ zI}J9MWgN0o-Jtl z1z-s8`Ya;OSXw}8G>{2|;L5be-VCthxC!st1P-KqN%=4_)!&!SX@7EO@%=|}yMY4l z80%2g^chq;;L*@SYL=HP`r(cYCkrUBJafK>(d%IP&U$ToEFj$fvck=xg#ioMy^hvY z8Q!!Nv!V@ItbGC`uCYTpA@1!em1s-Q{Z^MBf}sQ6k=K*J*dpcc(eTUj&OJo^i7(*G zlH-J1z}}DBoxq7-{R*1TepL)ntrnd9DPZ@j^l-19Oyi1=T6K2ImvRvqAQ@U_L6 zW~EyTL5^MRKQaIPL90IkxX_yMX?j$JW-K&ci~)B`2F9;X!BQba{{EU7mfdmmD1Qmg zaWxp1GJHqKyLg$1<$aU8u$odL-~meIz5jDAb1h*?v*H4+)@P0y`Q zAt#|RVV2h9b+)%~5(LAEhXuT&mumcqFEnim{6m@5l(+OAszdgJQcZaR#-$#-^<#F2 z^)FAt6I;iD*&(CH2{IwL?B5jkP)A^q+4XB^tFTPQFE_g%?*i6;_p-z*sO^PWi{|`_t2nhp=T*^uPgEk>0!u z+(~j~m3WEE;5ruJ` zlro6=B!vP5)rBz;+?=Cf#eaU}-C7@Ki=V*>G0r|NNGN;P*Gx^PsM(g{qMkFR7k(j> zIqDIKfb7pnltU|*Dei_1jwXZB-6BO*;v($sKASn{KAVqR4!1b(BeW4Aax=18B zSeLJ%RQwj*wI+`8*fs=Mf0N<9MZvfj*dbQw4 z9DENKLQS9~a`8i!(8p5ImJXXs2u?KZvX|u_22{w-E#M-p=H`&nQz8IPsLE5CUs#U` zxQ!dfrDQaszblc+j;5c9KYgxesPTCY3>u>xtBqNzmsW-YIhz1 z+qIf@K_GvT)2{~U#iNKa*zjO4wd+fU&OrY|qh0pywML)AK9rMvNfHbNq};xB(3B`e z5=Z4!+h*k6FVK9d+kdLM@$41K-rRH)OrqxULRn+XGRWWb+}{`Y`GpE4z9^yRW-KyD zAsDas0rzJxZSNTX-@}90gcgvhW@Z2z)rIA_Efov4=IlrZZW6c2?5Nm6O26>yO4UwT z{HB9m_K;nUGP+*mYR+q=Lv@I%)PU%&*dg%iu)JMi=(m5jIus@)I9kn|mjO%&pqvPx^r$@iq-AnQ8Z&(w62U-sUPUfz9fTRY=#WcBoUjZ=hj4I9e&849?2{&jU4geg($a1Vep6IS=A7>*wVrYE{Vgng{ju(CyVevpg2Z zqQu?mR2w_Jux>DW=Rkc&yLu(v(gE!TOb43*N9LzPy~h3&Yd=B`bb6Z@w%-;M3Clu| zb!Ph12r5B`)Z~XXU~`&IWvmr=I5&`SC0Y#7%dl23kYviIAd~w@;@m<~jedpaqroml zBn%1Vm685hZuxzugel=*-ggwO#246OE2^HO<^?3EnnE(zP@4ltnriN!U@DqT`<7=5 zAzYCKhyFNE)0gc{L8Nb9VAjnJlkhPxWeY-gfdEKHgm6{<7IC}3YRq`EYvH4q)rJ&m zk{!%Ti>y?4r(+T=gbDe%X^a~m&M3;><@=Mq*lC7kg)!Q zxGI?yIwUVMv=GR25MQ8u@~pves=BI#9r^)WC>#DR1YaH-H9IGXFY0K1g_>pu$J22d zyC8I!2~LT-?gWgv^{=r%Bs~9O+~g1-J^cmQCWnZFS^#}v^>bkfuQT`^i#~0IseN$! z27Zsm@8@d-=6%YdRlUBxaCTpc7NVr(!X+_tq7iY+^8wM|I9hB2luFXWA!Tm;ZCrhM zlnM6)5MM8DDh4I&QEG3YnTcBuQ^+5tcql&m>ld{wzXp8)eS(_xD%CdpSqjEIXZal` ze+lk`(V;X@3OmR&+qvHqF@tPBS9q>BhJpn;>?@e658%dkQo`1f& z{tz2S>5czcysyh|(;JlKx@44hW)MB|!HWkn*vltA;hs+_o7CX8bImXNK`Wi;VflPo z*G1%$#)k-YYR`E19t2Wr951#IfK7XkCDS8;JS1s^2lXohAu=^u_Xm>>OaVQZ9Oi=M zA4Ux(I`lKm1x4S#y0v!OlD?mLV|J504jTN9MdPVkX)JRi41rF4mLXto6#?9%gzLB2 zw8GLJI-__oy2k_uab!ciZ3p!5xHv_K^n4s}+8A7R6lxb*{YX{=L&>zuJ&{+y*qfdu z{$dj2)fsw75w%4;;$BS9)4S;O<~YIcfqy9(=>mJY69@exvlMv4B)5o~iuoFXKlPoL zbo;&{(Hobx&(F3elPz9?O?cJ_qvPyOO(8HUNQlz{1M@xDC6FzO%2#pPLKH?rSJWNP zAIN00)(k2aZ9Wwz3BtlJA5;daX2SCfR9&fl>H%I#sF#EZ7<31qL1%8Xg+3V0I^8J%gK^X5>Wy}SG%jvd! zy|Smt9wHV4%CQD)NTfbwQQ@F1y+2cQtS?J^Dv3?IH(?ZvE>3>vTXlzTQsB(!I%TKW zjDayn&Q-pBfK2s^X^`R+3nB|5QC8nn^80-otbyo()$TK@Z%x5rtC#6bS7kS1_oblR zxG_@uiG+KD|I;7~XFR(DC`Wc2B*1cww~->b2oO5%?dW1uPN%cX&S5dmcJTU zniGIE)0$eo*PSDlZu(McimIR+&W#080t!oW*S6kWVP6tM;?KphK~bIjK;WU2MImU$u>{kXcZ8g#X`vPX43FY(^|F7d#8#Rvg)ww!1S;#> z2zXx(|D}m8C>Cv&j{jhx6fbdUU^E|KD@2`G!)_vdC^}Rmd@8|tla6WJlZr;;2ie|@_aI3NGg<@*+EshmHF^17Tx_jx>=qPofihpA&vEf27%#MiU1SB89E4iO}M zhwa!mm+-RSFSD45=-mGEYreN2grb#M+Vch&!CqKWm5vqpuf;kt>p zh&n5nFz&M?U)NQnG5xKTz;2jsvlRXvA!w8Js3a5kG#tJ30A9#1M6#P&5C$FIujPF3Jika!S7sV?vqdasKgr;j_%u{==f6EGoP`owS9&m z*$pxdW+t?(ys`yJDv%g80-VI!d2&Jg$!QmlE4`CX&dE9PyBmm4ij0*J zXVq5Roa?=Bu@qxZJsyO-hkMt zZ%{I;Yto&q_1A=^xe!%M0BAiuCRs%xYu(+4cq|!-on!LvvY7I46NH%6vyC5C$Fx~4 zx5az0e;FZ3>H9zmi*_Ur&eX9K?mPen*lvgmyq`D@=KBss$)ipY2JER|WBs6NFJtNP z_H0j(|6QNq3PbLv=WRc+umsr{f9fdX!VV|$u&x5Uw+64D&FOruIsI23Ho?Wp2{tK3 zaRx1xc>C~oa_e?x0uZ31ykn4+_6dKCf4%dvFox;VSVf^2MbI@Rc8oDOf_qT*@qDY- z;QIBPW zrBJRB7_n9OZAa)Ww_sG_k{&d^j4&Qm`vI0)zwTFu5Y#0m-gruRcIz2olA>VoY>ftY zZJyMZ{Xj~35zgdUn2&%mkh;@);w{hc0HQ{x0OR?P{;`=$*%{V2kS zkFI41_XjpnN8u$RX?{NzE*0>MOy*+LTXMJR>sqk1MvnEz7QcC8V@SJ?nsKP|ti(4v z%c~~szBOLgH|R|7VHTQ?Pb}GSRIqSboGDXaB=NL&It=9L-}v;j$vx4VI67 zr>|Es;%R!zxSzU8rj7XdE#)!qg<|hrJ5PIj<3+YyvWY4?+cI<@L@9X*xSKH@S`$7i zISS(Giwb3ggJYxg{UWxTC1WE&XKv&*Ce4S-{@;DNQxt1S&1$Q$HrJmK9rm&)bSva? z#UW#3u#?0HN+P+=7YH^g98wkWk$aY0K1)UhE?AdI%*6GAzHr$lBHSMN59=;bYr0IT zHNf>IXE5QNJs3nBp%X&ET#yJJwgN~~A`frnrpABHqbqy-{Hwl7s%Ph3WG8qFyc%ub zzY~KxF728}yL-is1IO|87iVh?U495_LgH(83Y7+?6185!dyaJDkZuvsXNq7qAij3L zOi|vlfWszirD&TP!TE=$?BO*VqTw#DcrtASEm=5{jS-2O5EBH9EL*eqyKMxp$nTMq z?Rk%Sacs7qi`7fI?ROC_M-!KkB@o(R)Uu9@dT?i6^`&rE$jF6*>(q8(YEv#&9_#))&-iv@ zElPIaL8~gI!RCx(;4PlpWOHn6@biP3!rg=+Ra>Losd3lL2A{+$;Cp zUh|Y)3EMc+#|S+*37=a3ehn7BDB5xcEM^>vT=)1W4B*J_*EsTBn>=@eJ6H2`w8{$< za)^T@)7s_*5obTx)Se2{u&mBVP!T9cgE8FuV8nkoRUi0c{ zO1m6)m5IGuO@Fqe*_JS&_eI5St7Y#rX+@P)vR4}AaFlYS>Q)*hyU8yn^uIjkZhre( zQxARn*O+4CZ=Lp5ho74UJ8P7%m+Y9eXX|dN4EHH|?TO>?A#9fOD;H~3rlu%}AO_%! z#-wUDmn}nG9ZQ$OL4C^4D4G(B%uzA@rbNMzJR@|k;)MXq&V!yXEmws=~x z5b_Y=Z`?bYr!lO-)r1IxWQ8aalLw~YSCQmRkxvLuEFe|IYgrwxzY^w89+2P=DridWE@LMpVW$-^swx1pRe4RJbL4ogX#zVzC+u1blLK1kA zn`u<>qN8CGoMj_`b0S3cq~e>`es`R>-8|fPusRx?>~&B7jxna>va&jwY4+CjE~jrI zaW)G+*R)k6h|u`_&Y-nUYBQ1)IOL!9qeM9@S{V-JzR)Zae+xMW3K{#dgyXEMwoX*K z4B(N8WZB+x6{lTE0JS;bgJZ#M-vv|9b#=aAI(EluWyY~e+umHtcfaSA`MdX779At5 zRNULbml1*vjuh|qDHW-5-v zQOa4800Z@xo6InUMq2*LGPPQGpElCJb-}0XqwdMN5bR6*(vq6PMLtbJFDYzG^ypa{ z$*mBhMPoWQ8Bz?}uw|$ON&0hR7T&X`dF$yca2aJR;tGc>R~9h>As1!H;!Wa>YQrb) zHcB%)2X+Ma9^R$O@J2~iK2$2r5cTvRHGgtucsy}L_G^jAk{RV9UH+7!<7an;Wm%Zm zF$c)=#YLfa+ah(gJEr%sH}Cx}^%d|B3&q()_^b8}_N92X@2xBsyaT>s5mhu!EB9?a z@fztPa+el)TI=h>Oz{_DyPsSLo4lzxc~{(&(-C1ds3CfMb?>g9%}Mp0Hr*4wsT4Pl z+7kDrS--pmlgl6FOwjDGmEb)~F-#2@ML^c>9~^k29hz0;jYz`2ps;7Z!P$D7hBedw z!-8wrbR*OXK5fh=oL4nvUSVfrgA}6sU6~hg9sQ)=flJI_tmUMsZA0}cD5rk=_r;e$AT{rY0A!w-u}Y;Uq*Js7GR@kqAzFHd69y!B&@OHsmub|6zB- zI06wuMLZrHABB~pR`^PCL4`k2@c?)@@13Q8GDQYsBhJ;BsvRdQu1#(6lBz`Obp|D? zAp)YO=?5ovW5lMeb|hgj|Emj~-UV>pi|fTGTbeN6H4Xr-ARgZIII9$$yNb9B0wQOi zgg5#0B4Q4V>Q0X4)lbV)ZR#ig3Omy*{o?Icc1;uMI8#t-K0CrJ$^h)%BSY7IetLy!1|JTm(bxpKlD0_s>5W@{ithL0Z1H_ZVqLB{7meHNiX}hQR!yyem zO!O=lpqXsJam!0=#901EG6UvDu0x$X>7^&3ZI@tAo<9)EqMwSO*>I2HYW~=nFQ5@| z-A!;1X!z9)5!JzJXhqApX7~ThBeXa$iq7L*S4j&KM1dP+dAaZ^>h2_0x3VQz_8Uw3 z06CB9{nHd)e0-~k+m-j5bTX&H+vc}Fj;pLLxB-OR6((Zs+l+|Itq1>VgD*kr#YepL zNQ)J8=V~jBAWqDC*0=z8=lSM!#uNOI2I^GS?eU=sa#qOTSnrZ?F02(r}-IKI#O%qmufa4DQ$hG$ursC#&wIq7hG_G z$Y`lc(6qCK+zy&|!9-IrLg)0dbWA(C*@n+clts?6?2{1NjX=+XrS1sltPlBTD;M^0 zhqk57tOYg!07O_g={=M&tZ(Ld@p~tlJpnPy;wz+p1*|-5x||G**9e1xWkR|>oGupX zFCj_UiCJKAeSu`m(qCv3BRJhKF)}z^mLs`1GPRBEl6)r9AqZN%5CDKnCWZTueF*sA zhVOmm9vXFiv_daxdzGS=I*R=*L}7Am$YGM?tyFIvL33#|n@+18%{IFiahVN&+ye@J z!#4=M8(O?U=e%TplT89ND7?g)jOmiEoPZ{;WR_45t6bHwrTzQEqn|9hFBHXvkrLW>WP?cGM06<1gp8w0=E z;reb=g>i!dRHiYVyjx61$- zKcKAds1g^VEGm#w{J%MhSHRzS_U#MA)7({Xt`Y3gkGM|~mTp|2pA7Mc#*0*E36x|U z8HgAtBB6rmmFE0)xHWrd3XF?KJOz%2_rDndjDjKZNQyIK835I?87A5rx2Ne)JixZB zF>M?DADH~YMF7wk?_RYcrZDmyqg;enW&-L(P>l2;M5G0GC#Ruf6v6F9G&MV*AU`pL zq062BUhymJ@~Bk^WLQgRrj&U9+~#6DNTEv}x~T*RW^66w?2=kVdyUUGD;8df&Ka%)j-_{-|<^PSE(B z+pFF~#cEg3r?93d2cGE3!#Cmf2lsSCbP4g*cBM9QsID5_MhtF7AuKf7^EuCwu!U;`N&rJITCUvZ%>8Aii|ARe z8xV3UNyj@tcXeU~2|A1|&2KX2&kUGM@Cb(H!2e z?u#vbY*XWwf9eOm`F7yx$rW;j?K=mIB0b&G`Z*6cVd4E(S72w@vvJ^yd;+jMZ62Q! zRk14#iLeA4?znWiE{E_(vdJr@fplzM#w)qaRAyaWH*|d^ z?xl$^IVT%jpN&;Vwf%IwP>R9LV$!~Ig-}w3fmbOqf;XLPH|FV*c<8`3XiBKryD;sZ z6_^0te3$o(x?#^o3@t0&6^ZWSrn45PSwr% zKX65Rqk9>b$_*4O^i^y}xX05qUYAJz!X=f%M7;zd!h3g03-G`Qfdn)RkT1N9jQ#hT z^EOJ2=qxr;OT-I%DtRc+p=iiSoJ1Vg$c~FTJKDHkiyk$M~TN$<#6#({Uh%@V(Xa`uGSa#srT2d0ppBY$T{c-Eh2ZI%Yq5x!|Z zlIwM*?uID@LZ(QDuP~S}78OT`Ctpq(tutA@|1M@!CWVmmGV5S-Atwy? znn$cm^vQ9*DsDE|x)Chz!|6Aw)o-|t#qUblr!>S7@ZJl>5Fa=o?{xl@c?iZti#|hG zCgLlCb+~_SAMh$mm?nuY2WApTucwpjvh~uWYfyad`&{s=dqztuh9en)ps&V+Y^%$znJ!c;$;ZR}66#N-*$QG6-al7WjFM04AZ<1|2@qX$3Zc|+}`3;XqKU8Y$ z1w+_App?;ub)k`b1-+Bw3~Gm@VOl9kHpGaNg0zH<$+hUn=Es9O@%{}0O{+;hxf$!K zBvvACl4Vs>g5hcw`vAYUJ!${?9noInkLI(b_`YQ+wVv)kpu~&sS_5Bwx*N`HU^qOg zoMu-cxzc7jCxw;A5qGCOedN!rgH3j`_ z{cq-_PrW~3v2ZqY{&JDxZ=O}juxc$F{@}hGS>NMGQd8kM{M?l=7hvFIn8JtkAKceb zM%WHUktAYF3U0hr{XEgXNtDPcbvn+FvOwGYaWtt{zLC&}go4%XrJrqIW!z8oFNccW zZ1pL|1!&nH1YE(8QtWfTZj>$vkxW{f_eD;b_y|02yk!bq)@z!8lVAZ?PEU^!!hw6d~wdmhw z^^rt<9ahO6it%WcSeJcSXiBAmDF(4A%6V~k_-AwD8@yItE`f91j>++&kAWtGlQ@(?7EAaJOD7*>OB7f}WQ}l?up6AHqFY1*<%I;>Y1GC%N>uycE>Ub3=L6 zguLOE034@TZuQtBg`vj&i=mM=vRaLH>Ww@b!dEmTOr4B173aK;dSpxK>Gs~0HiNX0 z7kbp|5%8?g{RuX_sU0?UR$7?{8(1WhkRQd`FjF5@H&^CWBmzNXMR6Ip-xHxktiMJ; zsFJP)SkNhn~v-aC}c;fyk~{yo8E%v|HIdVTY$LW0&qp1eR0 z1!aoQVx56bJajCCnO(wT@W@^`Yn9WB2ck8;4oB}0lIcl6EO_*)HmDXJ`P31~NuuJ8 z@uATC7#4B6vs>qtr=4@z8GZqY?)VlG$@A*E)W%tt=a&U&2{*?-)dpG_zGz-?27}ut_^TaJiG*w{_ zu=_z{4j=aCxtFm&Zhe`(o(2k0z{8uAMLC+ZF7&n=)NCJiCf&tl!10Y0_4?E!LnELm z&@8;06PY3j4%v@b!khr|;S(nf3?|=Y9@(W@K?v}oZ${F?%h54wYLn4=KKvG^Otx`T zmb*AXxTs_?!CSc*UWB&HvZ=@1A~^r1Hy4z#3lr?>+m{bnB|RF}wxt>(natqU&YJc` zi&W&_>Ekn~FcxM+#)s5WZJ=G9ex9~H#CKO?7?q}_jAf}Lu=y9h-;&A7stYr_<{iEC zJ35q+LCspxO*kR_Q;H86t9=u_!-Vj^Kv#kj`Z@KPM(1n~70GwjQH!~=#pxM0Otyb|H|Mt$gzp}sw$11mqL=BLt7+LteDql$~ z&Qn^|5W(k6X=GlBarNR{&X3L3tDtO{_50cSj~!2*yY%+l%m#Jl2sr)N-1IxN+2W?> zT>jSoO2pjs(y-=!jeC^e&h4tqwCsCXsqb@aT64!ns0Cm6%1;{(qPBub$PXz3evPY& zPLS^fF1Qwu-0WoLB~~-i3M6qU2MSRCHX7A#sWhbQ;dft1@;@htD?S_fGX14e0)>#lXT!^A zzXXl_<8_k9h5>9i&BJ7VeDx`jfe+8pDuci1oFg$hkxRM`C^bkH!vygYY4X32Pci(w zTf$f_PfC=zLA&D|79NUKYR3R1gfKYmS9*oLFUC^T_!il4u;{VFSJ;rgu<#2S!suUJ zeY1QErva72s+GiuKM9e(4~1Hp31gIRMwAtIc+O^2l3syv%3|^*P?|Z5$=%L0TSS5d z!zJ_D5?B6g{E~1L2yv{kWtIJN=ZQ|#lZkoro*j9;IH|y;Fd}rPL?)wKQ%@1RTvXi% zpz3I0VLTW^99Mwe*rolSQ)Az-KwscOiad2ZK~sJPK`mWZG%g$)+HcPQm3N#wA7Oe( zT{|f+!%p*L^uWs6QM=5^cbv#y!fdsaq2y69KVctOe6W+!UQYGkJWjB4r! zH{(McdHoG3Wz0St{)_n8N|<`d`4b%@A#5&y@A*bSZ)kUvN}r&Rn#u3E&U*9agdsA2 z@($2?oW^w}lsEK$e$YJ8e;WwqGbhhc<@@G>1DE@kF(c&p>S5vBz|JJwG}ra8zTaW|PbI0wW9`o@7bEN-l-b(aXBBfU<@ z%B6t03!henfij=A7DqLy8dV*J3A*%R%*Rn4QeKg14~#URaZhg|#pgTU%4&~kO9G%Pxjfl-?mFM-yQ zg}Qt;`Iw|y>aozhtV5@#y+T1az8p)pO^q~ulL?{TNl5|#o*%lMR{!eNuZ7(c_A@*# z*iL)8sb1L6h1qvcV@VE-jTpro)<*Ch3_ImRt@D@$=BeqAM~cnJJb^_`JcyqbsU8R~ zbyjiL0CS@XT^|6L=CV$D?dNL-F)=dE7S*ouH3FLwom__}djSGnI-Hy*7vi4qwI0`R zwXXyMe?+zNE-0uLsl)N(*S$fMN6GxFD=K<@j><$G&u%qHLJ0#9*tm-F?kW{b1^CId zv9d_mT$Y4urSmdA9D@O8+WK$cOfP#QOEw0l#r4Zc8#X7I?>nN9`t~fKj1{r$Sk+N- z&T3&wo%ifJ@XLxoh?b!9Uk5+QQW(V_`+($+?YP2-;So%L&mGqv(3G-C6&Q=&-}b6_ z8Hr7Sz7WA27{Pb4dY#{~lsYFt-*&5f5ZVB2%L^yb&bFlHB(VFN!q|Z)<79XK?IQrS z{e2)bNu$t3@ZWEUXkV*pULg?$)B;L=%^NXGkDAKIXbze&DhvGE5aeQJY>IznWpcq8uXLx{q%`cesTN(dPs(>4M9 z=IhO`mFBZTTNx6ozevyU+-@V0$+$T=251PT1*8#-#G*JnZXu6%9pMP+J;42egf4Ax zt_qaRP`U!_ri+Z$rQtU>l=g``yg>%uIvBNYqOHaB6LBSE>>g17;u4$V0rhGU^MJcHr9+l!A$5VPrB^P`p9M^Tdc7t~aomUKw>?p$&RVvB0(SIRN>qf7 z`n7R)$jNRk*x?j#!B-KAUe%>#^8|Z>&X4e&bE=2c*GUB)B*}f?Bx}QGFlhJ>T{T`gg+;{?in2I?90jhFQ;k&-oe*V*kzS5DjZ{nECfFLy1pcDH@llaC1oez23y#Id%ii zBb<$cj$sP-kqmWVN*T2|*CRxxNaPrHy)-6CZ0;w&PjVaE9izWYs-})w zjYbz7-~O?v`CXPq{n5B2f>xE{HS)H9tNv4z78!ma5B8vUI(wz1EUWoR!CdY^CTbJXT4~H-s68 z*zcgkCvU(~ij;`;7rX{*KC+_6NM`@~1fmvRq3rr>gTS%ev!57vDRhB>@TGId@g(8! zl_tBs03Z&Ndi=ekljYggPB3NeWB$C?fggp)35Bb{iYx`&4TX z$T*zaUlQG0J2&m{@5udiJAE_t4~2cc-?AA;h zX}$)uSa!qc?yD@zKO#u zS694&@rx3M4qnaP4(vTTFD(0cN|F;dSpv3~MQ$DDHjaqTu30;%5B7~b_1gtjB0sUJ zz?_fZDOq<2&heTwIg^wfQHM{kgDV7|0$l%XpaM4~bEuXO8q!s1E`c6V4V1Rj|Jks@ zxQ2J1T7%2;T{W<)YR`h{`nTZl5bQecMT{T=ZKqsmU@6uKRKf@${tM=tyzkmFx|Ae$ zJ`|S%fN@e8Z@~pv1c6{VPvm>r8)qD@mz&htTHN?BrM{Fb4C0ZXxRWEV_^b>BFjK;c znan(1t8JN^?pfn#gV#4R3!1kYzQ)ma+JTw;I*?=Y6(TEV zs2FO)57Y3hAs35#IvV!QJ!r)+SFsQZ5TU_;`sU}8LDruTk%eoZ1w=@`1s~zB%fwxF z+yX1o#Iox6o{vfBbN?sps;=s&}cv z6u7YBZ@>ll7HfA7L2^LZS;^-Ie82>{nn}kIPC9)hrCdCrH?}{&PD*5vHFa_DzY`x1 z?xFbaoL`x<h<@W`f%{G7@c=PPPe6$9d86*DdwZW%~YLnNSp9~dn!}>u49cRA-Fz2>;e-LQm z-TyFn{{hJg0a^cMI2USVl}p!69T-60f->5B+A8MJWY{j>H5g=^+U&Pf?{CG9Ts31o z>OcuW2^$-g#}JDGSQy>{GSesN6qnTFURGh)XdVbd%J4SQhQ}v{!ef(YxQ>}=k%S>! zF?ab^iVWe1(QBG&o0LR4?qIyuKLC`V`VT6u2U4AaIchVFha#w2V$Dfp2=Gw})v16- zqsANTW*00xbaZlnUM;u`8VAfyz*W!)Za_v_!cAYC@>}GlH`Fc#!JvLTg+rdx#p+bI zfD<-oFlqQa`Fx}(|L3*WIo2T85n4tNcP;mPM^3Om+%ro_mfx+?yt5L=R*DFpr z4fRm9$l|~ES%5`<2asO9fz9c4r?Jr~J9g7ppTV`|d-{N#5Id*IEwJ=B1BbF;gHyrH z^{0243*^b*UJqkCFb|i&qr3I;HBNtmof}jtQamcL^lZL=7XSVAnJ5egS0uo|PiUyp zXGCo3v`yY94jTrt{0>?yfdExfj@8)pZ1{)b6+5`&04=#^4{l`-CJ43;0X~{BQt)Qf zua>B6NcoV<-P4`~z#B`EobVe#^rH z)mWp0;Rr@^lG`2vj0+%bZ5E1|a{6^`A$>2=IKz00yf8iACH!;3D|fez7W*AAuQ6Hs zNb}Z8EXRa@JJ`v;LZp1~xVChYeZZSc2kgih5QJh0^CwoHB=jTvOc$HPo*RADLUf|)WH{sZ#E4CH?ZJh z$h9VYTGm(m;N$;2F&bSDbyA56*3TWydkD1F%S&AlZrKLzIHv@GMz_LZ90NVwwO~y$ zwSwm7uX-~qkAac5$3*$fy|r zsYz4}2T_zQH_vT$z{viC_cfOb5m&7{Kng(k@wpP7Yu$+Wr@0DB1k7er|T`q zc-|sY%pprxiKHk0pa@#wZ^5VCeK(x)8!A>APo|^2p8f@03|*hZJWH2%Cs5}Ytn*f& zJ!eWu9P|7OWv@o63r98!Z4q#;vd!Q3>OfF4fu;Ip##8F}z^+rVjgoIc77zY{b$k}& zBAF@AX^njF`vdA4BN8vHegQ^V$Rr-1Fj6-s3NK`Na*S`IbAxH;d)N2F(8S1ErJ6ha zhka$@x0{cvllv94_v@POj4Xc<^OS;vNQ*Uo`q;ki2qMN^t=MGnv;iwKBzGd{AML zL+o{#i_!T~e|~*trZO&#!`4vY@YJ6~ow>0ck*q&BY|7B!aKkw2W8i4s=YI8)fGgCC;GkA@cc#B(2HJ*|1!g!y~FXrt8LET?WEWqa< zw)DHPvGQ-2=;5`SqdRYa|E+Ocg)yy%Bje&J8uPE$z@eXH*i`9l1nBIQul=KdW8orf z*hhQNmdR{sd4^TPa6T?>m@Iej*X09Hs;)~*cIHEts>;NiP)92;Yt`;STVhAYGUb%IF@aKfH~051aHcf^FzV9X4C8&c;l^m?BM^;0)U2c-6!UJ}vJ=FZR$k>IVsv2F(*S#At+BI?A{b9HfBy53Q!eG*RWv5<8+9F` z+bDPQ>uFXw$YZim31wikDKZ7w7tW2}Y;`_z@FFpNciALCzF>>a1_X#T%TbfnfL#^I zg>b8JNNe=j-ZSP~tpP|_Uwq#rp*klvcGWruv|Vo57Y0~ga9__b!h8;(s9L!t%m(F% zXoJ8II!t049b^Q~499n{Rl+a=4wxhWOqYLgfk;=EN0A%C093cT@fSCL=&sn+b8v;~K46 z?o)70qe&u{JmI6@3|8^^aqf1m^Fob!p0>wBmZn*E@zS69dV?pQ&p_$2vLc7n^-p<^^>a~8hKgmfGl z+c8-{zR85EAzblax36*X2)F`CLGdbEogmFoGJVr&8(0rFUL>)vfoj*Me^`x`!Sl`7 zc3c?|3K`}}JooFj_V4W#JM$|Q;$Ab;&oq7NK_6=BD<5$Y(#r3MV|}%>=vnRRvs;4m zgJZ|+de6b~s$e>qDQY(ZNF-0K70>j96jnHzqtfw+qaSs~A@!}r0U3)%%zz3X#j69O z{@2@M0+=>i^KDIEOYd;}BFYtc6c2b_!!)*r;IEwigI+L@N{vXZLb)>G1rUDQhR~Sq zgO7A55$|o|qRtOuQ)X0iy=6S$^R{z!orwMnI}4Tr<4_8@JiF6ST~`-c3MK4?M*gLM z!~wytEUYrBOzuiQR=F6kD;&Pt;PpgC8W0diz`XmWS(U?N1^sq!nZ$pu82Tvu+#Jl| zhu;~NeX63d2M+Du-Zm{TsGMvXz)8|W`7vxl^UxT?+MiBPJ(=(B@q%qnvYrbYzL9ku zbqFN87Dd>^E|8Q9x^KVmr^ZJOIl`!~Faa!tX3L0=*I44szP{|6t_w0hD!=9-sBeO$ z8IkU~(iis|a6g(UTS~L~RDFxNusv4Uq$rP_hAHWC)i3yE%Sgj2ApK{e^MmOcYSeno zfx55NX0p)-}{s?D+B1y>ngAu?}R zg$uvb-;Hj1xoH9?iNkwI0%caR$oe z-1c8-Bpd-j!M;c%FfzKa;vq54jb4>a0c8Jf@u62Un7zX4-F}w&fS=I`p+|~fQ*iSK zcrel3O~5#)2BS5qn`gKK8?Pe7S}0hhBgdd7^%j`+ng`Z_M$kdJB3Ij|x}-+s&5Mtg z+qj`T^xqs^t5=<-U<)S?;c(CE*C-_{yp|2?&Cg#1oEmjd%4Sg|!ii^O54^{V@jtEV z@c3Nt;(ga;02_2h>bh zI2vW#>{dVyrnzXS)|YPNdIQx3q+bNtLMohe(@#?r?=`RnN*TNG)##Hw2K1n?r-BD4 zgvw&BTIi`t+HsV80y114OgKBnBE>*21;v}x1&(57deU)x2>p}K5XvHB(g#$ZjX*!U zXi=Vu#j1lXWO%%mLk`lY+Cbe>m(>kq?8iXkZ2;$_`=CEmx2Y*{!GXbFNixtgaz~qh z9DrF6vQW3_0Vb0Le*~@#C7T=2>?VRld60T`g@*BCY`zORY=YYjC;`(TV%r(4^H7=06)AsURl#bO z{nPI5V}r@h8E9~aGgbZu4g1j;?P%X8R11XUv z0FoC;_waA7hO>vBV!CqvfdbFr+g!(V5*XYvolFWhy`wE|1pR=@a<+3&6j)0%?zhla zy3#(?T{^G>H90OBMM8tsmHEctG`REP;j`hLVljVS_z-WbGTO+nVz^B1wqjP;M+^z*JuX~w;f1;8x6zny2c#>z zhU}3&c_19J9_s%CMF`!8+vK1m{+KN>3TAn?CeK0aMhf0=uNdFtH8usgKfes@{Cb%a zj6Z?4&-rf~-g|UcN$Sg$znz zl0m0;6b!ZE>JotB8C59>K%;t#dUi(3qCuJR2vG$4d`1SPp=25277DRDcMrH%G}lApItVhx8!i zb1V&;p`c20>a_e@Pw3!Codazn$S`Y;YM`Og^>e6)uKg5Q0GIeT#0XXA$z8jgzH4(M zgjNH_88X?EP0S9bQ{iWYzbsFq1=-ALlm1(e!Lvk?2Ud}nmCK;SaxMPxYH1vrh)>lP zAO4(~zEIDJJ#-zZq187c`mp@#=jS8W@T@zf(9YFg{t5hJC5#)mEyFlQIu-i{!M?Z+ zLF=Jq+W8HLp|tN`ImwVMnEMTc@cVxcijJD(X|upaKN0(H+B!jC8z5~)s?;6C3!w6n zrb?O)`aWGy+4t;b8wHBB*~030Kc4Bp)$oaJ(Oqyb+P*S2ZvvfK8LTkONPDgEDuJds z59V$*6dGaS1w|7>{}lk4j+or}oO#ex&iZ=A#Ah&Q?EHKCn@ev4q@OLe>>{3m?`+8{ zy88o&nT=5Bz$^2PrEt>8Eh1DcP{fXeP~qhUlTw`YTapV%%J%SPhF!n*(^py?#z`HKmUKfIbi|9IrtEN@RHubeyKi z_hcoGrb?M z7KO87Wz)gKz$qaVd$Itu#1Zh+r)8_#8$wI>zB*o26bNQ&?&+Czs!MDmJsAg^P@h}N zJ*qH$ZVbMDe)&7lLSYoKiJgtj1yUyAIdznjGcoSR)DE!Fct4m1?ce0@LjIQwciFis99`bAHmw#J%{*a9DBfw?>wGlz4}8K; z=khCLoflt~@}GlS{M0x|X#l0lw5(NX5pM>2KRxXxl5pGq`}?%{vMa2HeRgA?WKYZ( z0Zt7pkj}YxxOHDT-FNM1m>t?*j@DEUoV?EZnXfHU7)tsy!q3teb67@Oas&*q#Z=S@ zll$~dYzKi~43f+*fE}a)NO|;A-H_32xzh^}x?96v#*)Fw!B_<*y1diLu;T(2fpAag0SPzLl6^ECTX z3QY%sp7o=eYyj^Pl+*KPN2#TPr!1?hnW;N$I+l(cFdjS^OMqeH!}0q#VxIDYZ-NNU z*9}hJCTMiFrmFHTLO+xUe*(M(b7Aq^0b50p;|`~%cQfV0UOQEuf@#zo-wks)FeO~~ z)1f1v#zN0v@TfZ&c*!cj4EgW8f0u(V!QENAl_6;E05Qd~RRb9TLu)p6Da#!kiJvn| z!=>+dL5HR%FeZy7aWBxdoCd*^o1LHOfL16&2SRCce_=?3VgUJUe5T3OHE;l=7c+k< z#;~nUUfff)VBkTFdb5lw9S~v}bQPmV!dlotdjjuifnb}yP-nozt3v%(8lP5%7WYB%^z&~eX!=L3 z&#ZSH*E+6qX!;Jg;4`g(xt_0OzooEagxx|J_KE273R)p* z*{cz7)~v1JvB|lTx>GLr> zRE7t!#tC&lP9Z`PXRs=boXOv$1<(eGk#F(kb@%H?l%kv~?Oiz{i!pIC+YoxAGl4VH z{Cpt|w71Drv}ivr*pM<>1ij|jxFCbnFzJE?c1Tqt?LRSIDZ+ub`YiXwb*Ji1OSSEz zcWCWc)lhBYH%OAV4DPQ<>P;ROwNEJ!OU$l>epcUa*cokARicXyHf7m7jrUw9p!X>- z5nBfcB6^dre6jucvlTgOT1jWT6!pC!cOR-sxNl<^Twv&wj>Dh5jb=Us;C&QnunC*~ z0HHemEpI2q>@ybp!iU9f*N=hB561m_HnSGqslC$(V*3N~Ztp8a=r*f1o_FBI!jDf; zl(7E_>lkxcup(ET1Ggy7en6Memgp+37cJ$6(Pgxd{<%b-&h5415WyYX4r+Jp+ z7&TvW zmP;F_y04mH81H6vAOcvRY^HBF5wR|FS3Y$m<#SZub>s&8=lpU*Hb7nHsMe@1^If`L zHeiMv@aSW>$MBJEDuX;v)J=)#0mnlmM>!HDwF~pZDP?S-m<5|7gTWY)Gg<*TxQj;y zBMEK`P_TQuU8)q$hpZCr1GyD`xbi-;yIWs#Xpw0t(?C(X&h;%}I4ovbE+c6|fkbQp zosw}8;o-=D@~#`sdTgFCc+maJr=X@MOa0n|vH#50_QYQ49`Wdo@B?1?mjlC)$~Q zL9D8FQtc02ohdEz`f=6x_F5!wQ8B3CbUc@XBPjd_wE4u{3%MO>+ z!a*{Rr!Hizi-?O9(!_KI7is>~VdUKN^B%c@Sb0~#$(i)>$xa1Gr&A2U2vCw@hhz5x z6i$xEY0l3;ZZ;*PH4s4j!HfVq-ORl*;o0GTAwYbMUiQvU;v07R-pXca2*KbLC*w1~ zHYJY47ympPbYKF&T?W)$OGoS)7mx=37f@<5eTPrVS2`b?&8~oE!Qi0UAwDd=Y%&m8 zhI;0#Hz{=gJ(PlCWHwKqIeuY091?aZs)Rx+OdK1gw_bPGPHfed=P9fE8^enkDFP*U zAu+#T@vgKWx|T~&nUn$`+T#V({mrnJPL-FckrzK%K%q6pbq^FM`6)QvsMq*4XU&W! zRuDZ^?lz?SKJ&OI2G`#G3#;$f2f7U|bvttpVqOJ8t^Us+(r`FQrwcFVoJZ`E$FI9X zYUKs~0M`I@P-c}k3h)U=7+Cx|)1W205JIqN3b-4Udpb^7~IC>%t7jAW5Gbh?$cUKWPt?WS4cPe1AYmn5H6FK}a0N z6YnjzwUBixE3VR%ECFK`y;cX5O6iY+4i7h9-+x7OKj?VlZs6!627GGill+%3=sD)m zVq44fc}RN7#w?#yF1##A>v}YVNo7+*;m(w=7bz1z9wG`Nc`G`{eEX5xL}&yJw-gzb z5TqtvCdscec9GEa&*m3~y{lT0WhLL!1+ol&2eMH(%xhU!g>i$J2LL|!%EuP*1#r!8 zy1OMZIlKzkJx)1%Ub3KoJp};|W9O)5b>5bxOgW3gf&l&2L-j`U!EZ zTl`X9P{!vQgN=s)S?@J=bKVsxl=@4#WNF9CVEwJ|m^g|E_W)AnGMcAWSDW#k6iZS4 zxwdwsA>v!bwEwNl#% zttzcT;r%* zWp@@{Eh$GuQ;NZp{ys3d#d)XyZ)i|qy9SSWgu4F#Hgzc3@0u*ttyI!&HO%p( z(me_+J2C0|)A`WcEn-$7QT;*vyvmMq5~*GRE$9k^W8Za%3CWe0px)Zjm0;6+A*&P< z3v$8@P`OR-Dwv{;mBz?$2XnUJ9cI%IAl3>rJl(edBV8oU1SakjqCrPWcrq}_o_$M?EBNh^K z2J-po14T$q6*SUJ>iBy4^_?(C0+(et7gf|D)leFKE=b$DHe8Es3Ynckuz47-4Kvq* zTIQr%3CSAnl$GEGws?Mqp)x;b6M4*)wbUm7cVFSh$<#I@1~nc(=-Bt8I^oyLC)s-X zWoMMN{j(U<<6x8DslDyVgfjP?rArcu3<^T=&8USwVvkl+%Y}yR@D*|E@v^4lh+CmM z?yOZ@;`~_2OZ3Cu6J1>ap#zahF)gq4C8(ahXjs?IU#!a_erO!b?H>)_5|k3P`_G0T zMnbrR>3}0SF7_<3?e#LPuoob~EzR(Z#cP;dU$_4Q8?hhIJ;>fnZufNZsvKWvkdqF_ z7veDwxVz-M?*jP6a(L$tTOsA+%WppG%H18Z<3RHVuHRg3iAyVt)vG*zY2}|FJA#00 zkF%EbqHq{4F($dI{^dzt>vUFfn2|dFG@BUe1}vC4#I$(S}Zu8uMDSu2>$- zm0>u@H+}{BKN0Pc^I14MT41L&ik&>_8TI7{Rdu_c9Erz^j4(2NICt{{HoUMYCLJ`8 z2{0!NPH7OlhwtH%qrQUlGB64yRBR5qLLwyb)+VhSK4DN!SA7spy{;=NnJ$l*p+XVB zn72v6)HMVezMUG0UDdC?6h0ZK`?j1F-tj`-+R}0x!tyAT%Clk?7)iZ;yZ(FtZ%?3o zAfrOQPn6|#tRBZ!^QEnYt$!ZaC%}s$V$0RmH7tSE?ZWwiGT%0WZUp28oZx8oJZp9S z)p@MPc1Y5}?z_#(uYb4zUmSn6GMWwUjeCI-?m(7I zxCZPgR<`DH_T0c3KZPgBp>Ixcvfk6rUBr`u_xGVV1w}GOPrsVa8#R2xus-;M7y)Je zXT=yQf5;2Gx0GG)COeNL6D`#|RUTr_ZevV$PBnkmbmGfq4D$fexD06n@{=tBEz#J} z@_r@Ky6DUJS}8M&5FLnvY^FqAmQ0+yXGQ-63_L(|s0H;s8RPBOGGR7FG1FhsCrxYt%dHf#|CEtT-|*o z5Ph}fJzMR%q%N1>_XYKTk4=>mkBoh^MlsC)obW7wJLaLoxQSgS@G44G@$y6JwI4Oh+69!RdF`62bYA|h;*GCRQH1h2 zz2i`jj{|t@nf3x3e&6`NqPaDa=#dw^uvb?Pu=En!L_*Y_)wAAQR@?^4`uFKk$@*>%PMvN*N_eNIm_ST;^azuzjc?e9FzGdCOd`0InIrTd6>ChX#VcY0h`FS zB5JM7x|I~+1uWVWysB`QCuV;cvk|P&)cJJk%De8r*$q+>!QV7-gU{vyq*1t>wf;K+?TXlj07Q3Y!l6+X3(M?B6TrKr1WYsk{y*&e4ESt7BPh`sYn50Os-Y7)D_Z z{w-{u2exs4{|`O-9sYlQ!|(j=0kV_G%L)H;J-;t39_N$vpA_)lPoNp0)@j#wWcxRf z`BROM{6GKFPGdZfOvxYrw`Kr>Z$i3j6A9SrNQ;jHLFEe|fnB+EP@RlIA>;&{&kFZh zO+=*r9*{!;UKFhXWyn`9Lvfsjt#a0d z;&B`bA%~6v6EfY$1OPNMfGEAjJ%>gheXpIk4Q(a=0?;~7_rXSp-Ttl*a^sIZL8OnK z&%_dJo-2S^(JMA$OS3ro_VwNhSdH{$K&gl@`qtMzi9&Pt&%47Q)c3FLqLy_u#|13| zK;yL&5}oRvOJMe6gSZhR&>0X5Zz7YOz^9aMRIK?=LQaD;n$5r(;uk>h!-z;oUb@%S zI{At@m=F2$@E<^F8-Xe#JWGpr|6ntz>;_`LwOFO21H3)gp{C~xAnEyLdAw#65c95+ zNYY#mZqj2_&L5!l0uc6;X&K^?Jqp+h8A0G2z$brx^B)LbKm@N+pIr%SmJ9t@R%t+~ zLEgt7uvV5mz@(Qz0pFe9*!(V(;L*paP|-*W|IZ%fMRtq;5Z*!gFh0>+=Be^P6=ld|9|d@V^tonG~m1Q8DG4d z?$d^sh1W_z;N;t#P{3-NDY|?>$*%K?48n6uA|OjD1Z3U>w!2nFKF)vL6q2Cd5!cMX z;WtEv)F{M;v!YdD{J`mBmf~_f6;sZ9jQ6WuFcL6ji3em`npYjF+~~dk)6FD6+4O0Y z{lBgZ9{c}`9rXXnw)~%8`gaGzU;g)my8n5m|MN`$K7s#PQvVy0hyU48f7jFh|Dsg= zZ*i?u=!4t?HL8m1ADBj=pZ*Hu9ubgq???8H*UUoJAqW$w0(uKTZHFHqJN!5Vf zspx$i>n*TUc;^i0=5hw00yT@0J0Oqt%nX=YVn7DG1`T^45jOMJZCj_x-K(}Tv*Lub z>R!!KX_wQp7%}%PHlJn4Lu=rQ5CQ&*R{CoukViN{znecbJk#wi2$E3BtOfx8;Z_9< z-+uA^mTphMEXKEJ1Je~iT$H$0<^CKPc;+tAz{aYXoCIX3qJt}S7yvFunDO$?j`DS< z*r@%U9pwbG#75;eFC*Nn@%_XI;fyWBH~^WRMu6*5AJ7rz-CE;T=vpq*9$B#2=!w_fy*!|?^=dF;UC zzN@^AE+(2rPv#T5!{^+Xai{@iuPUJR$7{UbLfPFj4!BzSTbWP2~iE&Y#0H&w0JuR6(f{su+ zTH`k5P#Sm(d4ZAM7priVIk25_3#VjVE~Gb?o=dh#BSz>Sh4#G}gD)@hB9l>_{(3S* zy*0qJlg2HzYz*==%|+NInV>1gNF$GjdJs%NsMQA^22QI}jk+k`-l8ELlsi)BCH)kw z_>+A%NTJXaPH82kryPkX#Rh@(bf)GjJUvf0P7^*Ep}@TXzy)TCe4*iLJUn{8q&tw zp}z5-#QP+!H3Q~yB{aLwjd006;iYXHff}V-Gr)2U(aujj_BdEKU1|jAWHWf!^Nix= z0UwDT$Ac@@c^ljyEe6F|lk3#wS_1F-V;Vip_W+J41SU$@Kps@5ccxX?@}SCgkF*H> z2ls@a(Lz%>`}mq^gAcG8OuGphM{M77_*=mgk@vECe-nmM>4G16W4g-F&Kh?Fanq=i-sO4Iwve$w#wI015e<3(~5pkz&bV{$+!!h-QJ-UC-%gC-d$P zjtCJGO6#HLlbeO|6D$1n`|ilZ_RLEzyx+6tTDwfw{%mDSSv-@I?c~38c0pZa8haYk z#iqm0eCrEf9V=oZX-kP=3|gUEHBKnvLHtsEDrTjR61WStU)HZy&$N-D5APx+8HIpN z{8_S#3TP?3t~eaUmN5t@6@auP-INeB6WS601AvGZ+iGlb*kj`22HP(q6pDcC{57(+ zjqXp)+|G=bapUQ()TTUAFf{==kNV`bO};-bOrH%!eMN`Vb|EGApSiQ3Yr;Avf9`_q z2GnMXG|21*(r2GI_NNvPOyCAEY5jEo&cDzzljfh#{Dwa?5#nurJ?)4F)48;R%UAZ6jxH)2;q?>P#r&-j z^@UL{zE1ovdv^)bSwwV!wg|N2@?WKD01C_kFCaYS7#8V@!XbnYFE;7t0i-IM0M2|~ zsx#W~z(T8BQp*3_p+W}r_Wz}>cLGeS=d_j%>i_nX&ItYGqN>F(*#Vs4IP#gMKnR#I z*8o@fQQF0i^a=`~3-{&rpYGG|Du3eND&GaBE3LmA%o9?b5ra!%t0aJ zJ9jq+jDG;Q_7+693$+6*(TO z!Pto+o_AjXE7}@3VaGNx#8^>S<~9&mG&D-?A02wZfmAu=!8Az6cM`+I$6IOp$ru0w z!(Y$IRI-MVx4uWZxbrsy8RS%m-)?2FFy&G}2Bz)TD#4Pot7vws(%=Ue5YJNk!Bn4F zTLCm7-z`-Gv88nY_lf-dy0Re4D-K|yYy>B7LpQu*roZp_;fX*W+;v198=(q>1Pv8| zD9R#?R}O&OvZ);S0NyUTs#$W){q=*B63Xy|8G}AM|GnQ(EjIJtTv`O00X8Pj-4{rU z=rU9jX4gq5NrZWprgd!w>3tCVPHc&n1nrV z=W+?*`61~Ue>~Cy@t{$2Z4tAUMkYNLKRpXCzwwD6R^!RvZS}A41VqDIL+QDEmD%~t0|n@A3EWlw8$2XDIc|kj5r#}igZo=hs z!0P$_UL*92-{il-x(KVhv zkX<=!7=T%)yfpX7l|2`5+cc*63N!ax_u}|z0}a^Wn|OF%eS=|@f1Z|lY6B2Lf51oH zKyE4j>aKB->3rXMEMR*G$opn_pp`>^3EBJiLO1>X?gd7gN<`=ahRlCc{KttJzhBa* zpG$G{K__N=t-I3s0{sdhcTlhrSc? z9nPwoGJn703e7gesx-0zgpm!IQfFm7Sd$FHY=UX%ZG@J2qz9<|t)M?|2hs(qO30&^ zAkP*wEiQG2)Z{itF4$s?cs<`!%{l{XmbO)Rf&K5I4dN(9hX0_7Fl8EtuxB^^1DX4V zMP5`7XuAD)rW86*2{{bE^S;>mo0Xt6ry%H8Kr?;>Xg{nb^`Nm3H$CXtaXJY#m?uRI zsv7W-7rc4C|M`gS6kwbcB{uJ?`)d>{pxPO4eMo*>umKV0wjEl~LXpP8>DhSh3D@7# z8%>YPlY#i%K()oRjW*2H7DDxab1nYLHI_&PcEH-s<_z?i{tX36oPusxmA%zw%JfGZ zg@f7?*>aPgvp2+4=h-Lv(R2>ce1HGXd|C*TLq{C}dQ(pd&?k_spgMo-dMD3nZx~ z{skN`k)R}HTgRcp&v9z$7v%WYAeT#{%Yl^7iZbs|m2Cw{YQ__8DE)o$7pcDw6eN*J z-2!@#Z8L{l-O=IQ8VLTJ%!c^?t6G(V8!K4tRucTK-pUcMQ{}#JFwJmU&k_u-rTMh z|CL>TxZ5@1GedzaMkh!JjG%Dmq?m@8)HK#*2#8KlpPJ{bAPg!*WIu`f05qDe*=v)k zt<~^cemM-Bwi~8<5b=kh{Cqnxc1CyrQW*qy_(jYHt0LXyw9~Q?%OJdS~>@&AMLwagXrX)PIz?hR+@Bu15P>0Hx>wm zTwelpxc{pzOzIC8U_j_#hY)B@} z0dG+yN65v}Me4Q2uq?_5M@d-v}((I-oF%tB@ka%fgamCI@XiCcNfl0;> zi0h{IQfbR;vxvY^mA!JmbN#`uZgi!L5K;DZ^%}PxU_p@mV0C<$7a&Mu!aJ=Yh zK2woq3ofF1w5j1lqIjQJRc#Vfmgi|DqDE9OXUZX-+`Jc?G2T|nm z*PKd1r9~TOxh^*|1z0R0bgjPr(w*19yXqT78v~~7&M)JH<-PP`O1IB<+39NBNmt;`HdMVqNAhdvmY~)B7Q=4PF~6cm{6=pObL0aNB&v-& zNkEiOVdrrQ{Zp+JE555%Vt$1sM)b-HSV77BTU2Lm<2ikmG;Jm*_y|$nM<10=SNu`p zMqMj1O^_w}JdA)@3QH&U<;Js+cL{xu6L*IVjSYGeS|gV9oaQ7$zu8v9D0x^7dRez6 z4xOfT{hZ$}qW{M&ylrJF5OZ$xoa^hSYDC#sFmECKK7Tkwan{lThz*G_7Q zSM<@m7;Qe4){iDy8H{f4_3A_>tbzoadklgtXK#@&p4v1)N~_4YfNz~GTecNMc2!v$ zki|;9Eg62ZR+SvyMjMy~@eQT&kX*xQzl+yNrT9EhG;5Ek9)$5jELBUZp*Ju5ko4bg?-o z%j~s3-Wo-VsHFx;_VjWn4)J-3%35D*(d;QpPy{iM>w$W}tVFR$wbF`i=jUg=^zDXn zB4hrLOW6VL{_h=VimtCU{`wg_RdBWZC5>01U1?M3S?(tn7*_cWYQnaJ2lkj--%Lja zK!YGPyU8YLsWMkaMJ5D z9OLI$+tT=qK{))!(~^Mr6z|M?zcltHoNi6gMu}AVA8eK!qWfbf1soWr12D=Tr}d(0 z#^88KcfE>X5vz;fxz6c=W^IXUaEG+D_t&R&tiQnp00Lxhb?^5tPQAO%f)OG;&&I-w z#(n8`Wd*V}-;$FlA#l$8LPh3hfg4;#K{2bat;<)}GC=p#s_)3nVD3kcb8pXIfQfh$ zxRugVQM0&RIQdRH%DqWyP9)1JPJ9kdrGhh9v5>fXTruPpE%z-iD~3$PhOEf6lAfm$ znePrHH)-iDp6|_Nr*(U(X|xwo*YPt{p;49pVsod8=`rqat$oE`LF230&aEpiY_&x- zayws;`93$s_fQSl0;HJ@z-j${(-_$Pp@%BApT1_5ARHZ-sDHysG=zo1MAGqf3h`Hb zDCGH!19iSbJ$d}*^c(Fw^;blE^!-&?u|!3ts1lm!B#ma#IUthr0Mo7~ECc7x*dte5 z&ehaH&9(g7=NSclofN(`oe<_3l$_+mgok1%uyt|%`9bX=<&IAjnGszb%Jm8jI178}3hyst2 zH<0;$SsE#G2J1HmS?X4Y4xA1}2inQA4m!FFNr-$Y-{TDV1&}kXq>1p;esJLfDIaUU zG#gh4+akhP=NsVTo=E%33I%-6yR)fn^W;kQpfcD~9l%Rgq^nr%_<+Y72uCg+88Hp) zmaGh~Y)3k$6ig|VVveV7hq3aziKF=6+kfc{d+IGvq+lDk3%24hQ+LN|T@SuEm3;{M z?*C4XSV*>!-=e$#14RpLtM|OvDXzLan0PMX+bgyl}`u~c-q1Ta9c5CFR z2(!oEiv@1;uD^)f=i%31uXTD(Qf84wCBTtL-_@y>{CUB)Nb1UMmiAYb52s37^23cY zL$aJ&61*35=($m(1VkN7vu}k(mh~%rtu9W7vx)Q3Y%kc5Oyg4;3mnRqpAWiO8PLeW zkgu&*p)MKKb@3&+l`S9V`AgX`0whG3i)o4`?#z)xtqk~(gRPo(L*vOJd@2i%+VNyX+Q#Z^$ zZsuchsq^E)t}o`T`G!48F?nwt?VTmaeiHXYNGrFdMvHx4jt2iTu1trVU1OR+KLBVF zS~Xo0Vp9#DRyq|w;95;l5X0-2+?iv%ktS>?9n!5ld+)_st%*)$*v;>0v@>Dl!1&`< zc`@6#Qv8BVeY+2H?qM>)a_O}l!C70ftuu3pE;jGBgOpD^8uFp%<2S!vvh7H9#pI%o zOCeoa)<)?dE!XTf?4cAHSfPSGlC~%J+OF%}uslJ`vu&=Y}$rL@tItdf*N3&7*LKkpV z_%3xYIR@8Q#B-nmgQZ6R$DQ*>#}ZTd7cYI)YJNpoK!c67j<>pAU`^rX(LkqLWU{kP zc;n=Ar2u>`(p~GoTr1q!8nKICe)@2kbC49`x7JP{0wR*Wef<1&?Gbz0L3bHO(2lkZ z4^7sP(DZxQX`wqUn}<>lb8HKH7~}IXZ;w%zyLfcib;j%KJxr_jK4eo;izHlYrsCQ^ z`e)gW;TxCPD$d#-MpD#rvPz|D$#dN+JchyVTh9HACNsHO94{!)tJz{o70{I=;9YKW z#ymp$M3JdK)4_V7Nzxf}#@o#-y)>M*J~nkZ{B2F4v(cBjtKN{aDY?$uP*7!LydX=# zrx#A(v-Cu`wwPF)a8bYd6Rr)o%VkORzK5fFLFC7JU4`ZZ^M;wjZlGFA;d=L{V=MFmEr7T!^D>CX9S{5k~cUOPgvA-Q&LeI zt;!UcoVuaDnGv#6xNr@n`2eTHztYNWTQP{7ZzUhg@WQ4gLVnHTdEa&smlq9Hlhu<< zrFYMp)Ow#Fnnc1ToTSf6gw_@lQyS5d??QEiQ}2w055IU%lv^e=gOd8pwkmismPQzh zPuw5t+!BeN2~a>fDQRf-R9f!QoEtx_EvY|52ndVq&R>}Yyx7U;Uhl#WmG)e`f~l0f^gmA&`^A5H zpnMLM46p>E$Rc9w2q;9)NuPHV1iZpb3NUU3Tie4=7an(01&;L*-LM`gf6Bp%$OW-b5?tH#AvV)36sr zFnOyuQr?fuPtfxW9xi~)8Z>9PU!}bO(R=9+(qtR%ViswA9(djJ)XU;6gy_AXTW7g1 zwQyPnzJOExE2Rb>!A9db62(gZL5UNgP>-2j)+PMta`d~%PJYJe!pxd$N;_bO^^CWVyfR_pNhW#e8Fv3*$Rw!q-WL;y##$LvNnSbkl%x`pOyHb&US*dpceQ z{#%Md2J#&G#3~~p+^m6#PrcSyU zJ=dgT;C%+d*Gf=i#XQ134E>pDmHsAI=uw(!XIn<}sY;<~uTX-JN>aR6vR!!GLNK&? z_xpy;Nf=Y9;BBX!EbegvarGXaghDHpMzbi&TYk~N@g92kvil6MC8ZOK9dXjpnh>4&yQhkXJO!Gljet~DNC;}!ZYkvjXg`afNG)lc0vm%g>Pa~?^s_qGzvyGm#MKh?3#Pb5KLWllsR1?|i4a8r^lC)3v>%=iRB(m|Kq zx+>%C#KGS=^fOU7ieeL<+v~BGR)~CEJ4+ytp(J=kgzlBZ^j^oRscS?4+TJ2oH`ybz(H$Zb)7qxkYq$+ZhhHIkzFr5W#o@kC=F4q`2dfDrG+dR1r<_{W zj@~CIIN{(1V#xP>b}WRweB}4H0Ii)VWN^xT_W=vV<#=w!a0H_G8uLEvv5ri3$Re72 zUx0fl`q7zyvD7mIGogAje z3^7ea?6iyk_p{0_f{_>UO8YeP=>t$Jxhv!FiW^z#?$J~wyB}{Bz1Vt6O(U@PoBin3i2iBAvSk*Z3UXSK{@#_j^Ys zvc;BYRFB3nW=9n1+G(d3BesdYU5>;w-HZFKOgcw7!8&%m{A&20Cvd#`IXS1`gE*BpE|TyaI8dqT@9$A^6wJ=4@2 zu>dpRIYZpBI0Lm*XjnE@x7yVN##AbJ(;E*{$J;9OU4~+D8zCeiqq&aGk-J|8?nI;bj>jnf2+P z4|IsJ2@qo(`S!;4lqe|1?r1_-ZtZkUQK*(S73d#4t*~n*hjuI1pbarQDG(Iu zHe@}M&bOKxBN;fby=_1&nAqk(#pQsaFk%d%={VkcU8;iJ%ZIQ&Z-32WZT;i>-1{x* zQNxe6OQ>au=$uJzUQpQ9*o-6~j0%6BF2J13B}LW36I8znAYcN$QqXb-mLL(BtGx#l z#S?`iPs2~9yaAkiMU8)<=~ODMHN}>Q=@}}H5&GVcErgGSH-RkPY)*wznnV8`Y25+W z`qs`L;uZXt?^o^1HsKAGt{1XS>~D|F#h<&u&~GYN-^MQou+iB;T4ORXPj_&Wrp+ej zuY6nlv^VF$4#`&GI$n;OO_Ldq+{ceAJ}9qSwQFrXQp%jiSrnBXpPJKoMb6Y4G~6L# zcdp2~@?cb_Dd}9mHQXW-Ki{02DE5R+)B|NU`MiD9J??d~>oMvXQx}F?Vxy#) z0@G0KcVpfpRYqD-)FL8Wsa%7MC5OXs5`zEfWGEeBMY?ca_Q>4$!Cb@qqBqj8U^rnHyS8DWq7pxemEI`N!Ixt<}= z3Gls#%C3MHAOe)Ov(lMA@Mbp-Sp8N5$riXy1{>b;(|uQ{y|w|rBGYV;OYFn`N7o3B zk7;|I1^lr-Y#%t5&! z>4J28oLp-r8}8O?H&q^cE9Ya`+7NUxLo}~;&8?MVls=Wc$~v^f0Mt1LPd9v%%bcCx z|B!%9@7>mZ^?j$9&?KW|B6oxQ#Kebm>9@9vk7t{!9gfW+M1*k4ywtRW_k>D|p;t3; z@In&p3|6h3*(x{=!>1%oU#)hW-na~gU8WbzPY~yAncHn{Q=z3=B3*;xdIfM7E|I^l zjV5?r+g7U{&V2u>o+*mi!9bFlFJ_NA`_$$89c@ib3JvGiC`H7+qvUfPS+HGn1seLy zSMf@A);n{2xD=02OWb6!c?(j#AMQ}sG*LRZlKhMl{&6e!eqxIN)o826(=EB&QHB+& z-Y7Iugb~N#gq!Vu!1AZ+a>mA(2%2h0M)SN0+Y@}uS}WLBj$LKxz_qC6?+a~H-#CX* z(liERK0Aq-q;b61;cOt0%j??CXggYEkE|hkj4K9>)BR%US^KgWX$DV`PRCRDY{B#~ zF>+g0SHIzli4`XcFsl$L{=l$VE1Z$SoRzAWE)CgMbVWTdcqGa0UW~GO#h#r0;cm5y z9>xqC+b22C6UWSKJEvBw!xbYzGndF0pGbjgbheJ|3S|(duh-2&S|v^`M!8uh-F?)& z&Ghv6%#P2Bx>UgMP3Y!V8PzITK9!7Ar~~C|LL!135$X>bk!qv47<-Q->3_~6P zDoSzMSd-#_;-s}ytSm!so{&}&fIkW4_Q8SI;w_9b`|gGI-FL@IVlHQWk#v!1aoBc~ zjAV`I);5>HW3~`$K+R8cYDt-@plvK8Ft1w`Nw3Kbk4Ur`QR*Ez9C{N4 zjW%kf;+OV~kt<1sj+LL+LUs4aR_L*h+iIfG&*-%u(tQi|@!Dj^3snf<3r#!Zj+EYz zzR&lQw)$KSN4D*HQ)su|l&|oy6Lr&O@kOE&0>)ZH-Q_epNxt80k)* znvZP?`?>bbOBNjZH&N=eiaZ-^V^SJC!33u+Ry6p{M6Nb@@-Z)lZ)xYKa`!yQ?!3tn zF94|+*2o&LOfO(rFdY>b)uLR-IWEWyMw-3_7Ib$N|MSS;4%>`=GWK>k7Dw%uZp6CW zmFcXdU6yAtugNoC#wl&fmMHrji^ow!RQB)Sq2e}n)WJL+=( zPVk8bWrsPpi(H#7`V_`}Ktd>Dpk%ysv~U5{hkTcEG>)NIa9X7kG#Tbg`!_k_<8eH- z&~Lz@}D-=ZUkUY__IbvpU%hvX(l$rciNnyx`+m_{XjeR?J`Uz*&Lyq%{5#4fKcL0xzUBz?$E1#!H+y!h zO0Nn9AziRVvz;1jeV^lR&vaT$-_0>`h7RJq5QQ%*KVjWutLHSdO=alF5_kqS*jtIsg zl#5y)SG-oqENlbu8lBNh7V#qWa(%y?0ZpJO^tXjPnu19Ox97!yr)cc>)Gg|v0+=EF zfV#2*Og~V&A;gr06gkmtw!KGlO1E3&X?Ny;)o*j!o%nV+2<1H_#1-I*?d>jRUh@S} zn_jZlM5W8qO!T>%%`+OmF5Eo+fDXvZ?qHVH(!IO2vcltD<_6!)M#AQD7KNz-lHgGV z()I>c;^WI}s<-^p9#4OcYB>A)!5!glnsOBz@9!TQi}%mW+Qi>V+@%i0aw(|E8d%H( z(Wy3DYky$vTTd{MF?I&JQJ9tqa3b+{Tvj(u*q+N_D?Vm+@Uc(S3OKGp9+%&^H5y#U z2%4AlEhoMS2jyxnIvb@X%f@kFi|fc zJ$b#(H5Q(6Gzmi7x^mor3+0Ze{``03h%9n}qc!ZYCZR1Bk z%7LaQv*B(A-5TH?z&yz(mH~wiHPSCHqEa~I)VsRAF)o{26qn<6BZz9++2a|J|k^A19rxXI-k`llx++vMh@&oFP#c0)p(+r zuW!A}sM_4VvTeFiKQUM{akp&n-fPcE$MIgzlkYuhWqPj;RTp`@@_gm7AzN?X-tzE6 zoZ(WfxZBmpdG z;cfzAOw7ce@@kKfLqnmf!(F!TFDCeYnU~ zdtAded5sc9UCKRud|y9FFM(0>lO(q#(@5M4d&SdxUWd}cukOYdNxu~lJb#S1yGkmS zC!6F%Zp=^Y8O!*kVhbw`59A5cmQT!|Ys84$S z`!lTJcTQcY0v^B2iEFu-Yc|T;4x(HO=hdjjyC|hWmyN1`xw`To+JHlxcTNwGRi z>P%U=9aD&R2fm|`xsp7ip`=CnV}HM(=(Rq0FLaKTT!zCh%a8h&bk zTS*I)3$!d(w2i0B@d!&PjKB#jcR_LJh+Qkp{tP3A0{zW5Ly}K9SW+`3GZKZAPA$@s=vg6NKY)=VWe~A1sQ0;1)fV{p_6hA*Vz*?lg;SFj2s*x=&R_0<- z>ZsIW;pgEGi3bg_FXnR2WwS<_-%vM%PiQOQpPvl~2x_?Gzj$quG>kb|?~b9{HFKvs z=6-5c2|0mWA~@~@cj#&|kGksjwHk(w1zmE(fJyL&B?18-#pDG05h6vQx6vUUc04Kc zL&*4@lC7?hvbX2P`pmtnAX4}(HK?0Jri|QnDd5<#D;0##=QnfK5(yIszvKl1gZcN{uTPhqD$vOEEfRsTqWV77lV}f~g2pG&EVs3o?g)$|lNnSFiIN zYxzjX`mUWL3N?533SsYZj><*Jye7&DdU?|BBvbc}DOW)@h05-v#IF{glrO&Fi8fEX zs#mSsr_k5%Q#9a!#2Pn3?UBDqVv1x!jK#r%@dzQalm6amJ9*o((c@W)H`eR6-U;;6 zR;<N$dw3pj>G8ORC#&mBzss6OI{CJvo^7ySCl4d+^ zV(YW`<%=iwAC(}$5B3?tBt*?!^1A=SIu_dx4|ammjORo>z(Z2}fHZgX+ zWwm}J5KLC(9zXr`{=&-u;?axl9$ON00Ja8u;S`z~K7Ev(D52~eoqf*OLR*HNG!@ag zXf(OI{N;+RT!WUh2YlIi%4_RWNYPuA9JMQCEX+Dtgo6HF1mcoNH!+Lm^LY<{UJT=e z66&|vh`?^0c9qY~UQV(LS(`*Q2+$tCh%lqd?|gV-pLx%<@0ZDX&MR3P*-jI<#Y%g8 z=u66%`Ig{{D5%07m2w3{h%Vm)jveva6{cHePdan3xlkDUIGA0P9T8T5n}7YAqj6LE z?2|3O#Ific`Pz0(rC~cK%7mH|t%tlBa1q1(&i{sBVcl!WTp5ji2T4XfQx!HN&^IPt zps`LNYI#_k`FN^bXUkZwLi7l7KJu(eU{E8+;Giy2Kr?iRaj{~~8G*_heFBeMfi@~5 zpw9Nb8kDm*Wa)b25px*mA81m=0zX?*mOc3<@%AWW@gaYa?T!>UL;1GAgZ{~un^`*V z3fO#;@Umyo#4O$bN+(G?ZUpxzoatEvT3<9Iji!m${9?dBe&IV{zCoR|{_h5xEJPm) zJ)zuD>DKNO$$~1RL$NM6H7uuc2GV`FuE_EhRb7ZG&v6HsCqgGJfGVz~L+55F!)ozFh(YB_nsAILmueLp?T(nt74 z3Y;`yMDJCi0x=%l(u3)oIT<;JM}PtN_))iXDYll-9J_yvZq^_!PNmE*pe_3vRM~jz z77lVR?X(~sc!&c`MTtnwj9z6_?T3CMpe8)@G{ZT78i+m+WGf05(D~|q*F_Rcn&nWK zGC1>0?^9k;z@WL4_3D+u`n9JExXNUkg%1<%&J((Do9(^zWRs8gqvEW7R6>W?$qb zcMSTy5Z?f#;~~@!Kl%{{&O$CUqmdYwbtl&RdR3BJR%5wDRjDb3jVN`j6I^0cmjf1R z$C6TLa_M`vX>%F|c>0h&3#-%Mga$)FD_(q;uX&RH4fR#{1 zMWMUGGg-P9NlKZ+bhD)bp>zROo@EL_j!4wiLhU4L;C{u1tN#|u^CaTlOWe72mI=#R zuaGaHFUuPtA%80RSIZVw5R?#0+iA9+{GuC6pn&=j4I1HulPg*+T~0SgtTsT1MPUJ# z6Zwo={>7XyeT4UJbu%{aXBzEqEo>eJ5YfG^B2*C$FM4q!y|YEjb5;28ck+`5cmsL~ zWZ8DqO@COU{9-8zA`~sH2SXiv%Ob1+W4~sd-7yfCy!Wr~;!)lsSM}j<&SpnhhwjxZ zAe%%7;gk7@{XrdJybK37czNTUdycYNt|+#g+20rg&tP}KP8-0SWo)HReA$)Na1x+^ zle3BrvIG5K+!vFj(t3{6g0g~~PV6a=XKG#^tIJ}45b(ox7}NDKj)Eff0^?fL*qd_5 zOT97rJ@!3G!Yv>Sc*wzs1X4W_*w4;G8lriiA5`!z($voRUS?3dB94kbdg}E2unRbQ z2~6hG13z8#`NP(kjtA=NKtw`(FL+{1xph+xse<~PXP!R^RyHS}F{)#&#Rv>*67x&2sUEdacf(Q`2| zSmPn~WLpGydW+8(cTw4FDmH0)`glepv;NpCKg>=W3f#wxeFKxW**u;?3KUwu6}i8x zFpt>7-|P}9Q&vnb$j|6&%sZ(%bnlxXZl%JKj6Jf-dEb4l_>ii~APFTOuk&CIiDLP- zwe~x=G5x=xU||N0^?98#{N0n|#&5zTbcO6zq^6(taDK{7%o&lXn;F(?f@nJgH68nY z8;qe094N+VN;!o)Vcd$ z6Q!=^MjlAmh(7@DvH+b3m(tg~OJgb|gx6r(>;a)~^zSU^8a&gXfT?+RE!ieJ zaK#-gfewDV?h#34+8f3(8O05VwaqJ8yFWx__EH{;=ph{jXWH-Q;v?RGMZPtM-{7v_ z^NkHom>)ffZn!BN`TG1D6L!^uwL-N|zz+?=CSd+ZWY53A5*l)9{jF>HokJQ$@?|37 zgxzJpxU2{CykA9{9OIQ>g)PhCMJCLzo_|&d_`$7gu#3G*ni591h7E3D?WtB{wl11! zSd`> z2yqM@8~FEo_fFJC@L)$#c6RDou{2G(bK&ImN(*v)u)ebO@eyNH$Zv#=(P^a2H8ZV5 zT};?)nAZ2M=~DUQPe;bzSuD_iUx9~slS7h9qJRcrc4}o!E4SixXXya0eSD(~;Q;#A zP9w{1;GfB88=?8%*fd!Z0;In%+GIi%x2H{noS)<>BJe`-=f>njT)y>geO*EsS*tHF z8k_0vvD~;|2I$jeEk3BKU!tEny!hDuFRhj^5|_68YzwRT30>lYrER;-Jo>~t^DpAL z%IT4TAuifC4{4sy+7i{+xtc>e9EmJ4pLu=;x$D9~<;H!H+IF40Qz750)#RpO0kks8 zVKqHt2Ch`!8L$~DM@_XaLHkd!IP~9Vk}`(qB={&!^b|ONtfTC?2LPgR+1dI?^_cjX zZ~W-HA46vYPDa&`*)-SiuO4)p?B8VuhAX$%;31Zl*C5@S2|DrWAy&t64EN(#vRR++ zEilN4!9E4p3x$|`SmB1nPQJhRNf3<1!Xlq)^HHS0mw0cWBVBqwE9!Cd^RI4?xC9lY zRq=^&qDf9bbCBP$#&FOt?9R(0{j#nPnI-ODliKkTd@dHCz0@e_RQe@x+&TVx(yR>D zk#8YB{(w45|;U9{i{cKB?5=-MTOZO8a}JF$wSu3YnM*(02Yt>+wCQG|&B>xcBAm z)>?vCyt9qp)$fOiytg2#4$2Baqog7djkf$&O!rk3_B$pMwot88Jl^}ZPcT47_u4U? z#ls)pjKRg-ev8fA`Cw;C;zi9COSOkEcv&T(i^phWJw2GA-&J&@gpzGeh26l{7vXTr z+qq}sE?Jvmm(mJU>hdz=V_L$!uzOy(EjWYq^4{1_{~K1eon$}yf(8Q@TeR#q)VYex zUv{t+73Iym{I7_ngABj)FprrJ4`n@_=>EO28cm)fuvoTq1U`5B3$ z^*e$c0DHjP5!<6tvwI5J7dap2RrI0^<{{3FXynx(`M6?QK0oL(s&l{1s{MUi$H-zz zu70YpRxS1e&`GLeV_H*R01NcooAW*y;>;1F^d$i1&^d6Kp#9c;uPP_bQMH}b=D4G` zBGvx~^gW{dtk|JVD8tNasr>hg_J8NUqjUKgtjyEBi#ftQkHqMhZyD99w<{V9l9AILw`)T+y z_&&iviyk5LOeQfoW_Q_g>Ad$5#`jJYnaeTa;ow^?9zvy3F#@fI>j7bL>))Pfg;hr+ z`o`cOq}zfFr{}O-Akxsv5PED2$=X*Cj=LAatm9Tn^QVRvx8E^O%meD-vYJKvMRpI< zELIT$GtAKr17s(X>X3a2=hi%eT{U9W?`^!?x0xe>c8n)A zac?;rGz3kc%MM>pKJVz&?i_yw-cz?|6pHEa*j3hA++&c1LvZ&Bs$>#``NPvVUn#dl z2_0u?y+oV-4hIn4j--$^H|anXXryyOL#d zEV$IT#(PW?lh4On8VkYas@sx)VxVokDA+A8nrFH_j6^@nu=yxlFue(oKjJ}l({vzg z5S{p8S7Wn1xu1iAB3wxxLYW3;bI+Q;+`IrlbdP(E5RtMNH{qNAs>8YnD$_3ifUzf4_c>=D{_>-<6UJ^}?=b_D?3Pu~5X%Jbz=Qk2ywsgPX zKK9vq&am-xN99@d(2*vw>YFym)2EZ6Iqto5bAUs@#JQC`n2s%5dzj^ut32+3UrJCh znegTH$NgXV29VeLVR)r{Jgb`*Bd>#T8CzPCR}HBt_4{am{B=2XtdiYmFW0s9()AnpF#nZ>sY$4&Y636jTsdvhbE!X~eO>NV2T zw7HyTS5>{QyjZ=q^nbCt^cpp*!o0#7nB4bIO^J7a$Zu+Ty~M9c5%L|q+>KRHOXj?b z#O}WtHDsYr`m`RE&{hqX7ym#2odr7GMxfK>HF12G)(T$;@t9O4vt4ZiUo=W@y>;zh z@t||Qx{XG8!4NfAdXLKCyixBjxhl~$eIhRHSU?071#Ykkc2qhRbV)(isKITgsg+m2 zf-LS3C-~NUPE2LtLuc~s66>QuYV)1UIWPtGp~?LO=EzW2jGrZDz*6}y%Ik}8cdI#p zy0&)T4QOD8fVFN4due*_ehcc_`imXf=v%KSa%dJHkOJPkTUO=Y%r}g%eL{OWq607h zFczh&ZOkBCa5*s3JJiGZxA{?}x3jJ2EdEAOzql&!AYh3g&eVFNU=Iw3nl|POefT_8 zr0-7_?hZER;%JsSIw>D5S`WGWiMxGEx`slYPl4e8&ek)7cQk+Y>zaNA9u2L~k)b_F z79M?ydavg$&jBo0c#()J7I*=K=+k~>no3lI*DFPjVAx=$Jsqr~V!uE^dV*uBchhr} zZq%vWTFc=U%_dgS_vKkd=Ez3m{=3%irVt$pDILw9PpZ>&i{NxkVlBnWpG{K&HxES5 z4ov^X?zJAhZs>gWaKX9SCGOGHAq-;B=vaUyb83VuI?aK|I zTADNB^L43vzQXyg@F^3ZybqkwkONoD6;d%2AyW9fcpmz1OAIz$k6xcQC)nBt9$)U2 z%Seg1is6r)ozG&=vAnK7Y+qt-CtXIf+{x+>#_cZ8t>gy&Cg%Mu#p@c1OnOa^9>qT; zR_(bOgjwc*&iu_Bsz{SEF955y27oWuuBvVyeso$^V7k;o%nenHeaF+Lsh`l4XgZ<( zU}q*?V}03GBN7|eV_du?oHXq$d&9~K+}@fQ9cu(*%or|2YAoI!2lZXLT6`-7YRO9QW9Ghm6y6&* zQ7y@#A#ySxo0f5DOK8AU@j?r8L<#)7pUOf&2&cHhZZ*xcD2qd>_R`YrpQU)A!R}!y zH%x}zsf)G&w#g8SUpi4sX~TyNO#UsrZF_eO{&6fhnjhLvhmWi2l)@T=G+)VbFD}&v z{c)ZHIc5Upu5T2G#n|cs13|x1{lCwZ_~0zbrYsiY;?bh{o76^_+jo!xEPo0BpF-ir z@4Qt3sUmL5D;XkXIqzBvv^|rCGqa&+@8tA4K=y82HChQR(6C!^7-FCN>%5+~ z!Zj1@Z>x*kdWDh>#iiXuUCK>{@lm=+fo90;zmGt&>}*tLCC)W)EzrK`@VfHLW#!&c z{#{@X*~E(JDB50QnW>A*%o{P1?BcRiyI4Jf$B}Uov9F*0I&Jhdn8+G%K)co=#m1~8 z_5%x#2H@^5BD`$^FqR$Kh9rRj&s+WHuLrnF!{uMhk&g|XT&;T`aq z!79sfiOb{gipu&n^ZB%?NmSTtkRxu47}ad829aX%O;8G zi9=z|h#MDu%!vsQGeIX^pcdgQ%b)hBeTAsY?Qya&oJJV!3yHjSLez1iSJf4&?rA(r z-eD&Be=fj`p>>>igtHCOGWUxZWkJ=}e9+NbBfHE*F%Ch=4n=+e_3#3X7gW0+--{m* zO-4nuILWtS$T{!cWWMve4<2m+<#Zq~R{>4zp}F&@&x|5IEdg)8XfPkmq77n-YLFp=Z?!49>pi3_ZSo?#Fjls5bp`DP|Gj# zHPt>9-z+_9Rwq(!4}JxlTWlOItfd_0cAGy5waaox(Z3&QZPeL`l+9TBm)@MJrzifh zS0s@>k?dt%k!})UT@Gh!Q6+;Yh!aww704aOBBBQ|&~ue$Clx^Z_Hg&B=aV6_61OBJ zYCPRWHEie3$jqa{E`4y&jb_lWOP;>IoM3h`Z5DX!vqQ)TX2oeLjvp?#Y{a|Qf3g$k zp6GvwLG6O+?D&Qaekz_qH2yv2sn)%k6!mOy1Pm6JQ!to)IsH3x3XC6r(YF6xFY^Zg6)5}zw$LBO6nuKOtG4Akdu?++FBUo<3!o%|H{2hM~ z*H63b7op5Dyk1M}F90FtWnrDazM#0q7PX>AH!;C9a6_S$&I#T^VXF?S$&Q01A?1#; z)(dx+wRiY*pVgwOAm5nUeof@x9;-cX*c7SozD@7>uel<6^b7tI>^~t`wN0c(>z3o` z!-t{VpDh~%M*OE6BQ)C5zr6m<%7oV>qql4C^vM@mA_7$-cc&{fIz7~TvHRtA_nAk{8f=a_L~>-VO8Bf= zf#2f=@;8EVzl9SQ$s)|tYzmaP<8OLrTBMznv(TRnC?^Eu4V4dj6{hV!L3qp}i5kkMp1VykqIm5C=zfYbsba{D8YTQ2Afgk?_3a z6*l1ejq1AG>;ZF-u6Fd_} zJ(?8F8!>RvZdTrn{?Wz!pxTT>@fln&k;7YHSi^Q)e*5Lxw(Q=;#-lHEgm-H1+X9B3 z9Le<_fwnX6<#Q4uTzNNfQ6`p#eTL_fxYS*UVjZ^u#&>=8`ob`BK2^b?TS|-o|V>37^`i@%YrJ1DXEH=cAk_x;+>-lr`u~iIQ-jL>IWF(8{o7Nko5>`c# za_f6`)ItqCzS4|5E6{Q{%SMR%gs|u=c>X!eTsc95zW58t!j|u65Dh)l)(wUeD$zS@ zoriMx+Q!FeJ74#KH*aV1eI9w*XAR}xhGc5IyFIugzO&ML(iOwLZw&RICxQ+69%V1l z=j=Gz+f^&bHCw$Dp3!)clKZ7{ICt&MwH=LmMFXXf3~xEAfx5@XI&V!ihFeZjp-I104C`M-~}S#_O(*L z0Y5SjRL*d5_C3}Yj@NpcCMgmFZFlXPQv8a){}tgCN@FFR3|tZGH-kk>gzTHabX>D= zp)xuJzKXK+um)f@gk!h~RvOf;yc}v!hgfXMx15$gpAi!7l)+6jx`p!oB6}x=qlcID zI7nWsn81F{r;gSVw(Pw~xvUnvb4+5=&9oN(7>sISA~jb8=t#@Zl`70{|Gg!dlq^=T zX(SpezGO-gwwi#BK2cP}FGR=Y>$vX?LT#}O8%J+rhy@ehjow6Ab*xg=(uyn9@dGMR z9~(=o0>|Vy#2b8Zoxv)7euZD|ryE+C_4(3~(Gj~ng!6e>!Hf)hY$WMxr#Wh!wIDL8 zxUy0dIKfYtLdAsnw9n1}EN6M($bBdfBVG&qoAyw?NmzdykXm?t|A^!E{?QHi#-VJG z6d0K^AZaijJma3ORfnLPU2~GPt=DXvhzCKLw&~kqO09nx2`DYabr0rZz1u`Tw!$-C zSh>D6`WnG$Xvsj23}#932Nsx-L3zb!jJ6}b-=CN@baI9D?w>shNMEMW?c=Vj5*(;@ z{GFqEH@Ls!BLn^92KB5!-P|N6YwI7mcK^UCxX34-f+YH}IsvtHa6V}bAPxmnRDOBz z6u5tV$@$-|lQA25=h^$o@l6`K9r^HxDM8VMqk6!BikIlglro<@0rAwkb93iNq2c~K zV4mXwu5H5I*H=H680krRv6AlF9&hEs*3eDBE;@3gl!xd^?l;v{^_a^LFMwlaq+=fo zuZlKT7qa8zkC9;Tk>Wz}_9azqgaeyxIXWVH4MC)fkQ^4>HJ1%0w3QJGSTTGS0Kd(chr48^3v$iS>UJgjV|uL-nsggGp%rbIo! zdV?Xp4Zwd2@UBZ?nhl%6b1%Z~P-J(3YrtPCr*D%8suf^6nQL7Ow>KR(O^Gl5hHh1P z`c!Bl_}LyIs%+SUJm9^&|C#_15KbNv~hW0jX#< zNykRf;#E<o@*bMyNW}%0Y?$TU*E*bq){KD%67ij$T@#5XZWF_eTj>k&l66!6AL!a!a=#@H5ExE{p zy2W0N{-MrxM|`>L#SY96zar(@2vQUxs902elT{Z@&6 zJyy@K;Uz-%CYGFZK@7%jM1t_I3lGc?B*P2LIxcGheOy7&M={3tyaK-MVGUE1{#dlQ zE=noWFIk#hHtG42nIK#4`o@KjBi?LYHR>;ldt?(`#A>v0TVmZ>4*qR~Ev{y0Emt7* zw9>x2r~L5JZSA4pSQ-HNQYH}*p)6;%hSikvp#)J6G*ga(lP~GK`7((#BYjMTTk_2m zMd*}SBE4dHxgnOoBIf(Yd8f+O$fs-fi3Us2;q;^&qiiL3FDR77t(Sb>_8XoP_hn(7 zxbJY$R`_XOq07@Xwii4XBoc%74!h0$81laOh3=_j zx}Vpw?U-~$Zn|28#rsTbF#Q5mCnI9
R!yBCNm?EU0Sd*J*o-yl{2_($gk2s> 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 literal 98934 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 diff --git a/test/image/mocks/texttemplate_scatter.json b/test/image/mocks/texttemplate_scatter.json index 96391ce2941..3fff2e746f4 100644 --- a/test/image/mocks/texttemplate_scatter.json +++ b/test/image/mocks/texttemplate_scatter.json @@ -17,7 +17,7 @@ "Toronto", "Vancouver" ], - "texttemplate": "%{text}: (%{lonlat[0]:.0f}, %{lonlat[1]:0.f}): %{customdata:.2s}", + "texttemplate": "%{text}: (%{lon:.0f}, %{lat:0.f}): %{customdata:.2s}", "textposition": "top center", "customdata": [1780000, 2930000, 675218], "geo": "geo" diff --git a/test/jasmine/tests/scattergeo_test.js b/test/jasmine/tests/scattergeo_test.js index 65aaf8c7990..0d5a42f0401 100644 --- a/test/jasmine/tests/scattergeo_test.js +++ b/test/jasmine/tests/scattergeo_test.js @@ -446,6 +446,15 @@ describe('Test scattergeo texttemplate:', function() { 'lat': [45.5, 43.4, 49.13], 'text': ['Montreal', 'Toronto', 'Vancouver'] }], '.scattergeo text', [ - ['%{text}: %{lonlat[0]}, %{lonlat[1]}', ['Montreal: -73.57, 45.5', 'Toronto: -79.24, 43.4', 'Vancouver: -123.06, 49.13']] + ['%{text}: %{lon}, %{lat}', ['Montreal: -73.57, 45.5', 'Toronto: -79.24, 43.4', 'Vancouver: -123.06, 49.13']] + ]); + + checkTextTemplate([{ + 'type': 'scattergeo', + 'mode': 'markers+text', + 'locations': ['Canada'], + 'locationmode': 'country names' + }], '.scattergeo text', [ + ['%{location}', ['Canada']] ]); }); From 7fa4dc5cdc43c999cccbd53920e06723fa7868d4 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 24 Jul 2019 18:19:38 -0400 Subject: [PATCH 11/37] texttemplate: add support for scattergl --- src/traces/scattergl/attributes.js | 1 + src/traces/scattergl/convert.js | 23 +++++++++++++++++- src/traces/scattergl/defaults.js | 1 + test/jasmine/assets/check_texttemplate.js | 29 ++++++++++++++++++----- test/jasmine/tests/scattergl_test.js | 12 ++++++++++ 5 files changed, 59 insertions(+), 7 deletions(-) diff --git a/src/traces/scattergl/attributes.js b/src/traces/scattergl/attributes.js index 4aa74ec4202..c56697489b2 100644 --- a/src/traces/scattergl/attributes.js +++ b/src/traces/scattergl/attributes.js @@ -98,3 +98,4 @@ var attrs = module.exports = overrideAll({ attrs.x.editType = attrs.y.editType = attrs.x0.editType = attrs.y0.editType = 'calc+clearAxisTypes'; attrs.hovertemplate = scatterAttrs.hovertemplate; +attrs.texttemplate = scatterAttrs.texttemplate; diff --git a/src/traces/scattergl/convert.js b/src/traces/scattergl/convert.js index dc9231fe590..8bff6d1ff43 100644 --- a/src/traces/scattergl/convert.js +++ b/src/traces/scattergl/convert.js @@ -28,6 +28,8 @@ var TEXTOFFSETSIGN = { start: 1, left: 1, end: -1, right: -1, middle: 0, center: 0, bottom: 1, top: -1 }; +var appendArrayPointValue = require('../../components/fx/helpers').appendArrayPointValue; + function convertStyle(gd, trace) { var i; @@ -111,7 +113,26 @@ function convertTextStyle(trace) { var optsOut = {}; var i; - optsOut.text = trace.text; + var texttemplate = trace.texttemplate; + if(texttemplate) { + optsOut.text = []; + var pt; + if(Array.isArray(texttemplate)) { + for(i = 0; i < texttemplate.length; i++) { + pt = {}; + appendArrayPointValue(pt, trace, i); + optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, function() {}, pt)); + } + } else { + for(i = 0; i < trace.x.length; i++) { + pt = {}; + appendArrayPointValue(pt, trace, i); + optsOut.text.push(Lib.texttemplateString(texttemplate, pt, function() {}, pt)); + } + } + } else { + optsOut.text = trace.text; + } optsOut.opacity = trace.opacity; optsOut.font = {}; optsOut.align = []; diff --git a/src/traces/scattergl/defaults.js b/src/traces/scattergl/defaults.js index 82a05c4e52f..ca3cf397a92 100644 --- a/src/traces/scattergl/defaults.js +++ b/src/traces/scattergl/defaults.js @@ -36,6 +36,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout var defaultMode = len < constants.PTS_LINESONLY ? 'lines+markers' : 'lines'; coerce('text'); + coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); coerce('mode', defaultMode); diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js index 9fa5090b925..529f1af3e9f 100644 --- a/test/jasmine/assets/check_texttemplate.js +++ b/test/jasmine/assets/check_texttemplate.js @@ -1,4 +1,6 @@ var Plotly = require('@lib/index'); +var Registry = require('@src/registry'); + var Lib = require('@src/lib'); var failTest = require('../assets/fail_test'); var createGraphDiv = require('../assets/create_graph_div'); @@ -8,6 +10,8 @@ var supplyAllDefaults = require('../assets/supply_defaults'); 'use strict'; module.exports = function checkTextTemplate(mock, selector, tests) { + var isGL = Registry.traceIs(mock[0].type, 'gl'); + it('should not coerce textinfo when texttemplate', function() { var gd = {}; gd.data = Lib.extendDeep(mock, {}); @@ -27,17 +31,30 @@ module.exports = function checkTextTemplate(mock, selector, tests) { tests.push(['%{customdata}', customdata]); tests.forEach(function(test) { - it('should support texttemplate', function(done) { + it(isGL ? '@gl' : '' + 'should support texttemplate', function(done) { var gd = createGraphDiv(); var mockCopy = Lib.extendDeep(mock, {}); mockCopy[0].texttemplate = test[0]; Plotly.newPlot(gd, mockCopy) .then(function() { - var pts = Plotly.d3.selectAll(selector); - expect(pts.size()).toBe(test[1].length); - pts.each(function() { - expect(test[1]).toContain(Plotly.d3.select(this).text()); - }); + if(isGL) { + var glText = gd._fullLayout._plots.xy._scene.glText; + expect(glText.length).toEqual(1); + expect(glText[0].textOffsets.length).toEqual(test[1].length); + for(var i = 0; i < glText[0].textOffsets.length - 1; i++) { + var from = glText[0].textOffsets[i]; + var to = glText[0].textOffsets[i + 1]; + + var text = glText[0].text.slice(from, to); + expect(text).toEqual(test[1][i]); + } + } else { + var pts = Plotly.d3.selectAll(selector); + expect(pts.size()).toBe(test[1].length); + pts.each(function() { + expect(test[1]).toContain(Plotly.d3.select(this).text()); + }); + } }) .catch(failTest) .finally(destroyGraphDiv) diff --git a/test/jasmine/tests/scattergl_test.js b/test/jasmine/tests/scattergl_test.js index bc973b9c219..1b28af4633b 100644 --- a/test/jasmine/tests/scattergl_test.js +++ b/test/jasmine/tests/scattergl_test.js @@ -8,6 +8,7 @@ var destroyGraphDiv = require('../assets/destroy_graph_div'); var failTest = require('../assets/fail_test'); var delay = require('../assets/delay'); var readPixel = require('../assets/read_pixel'); +var checkTextTemplate = require('../assets/check_texttemplate'); describe('end-to-end scattergl tests', function() { var gd; @@ -37,6 +38,17 @@ describe('end-to-end scattergl tests', function() { }).catch(failTest).then(done); }); + checkTextTemplate([{ + type: 'scattergl', + mode: 'text+lines', + x: [1, 2, 3, 4], + y: [2, 3, 4, 5], + text: ['A', 'B', 'C', 'D'], + }], '@gl', [ + ['%{text}: %{x}, %{y}', ['A: 1, 2', 'B: 2, 3', 'C: 3, 4', 'D: 4, 5']], + [['%{x}', '%{x}', '%{text}', '%{y}'], ['1', '2', 'C', '5']] + ]); + it('@gl should update a plot with text labels', function(done) { Plotly.react(gd, [{ type: 'scattergl', From aeb6d1fc35293245c56e2e84432f2195af0b65d5 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 6 Aug 2019 10:04:33 -0400 Subject: [PATCH 12/37] texttemplate: add support for scatterpolargl --- src/lib/index.js | 2 +- src/traces/scattergl/convert.js | 2 +- src/traces/scatterpolargl/attributes.js | 4 ++++ src/traces/scatterpolargl/defaults.js | 1 + test/jasmine/assets/check_texttemplate.js | 13 +++++++++++-- test/jasmine/tests/scatterpolargl_test.js | 15 +++++++++++++++ 6 files changed, 33 insertions(+), 4 deletions(-) diff --git a/src/lib/index.js b/src/lib/index.js index 4ae2b03f6ea..3fd21c3e4b0 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -1067,7 +1067,7 @@ function templateFormatString(string, labels, d3locale) { if(format) { var fmt; - if(d3locale) { + if(d3locale && d3locale.numberFormat) { fmt = d3locale.numberFormat; } else { fmt = d3.format; diff --git a/src/traces/scattergl/convert.js b/src/traces/scattergl/convert.js index 8bff6d1ff43..e4c93758a08 100644 --- a/src/traces/scattergl/convert.js +++ b/src/traces/scattergl/convert.js @@ -124,7 +124,7 @@ function convertTextStyle(trace) { optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, function() {}, pt)); } } else { - for(i = 0; i < trace.x.length; i++) { + for(i = 0; i < count; i++) { pt = {}; appendArrayPointValue(pt, trace, i); optsOut.text.push(Lib.texttemplateString(texttemplate, pt, function() {}, pt)); diff --git a/src/traces/scatterpolargl/attributes.js b/src/traces/scatterpolargl/attributes.js index 14ebb4568da..ec99f052522 100644 --- a/src/traces/scatterpolargl/attributes.js +++ b/src/traces/scatterpolargl/attributes.js @@ -10,6 +10,7 @@ var scatterPolarAttrs = require('../scatterpolar/attributes'); var scatterGlAttrs = require('../scattergl/attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); module.exports = { mode: scatterPolarAttrs.mode, @@ -22,6 +23,9 @@ module.exports = { thetaunit: scatterPolarAttrs.thetaunit, text: scatterPolarAttrs.text, + texttemplate: texttemplateAttrs({editType: 'plot'}, { + keys: ['r', 'theta', 'text'] + }), hovertext: scatterPolarAttrs.hovertext, hovertemplate: scatterPolarAttrs.hovertemplate, diff --git a/src/traces/scatterpolargl/defaults.js b/src/traces/scatterpolargl/defaults.js index 3f534d7a207..20c0b29dc7e 100644 --- a/src/traces/scatterpolargl/defaults.js +++ b/src/traces/scatterpolargl/defaults.js @@ -34,6 +34,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout coerce('thetaunit'); coerce('mode', len < PTS_LINESONLY ? 'lines+markers' : 'lines'); coerce('text'); + coerce('texttemplate'); coerce('hovertext'); if(traceOut.hoveron !== 'fills') coerce('hovertemplate'); diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js index 529f1af3e9f..186971645b2 100644 --- a/test/jasmine/assets/check_texttemplate.js +++ b/test/jasmine/assets/check_texttemplate.js @@ -11,6 +11,7 @@ var supplyAllDefaults = require('../assets/supply_defaults'); module.exports = function checkTextTemplate(mock, selector, tests) { var isGL = Registry.traceIs(mock[0].type, 'gl'); + var isPolar = Registry.traceIs(mock[0].type, 'polar'); it('should not coerce textinfo when texttemplate', function() { var gd = {}; @@ -38,7 +39,12 @@ module.exports = function checkTextTemplate(mock, selector, tests) { Plotly.newPlot(gd, mockCopy) .then(function() { if(isGL) { - var glText = gd._fullLayout._plots.xy._scene.glText; + var glText; + if(isPolar) { + glText = gd._fullLayout.polar._subplot._scene.glText; + } else { + glText = gd._fullLayout._plots.xy._scene.glText; + } expect(glText.length).toEqual(1); expect(glText[0].textOffsets.length).toEqual(test[1].length); for(var i = 0; i < glText[0].textOffsets.length - 1; i++) { @@ -57,7 +63,10 @@ module.exports = function checkTextTemplate(mock, selector, tests) { } }) .catch(failTest) - .finally(destroyGraphDiv) + .finally(function() { + Plotly.purge(gd); + destroyGraphDiv(); + }) .then(done); }); }); diff --git a/test/jasmine/tests/scatterpolargl_test.js b/test/jasmine/tests/scatterpolargl_test.js index 5e6d2f2866e..6afd16c50dd 100644 --- a/test/jasmine/tests/scatterpolargl_test.js +++ b/test/jasmine/tests/scatterpolargl_test.js @@ -11,6 +11,7 @@ var readPixel = require('../assets/read_pixel'); var customAssertions = require('../assets/custom_assertions'); var assertHoverLabelContent = customAssertions.assertHoverLabelContent; +var checkTextTemplate = require('../assets/check_texttemplate'); describe('Test scatterpolargl hover:', function() { var gd; @@ -377,3 +378,17 @@ describe('Test scatterpolargl autorange:', function() { }); }); }); + +describe('Test scatterpolargl texttemplate:', function() { + checkTextTemplate([{ + 'type': 'scatterpolargl', + 'mode': 'markers+text', + 'text': ['A', 'B', 'C'], + 'textposition': 'top center', + 'r': [1, 0.5, 1], + 'theta': [0, 90, 180], + }], 'g.textpoint', [ + ['%{text}: (%{r:0.2f}, %{theta:0.1f})', ['A: (1.00, 0.0)', 'B: (0.50, 90.0)', 'C: (1.00, 180.0)']], + [['', 'b%{theta:0.2f}', '%{theta:0.2f}'], ['', 'b90.00', '180.00']] + ]); +}); From f9062e40aae8eb72d6de7efddc19b65ea57de754 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 6 Aug 2019 10:45:54 -0400 Subject: [PATCH 13/37] texttemplate: add support for scatter3d --- src/traces/scatter3d/attributes.js | 4 + src/traces/scatter3d/convert.js | 23 +++ src/traces/scatter3d/defaults.js | 1 + test/image/baselines/texttemplate_2.png | Bin 0 -> 99575 bytes test/image/mocks/texttemplate_2.json | 193 ++++++++++++++++++++++++ 5 files changed, 221 insertions(+) create mode 100644 test/image/baselines/texttemplate_2.png create mode 100644 test/image/mocks/texttemplate_2.json diff --git a/src/traces/scatter3d/attributes.js b/src/traces/scatter3d/attributes.js index d02559bf30c..9201f42f72a 100644 --- a/src/traces/scatter3d/attributes.js +++ b/src/traces/scatter3d/attributes.js @@ -11,6 +11,7 @@ var scatterAttrs = require('../scatter/attributes'); var colorAttributes = require('../../components/colorscale/attributes'); var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var baseAttrs = require('../../plots/attributes'); var DASHES = require('../../constants/gl3d_dashes'); @@ -84,6 +85,9 @@ var attrs = module.exports = overrideAll({ 'If trace `hoverinfo` contains a *text* flag and *hovertext* is not set,', 'these elements will be seen in the hover labels.' ].join(' ') + }), + texttemplate: texttemplateAttrs({arrayOk: true}, { + }), hovertext: extendFlat({}, scatterAttrs.hovertext, { description: [ diff --git a/src/traces/scatter3d/convert.js b/src/traces/scatter3d/convert.js index c903b3f8c93..f9a568e0bc4 100644 --- a/src/traces/scatter3d/convert.js +++ b/src/traces/scatter3d/convert.js @@ -22,6 +22,8 @@ var makeBubbleSizeFn = require('../scatter/make_bubble_size_func'); var DASH_PATTERNS = require('../../constants/gl3d_dashes'); var MARKER_SYMBOLS = require('../../constants/gl3d_markers'); +var appendArrayPointValue = require('../../components/fx/helpers').appendArrayPointValue; + var calculateError = require('./calc_errors'); function LineWithMarkers(scene, uid) { @@ -239,6 +241,27 @@ function convertPlotlyOptions(scene, data) { for(i = 0; i < len; i++) text[i] = data.text; } + // check texttemplate + if(data.texttemplate) { + if(Array.isArray(data.texttemplate)) { + text = new Array(data.texttemplate.length); + for(i = 0; i < data.texttemplate.length; i++) { + var pt = {}; + pt.text = text[i]; + appendArrayPointValue(pt, data, i); + text[i] = Lib.texttemplateString(data.texttemplate[i], pt, function() {}, pt); + } + } else { + text = new Array(len); + for(i = 0; i < len; i++) { + var pt1 = {}; + pt1.text = text[i]; + appendArrayPointValue(pt1, data, i); + text[i] = Lib.texttemplateString(data.texttemplate, pt1, function() {}, pt1); + } + } + } + // Build object parameters params = { position: points, diff --git a/src/traces/scatter3d/defaults.js b/src/traces/scatter3d/defaults.js index 14de88e49ad..13553db1e74 100644 --- a/src/traces/scatter3d/defaults.js +++ b/src/traces/scatter3d/defaults.js @@ -31,6 +31,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } coerce('text'); + coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); coerce('mode'); diff --git a/test/image/baselines/texttemplate_2.png b/test/image/baselines/texttemplate_2.png new file mode 100644 index 0000000000000000000000000000000000000000..39b403c64e5d9bf80e2d74ec42681f8ceb81daa2 GIT binary patch literal 99575 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

*m4}2$59s*v_=1n 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�x`Tz# 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 Date: Tue, 13 Aug 2019 13:57:06 -0400 Subject: [PATCH 18/37] texttemplate: text in legends should not changed --- src/components/drawing/index.js | 4 +++- src/components/legend/style.js | 2 +- .../baselines/gl3d_scatter3d-texttemplate.png | Bin 18409 -> 23024 bytes test/image/baselines/texttemplate.png | Bin 76209 -> 76207 bytes .../mocks/gl3d_scatter3d-texttemplate.json | 10 +++++++++- 5 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/components/drawing/index.js b/src/components/drawing/index.js index 87dbe12dc84..7343d3bb58b 100644 --- a/src/components/drawing/index.js +++ b/src/components/drawing/index.js @@ -680,7 +680,7 @@ function extracTextFontSize(d, trace) { } // draw text at points -drawing.textPointStyle = function(s, trace, gd) { +drawing.textPointStyle = function(s, trace, gd, inLegend) { if(!s.size()) return; var selectedTextColorFn; @@ -691,6 +691,8 @@ drawing.textPointStyle = function(s, trace, gd) { } var template = trace.texttemplate; + // If styling text in legends, do not use texttemplate + if(inLegend) template = false; s.each(function(d) { var p = d3.select(this); var text = Lib.extractOption(d, trace, template ? 'txt' : 'tx', template ? 'texttemplate' : 'text'); diff --git a/src/components/legend/style.js b/src/components/legend/style.js index b93a1232771..85c222e4671 100644 --- a/src/components/legend/style.js +++ b/src/components/legend/style.js @@ -271,7 +271,7 @@ module.exports = function style(s, gd) { .append('g').classed('pointtext', true) .append('text').attr('transform', 'translate(20,0)'); txt.exit().remove(); - txt.selectAll('text').call(Drawing.textPointStyle, tMod, gd); + txt.selectAll('text').call(Drawing.textPointStyle, tMod, gd, true); } function styleWaterfalls(d) { diff --git a/test/image/baselines/gl3d_scatter3d-texttemplate.png b/test/image/baselines/gl3d_scatter3d-texttemplate.png index 2d0c5b5bb51ffe5428a7473407962bc84df53495..49b25ca0ea710bc5e031b2419ebfb0e9c6162e8b 100644 GIT binary patch literal 23024 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 JZV5|T@6FKL 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 N002ovPDHLkV1oO>KOF!7 diff --git a/test/image/baselines/texttemplate.png b/test/image/baselines/texttemplate.png index 26e280a6fcd645dcaf148429cd501ef5b1f21ad8..a1302aca93c823ccf52867deba9c08d77a27a2d7 100644 GIT binary patch literal 76207 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 literal 76209 zcmbSyWl$Yq(sC#{ojd(>_nbcGbhwg&6cRihJOl&;lJqBW6$l9EJqQTMD>xY7N+}I2BLoBqgtWM* znuq?89;{2!^u+Rh%k2uj^j^zXFp0W^M7gH8lDH4NmXeYZ0}a_6|BQi>NJPOW*jy^o z_xq$tS1Wc2{v+Y<_ZwO$*sU8@$a&31g$xp!+UD7FX6NSS;J73M&B|;3se*YdHetI0S8J2Uw-{Rum1N>Eg+%f#%tEl=idEaU;LlDz2_5#{(pQa z@b3XwB<&zQ1g1c}|L5;Ae7i0C|MzVhnFOGxDMb{%pK*-3KwMp48JdD&KZyCJ;^KEs zbVEqOJTy9>-zZ1JO?|>sqPJAqjA_Os2kV2bt|5GV1ygZx3*1ds5$4`|BG8K`w5t zfRYAQ0>qL(I5TNt{p zB%mn?La{$It@pxl>HI_mKW7ZTDB$50nfXA%4 zE+|S0E1Nv+Xnc_5;NSwsdksO2&rV`9H&_axxvJ*mwPh(J_p)%a2GkU?7Rw<)2nv3p zh&D!VK{Yq|pPZNqg!tg1o}-(-g7Iv3e@Z4|kT}^$wl~4B`^7p06`THB!)NlPWxQuW z+cjHzrV%xwoUd?d)6*uCrzz(h>!yTPnR;J9UXp8PuT>=lzVw1tOI!tO2oK-}w+SbPw4XNFl7_z2~K&8|(d_`k)B{ zA|^3zorzxu3w~7->0fNhw+UMD^L5u@k3w?kzB81PLv}@rhvHh62oO3_SabmuzQb(v zhPz2e+XDqsmm+kUBtjVtPncx*3DK~vjL(H76!E1iGWYfjql*qwUQ>LUP4{)UMP<0( zDUR!tHCeg&0_RrKYiQ38YSe;%FEq4~D;m@H-%6~O3V7crFb3KV=T5w+U%n_Nxg}8l zaCH+Sf4mFzVDI$}f46+d*ZODLC*D;1SE4btTQ^M>%Helv;-{ZJX5JyUd{5xu$j+98 zLg8muo1P(WYnJTSrsd{rD~1UiP41`v(@}<9*`1zWiqeq=yV3L7X8j!nS$|N%O`22k z9Z&m2H>&wWL^lGHN`WbcM#t;`l&0*TzhfhKyQLW9Tum5e)9A|78!|>_p`pL;51Gfp z+Y#EttxrfNCNe&+l;&cS2kTr_N%5{pdt&nZPzxv+Mz4|TZ*rcTS%SNAzP+p4{mmoa zM@lgedsW^+Ld=hNUJH$fZ)DdggVNBxCH+>6)@XOzK2$0fW(XvVY3NJV=N7&!RC|@W z?C}?ui;$d&7c)#nY2dmQZ^_^IUyvO7s^K(0D{WTbNd}mm5HhdDpT7jf`8#n)#O-^E z2}mgH-%Re;3oT*lyM4J^U!}*{GYhTSmlscqU>w~$jY%y=*R5BHst}F2JJKrBNE47|abjf?jB>e<<_#6QmzfuWcj;hK6~Z6DvbwS%<%XCmWo^g_HzylaxPx#7gcz zBXik-aBp_+1Ftw-5skHjTByTl@}IUe)}FZKF=se!ep2j>NKr$v+Lu%BAYEgaev@xP zBl+=o6XRFwhXTc-!SCI<4{qKZ025ZiF z%{5Xv7bp63E^S|Ogsl416v9Q;cg+|}G&`O|ZMX-PEEOeMeK;PSw6N>+V!88kG^U$b zpF;-wl-GOB+hMDs0;a;gif$+%pkhW1Ud{vCyv)<4Kd??BYMPh_*jpBP#e8g7S-U@D z*w|Y9PIo;K0lUO`iULh#{5@z&dK`sVDC+ufwrgogw|c3%rlyCnZYgMgGT)j~LvFmO z5sU6ZvRn7---}V*NtmFOg|fnDUB^BLW}vQT24T}Ppu)gyBhyRw%6k%U<;{AJ%!wFu z?;Ez~h!dmthEytt!$#v0=tb*Nlkv(?UM>37m)EBZhVynD0|tWq99I-?1Gg}*?A3m@+tw$z ztDjX>Ks-tl!g#0o@-fg32=(>J{|Zr?o$dKgesnyMLGz0pNHR*^5QBZ3Gj{WL=h6NV z#)0!6l;XwycJKG^-)q&`5w3Wj3Tl0}G>EjM+T;5;>>3OW^nBsCv1g4J`3_O-7cDMMIAvVQy9@E3=n9i=;Ux&L>+@MT zN-DW4&NagQ1rXj#Y;&?0zqT?DWZJ&y#{m$IBML|suS0^Xqa&N##& zTcyUGvjcp`pv1>r$6cbq++uPi^O@=B40LK$mT-ZMbcTyKU=nFD9P42hvO?W~ixX5};EHKc|r{z*}_|AmLqOqc~Tgdu~j<6aDtf}HzIcJuOi*sRs~8EV+pV(G+ZK5eAv|HC%C*g+7hh}<1PoHPlo zhb#0KkHWppHM1&mdsDR;FB^F&1L&e(@n=f+ZTAl)qjIVc|yj~*~>iT zJ7JAq_5I8HakSK~ik(|h*=%uTzsu*?$o5N^uyNVOONC!QQ{hKfJ!l0=Y?|~$h5OYi zn0kbXGCB6~*)GPff)&hEu(|54PR#Pm)F%Y{&=FTvM|yTRo@7Az0l4~rYHx&h4+#m0 zg^R0qs!%n!JLBSS&4?GbXnw){Xpi>nkZyb^m>czK=W>;O5PNLw09MTR__0H2E2i3u zX=thD!E3I;4%N`JX@NKv0EVWRn(I}YwEZ;2DvvMK>qmhnG=;@qQ(AZn^tJ}JprTOR zKI-{GD^Os9+wze<{cxo!fioabR8Ivf?(YUcX4ZOKiZoA*T7NMO=t+b!G&Y5JaISMS zXzqM>ZAW|(9NwY8;HkO5c>eJ%)^=~bb=sFp;`Xow)PgNBqGRA>Pqyb$Dq=2M{DUy2 zA}}UGXh^^S4-^I_HvZAXp>&SJC>F4NY}FDMA{jP#)TZCBa@cyzoknoLV0x5AAdmJf z{pi5~`@4oT>Y8aF2{wJVX;J`upDkZ1xV-E#)U#u14kC+KR^5Y9JK*>J6dns}8Ns4r z?&gDEDVh7rvM@Sk^0umc%46?ckQxleum9j)krY&L8|zh*GL{ZkuKn+U8-<`&drF53 z-_IvH=DjyuK`V#?&+P!3_|1L`o{Xs+*2^y|Q{)@FaI4YdS2u6d)*y#-wDJpHxUp@E zkNy!K7Na>cLq0sB?US}p6h9K?(uIUpn!U>>-HVThcfQ8s|8#bW`JIM@IKL*vfH>+d zo$aV0wd8Dm*>(iPTV`+5eaW9AI+rj)eDY3kZ+&rcAO2JnVTp4Pmi+0c!M#ysd`sfr z1UD`K)e;HD&WB!QgeXw)X0BP08Q*WDq4s@djCZKvI?k=jr|bj5nyd?IBISgluqSSV zVp%&lRxzRK6G@1EP1OFT7@OD6s?(qfpa#bi7sF^R48`hp? zoP*04?F$X-bB;_1=93W^+Wh@J=&=fL?I^Eb+Pg*(uR4F>YDTy&e#Xfu&$hK|A;XV3 ztLyX4@ippKU%?EF-(`Cnlfam8S42Sy32tP&-`!UtOSnI{G;(2Et2PUj2~&aiuQzn2 z&i-ocl&&MJ9h*r4Nx&vXbqI<$_H$!+*Y_dKbn7Pz*;bP4b-jvK_+Ln5hibNtvfVU_ zo3Aa$EY<<|GsoeW@fHV2`szAmF5KMAI27>Rv>#t!z2-ME|F+(pIaFFmOMQC^bo2{~ z`%^id8Cmn52$z^dAFg~$Z$B1>x&IB%2P~lO5rQ(DtX!LYe^zs^EWY<*M`j*AqAt3u zEQAAIuYcgQ^fmV3;5;88+vimFWiNvQezz)DD|){wk*QqLPs0z?lSt_f)1U>9hB>Gb z-EXm&Pf6n`>3$BK3W9&~qpj=75AA!5{KVm^#{V;w8NQcxl7{Ye^!RJ}UK%?*F1e+WMOG=*D)$VESc|QMGT;Bq^2=f(b?^Bk zhGCWEwGg`3zs1K*K#mEpQfoY z+NoD_2{mYYHA~aOaxkmSER0%z6+1QpPkPA9jw=uRlV08RnkO?g7P>@Vgr?c@&$};I z?mfdVL@aD;8;*nBNwdap!=?x!+#ZuCwbRRelzxW&$~^RV3LIZXmQb^8s|hN0oAQl4 zbaDedzOufe`WvRA?4OyM-ZYgVZRPu`<{|%~*5P-Zh2_ok0Ef6)wY*{ucJ=N=q)y(=&lrR{7?Q5l|VGQkE6l5tq6N2krTIqZ;aW=l8y&!wo z+NVz>Q#bIdcX4xbq3)tM)OKINX*S=QlMygPJ07Ak+dT41TRzqp(6kSzT!q)M7&SBv zitGdf$X`SVlk93cg(ffbakmdL31J7#o#^N?pbT}%6uRb#b%}=7_K-TC53w~ zTaJl&X|_yRWN@A>eKfS^BWu5K%N54#4r~+p5kda`UdEuQ>K$#F&-@e#8tH3gq=n!# zK5bEPPfXPhMp>mM_5=J(Rh1GfVar4v81K%N2^?ZV1&xEu7X>V^-w83XG}^mO{T5zy z=F`?Gm8}>IC^ga5)xX)YQ5cT>^Mm5mu~n>`LGiy@$z;!U|4sYfLq)E}+7)l5+w{9f z+MCCI6PI<7yGDX<9i5oMtghV%{gyDCm;X+Hh?fP`Fcyqdp`aL?HKD?qzsbCvfyz2% z{B@{5b-0Gr0b2wP%6Y9=Y8qy%(2tnk%@@cziCd4kyz6&cpCa~f75;va79-DQmsO*) zv_I`PNraC3tQMWITiQaS1f%d9!{guqRr&0sGs&1C3opum$&_^8>H`*nqz3}-YvXcC zoCf%5$!no&VhUAJ9tm>09p6d6k*zdo_Kne!KvQBDEh{K!H_!47G3kr>)!a;Qb919r z??77G_TnX>n0pmr znxWXB`EJx$xwFvlUx74BwMO;?2M72)KUxTfD}?!AzgM;1$AZqCjDNR5!zGTz=F=g; z6sfdrgcy3v>$EFnMfTAmY3YXnkaJ5+BpTFGT8b>2%phuLNOID0tIxy7N5)>YZ&sY2 zpYQYX$06Ac)rD%8F;>KYdJpt1IGj|7JmI8|LT`N)2{;>^kNP4KaB@CaIJX#vhQ--P z4>Ogg1acy3Ulu>w42lO>eN(ErNGNLL8bZFT39b1-`V!Vcr)~ZvMeU91%1=Px+xksE zN$feZ;PMF3eC`d!rlv&NI#2A4VDk544BSQ6ho|7J=dWD@1xXz3Lo2#Rf{YWGn?dO! z?#Vhuy5Yht1Rf6|s1?{XbteA^FA)>Cf_U)hN(=tu?P=f6NE)Y`?q{wUzo5~r<`G{u zQTw2;Uh96IuMUW3#tlsj!e@lNz{{WX&Z83kUxu|)e&)xdP<7q%SzdzsjjgfK<#xY_ zftmMo@Im?=c*aDn{76n4t(7OUNFAhSKzz4W`paW4(myH4TQO3AWd_BC8^9{I${2AN z`r=c^BRv^O>IT+hGm~DGKC5#|#A9*@flbl4yT6B^2x85ET-qiBO9r*N9czn=i?8LS z*{Pi1s#X7V`v8QTur%ZS1LvoLvyoYp7*zFuc?=Pt>B9%~sj3G-3@s)>S^J9R(0JU~ z|Fm)*h0b7PW$IT(9m*OtC87FL-Sc|brKhA#DH@RYE=ac+HBlXkj-YPeFi2&zpjcw> zbf5_T(P;j5_j`?L-JwlAC3@L$w0-=AYSKe!?_<~4U#Nlm?YJp!H|=}<&!ftjuSNJ> zYgQ&j#gv|e|0>z^EpvQ(A}~`0y}5d0iJ8-4@$gCjNXSDt$5lI~VSRewX&AJEg=tlm^?#_g;=)Z zpL!J-Cuyt{xX34vxW(%u2o8N&c`Ym~y1#Bdop-fq^7XG{@^VN7hnuQmy6Lc+%%$RX zc6P&kk$eCzSv#9_C2!MeD=;GsT2p*XHqamsObRCj$SlL<6RmSsb^L3o(_K48x+YaW zzH9L@y1b`Hm%vRW1OBKp=l0|_QyWo=ubUKg{&rt*ishqCQ+vdK)*FDPgbrmzvB%tc zM+SpJ6vgYjLo?tx&6JY?%Fr%Qrss?RSJj9Hy!YyZ4RRuA^ERbG{6ySO#Se6_6hijQ zU)mt8l~UAJ@iRZc6k4y0KZ_^0$B`37d`EX>=#4c$;z{}eSSI5f91%P*^qEcwd(GlK zH@~XZ58PkBE0HOaYG{gz#r!;x;OVV;WFg4br(LftEIZD5Uxx{?s$*&fW_)+8$_hoZetqO-h}tk?R1XEgtvBwdcS{RCm25$A7K)rdP{ zXXWW=WVT}w8?!fiaXJxS$>Q>GU$LV&~{U6hY8k2Kw{txx!8$NUL)1})ad5^j>(?I zxE`S^J(y5Th=@gU>hASDcghMbibgrF=u$H97WY~psVYDRFm}bO3e%0GUL?m*OJLN8 zNACq=Nq_FB_vN8&IhgSD)@Sxs@iZPOdfCk~hXApo#WR5q$O&YM282%DK|vAs%RC3RBoTk z@N(Nw0gzs87n=4l-9hUsz9$VzckTb}-qQb`h(vm##Y^h@URj9^`G&`(A&O`+O83@= zma$)*PH{ac$iGJq6QqHav$C24O(20k0$^W)sF5B`>WR4d5d_H3GnzAV{2|^ZCnWCQ znikirJ~PHpZiT<>Q^cmse){s#@8Q37=KF-^j;Vt}NlMxF(N18B_k8^vvfiv57GS>|Dc0$bdv@LbuedukYVsuY?wDI2gr-Hegk^M5v+O{f6te&WJKHT=Xnddrv?{#Pa%M}%4s9jA3tKy#@jLIXNCxwtWeg!f8|Nu0}9Pqhy~7u%&4orGhE zgtFn4kVv)$H(!dST%IpmZesU%FPe+jcb@+Wn3l@uz~nC`9^V3TAHfSNc&c z&))302!VK3+3}h&(7l>+>81PgqWu(i`zxbAC23tX-U#nA$N7n}5Fj|BdOoP+-QCt3 zm_xsCGh%cwB|D95zsWUkwR=Gh<_%Kt+?_gY)@rB}xc@aC{X=fttSKMO5BcsTKE6`^ zU?@j==j9e=Z7;7i3MxzQ!&?`knz9C!tvjhq zJnD|rP70U{iq(h9%Yd{PodM_pr!Ngb*nZ(B1Mh15vc79bB-MD_#)2wN0i>{QY#XF` z(@nRGl5kbl%&LYlw&+LK()ZB`QX#pXbpn%^Kmludz3|;ab~vO%B?lUtJ29;DQRL|U zxR~DO82-;c43E!5C7?LBuG#{$@d;J-znH7^-2*G#BW9-TeaSY8kXA(v2N3_%X3%Kzg9h;rO(T%Oq7&kU<(lKAGz zs~>~VN&oz_$Sae!7SeaD6HF9)mzz^QQ?R|79CH2X4~K0-E_^s-PzhZ*6$j*Xw3i2` z5CkPU`8Vw(lVoeA6}dAh&lb|C>x1*QHH`YS!I`GJ3WW6n%W-UTGVftwBxu{ln964z zo3GQX9d~YXo^$xKzZyk}FBOnN(k$g8$4;+e0~Uw> zs}R#*C3P*fK!silS7sbePz&c%IR^>S$`^Pw6m!p};Wpb1=Rt7^dx>FS)B^-1kVIX$ z!)f%WsIa?rymhPFEaiEX?9QQKAit!C(X+iHo2}G4{!^mu$caI1f%C3+6a`8NjEN>C zFm)*rswbS%Oa6R`q^Ajjql+$&B7cRB0e2t-%-AKee% zaZ}zK1-QPa;>9FuU4kOc_cAdNSH-ZI?_puM8ti0gLQkiy?T!6mH;2lE-_USs zkdWxAB`9{Xd3?1IvFkX3|C+w87ssCRVY9|zK1}_vXXVpb7e|VZxEA+zQ-VMFQ3T6M zMfla}sAFdXx{d(x1V-R@pmqDcGi*=F$?b^kp9k2=cpa}}GeyPAkcS1*KlR$;w)>PH zFxk8>9t{6-9a~ueUjJ`#I7OyvXS$7yKtt+b`tFSIny_KM>sLktzX1F)wk zM_T;{hMD9sTZ`dgHoskQD~sffiVR{6hu}R@rwt!5x$m^q5Q6N?v{rXkZ#~Rwm*k8x zST)3hH#R$z`-|B+LJL>wb?pL`hMXAA274nb0`KhR?vu~mU-(gp5hKv!@3YwS9J9wY z#J@fd(^pWC5PC6IbXlh`Gm28HC@>Qc-N^SXhWmN&9#xX;IhtY3{WuOX|C-q3o2_90 z-(m7n=wOd&ng9Nf8Fr0yl|GK+VEvB^%F=d5IHUB6)?%5nvF;)`))hc4YF6P6hfZ=X z45-Y^qgXm7-XT&Sq$g9>2HMqt95FJJgIhTvhQ;sV^YQJ0R=<9LtD@^`l5RcY_=AP! z>@`203HHz0582Qb6WGWXQD7Zf%za^0rMK+PERZ{DpdtL6M|0m9zw&YLqj-6FwnqO{ zxXbHu(H;IkZi*aoH$q!?`Kql(Qy`do|H(J zV~TsQIl#L+79%&Zw~QiBxh&r|gaSr1oD=g{Y0}Y+^!sg2Fx`RqWaRmaK{%c3;pJn9 zQ9wSUkkC&k6$zIwS5nvWvPcukvs zFW=RBj-N|ZHUvGbINo5@^l=Q~gUkJTjzv!p+ES-99SAe7;e+Ta&-4c-D$areZj5hE z@_S}?Ixb9sOhxRS$)>~t*a=}sDbJ2sig~HBH)?7$SdaPS?b(GzPLKZFS=%{k%shCr z8&tP>K1&Fc8h5-y>ZmdaA#HB+Z6gRlX3Edy3?%P*TqWmH4!;5C+1*@+{@fi26`@wg zC7mOL^~4Sln4I)cL*Yf~`|1SP#GCe_XR;V(Qm@qb{NADXa8`VLpAvL0%1mU1f5kFU zic{zLrS8*C+O0Pgl^QB3*+{J<`qE|wq`@VfPy9(BBv)>MEek4q;FS!!oEu$x#~w-*^tGK4U4;zFF zSC9xM7V^P4oGlA&Xy83KI54!gk1bTqH-34#XJHv{wZlB1+*3o1$=+2XiIHalylF%4 z(o#+BjiTDJGAWAIE3X3}B>wK3*NEKgDL=w_eQe;>k3i_H4O9jTH;K1VAm>@kg&A7Qg*p-a7^K7}9V zV@vk?IQqgd&FSF!%r*pnf?l3qyh{;lVZ$OYgQVHCCfyEl*A zK2{NvbUFmg4J4(JpR6B)-`EN~X~9;0U-@N`;J&c>2CX#sd5#(j`a&zO7wMaqi*yH@ zdwS(+t;C*A!Qu*wj{z2xwN{}wv|CFy!)NQuVl38|%8tdyDAC;jCs0mZv^mCC^V55C z29n1;7tSCfPTr3e;Y&%MKK4%3tUY1CX88TxwyvsGU~yhPEQs%Oc3TRg9h`f|!g7U- zE$;20JlaOX|32k3FfpGC9CPy-6kzC!|M@e5QKuFzyA@D`%?P9ltqW4Xr#=`wZF+^U zd)ASxqMAp&h0J{F$7Y9+knc=Sj^FbgU)}Zieay_zvST8fF&zt`*gSM`kI%6yUWMb& z(T*d?+?t!zyJVdx{Zs_^aD(VRHFa3GRWi8%oDrs5)9Dd}4Y610_Be&(Di;mjs#$%< zOgZwUz`|fK?MJx@yUH{{C&#bOI_MdiCKRSeI#cW=r$yWCNtMYNSEg@mbA zBLNXuR)AyFpn!zw3k^38Tl)|eO6+B5IGWU7%ogj+F<`(5$b<7@zX6O0ZzhQfqb?W_ z42;!uQb8=(*@!1sSKxz7kI~cdx#P!`{uyYf`}ghMVrC(Qf}(BOCQ+2wo#*Rdi#a?_ zi39D$kRiw*-4tm=kf*)87JwKLE`0NZYZ0RY_5Rf8d~jJfyq_~1b{*Qb(}J8dEj?3OHamy@D__@%&O(aq{-oFyl=1tC;&c9! z+d?SWp4z-$f(c|85A0`+2zHDqysnP=LSw!{6n(|BKB=#z(m(y%4&by8xngb3TfAG? z#X*8CgK|D4HF||?UG(RWb6n+?eudqrC>fC$5}Tj66eTO&6Ao0F{M@2x?HtECWF194 z_%9OTO4`tg!=x47F($1o?t)d5JUTC*Atwe(7kTf%kkjEnnbMvcaf<;#ze2&aTJP}us*3Vf}5Kf>_NI>3uzK)jv&4y3VT}?}k z3ui&1N}H>~0h1Pd2Q`%{)A9^|C{3%9y@9C05AQ<)mxQm}98m6$rr}{8<~OElI4dzx zJtqX_f3=VJ@~tIuy~y_3Oq<}G9!w2&vX?T!=9+1SCPBmpcu3-CjoX2=jK`yH+dL+U zF;)F_R2xs?BJdwe7X0dSXz_9MWE}(A(x=DH~z}~9GnL~`Yk4^d?ZV#RWj0Adq zzFiGXO2Ry8JY;&Oko{D6K)OdDsJSo#v}fe+7`(sw(RH}tXh@vRb#WmJ->4fk7PLU0 zi^t1s!c+mt%Inu<)F93#reD=X$S1X5>aD-Wk{p>&^7%W?ObTJ}X0i7}qxj#KY17xJ z_BbbO6U+CXDmB{y9?=38eU~qmu!YYtJtpP%W1x6yMc&&fu@@)1A91yZ;n?95vJc*! zlAl*!E&tNQ)8BWjmnQLvC)(rh1e2J{o~vXRKWK{zL;DIYv2}l#I$ZAT7Kyt(O0WuE z_O@simb{y%Z$@T*qd|P}A#F+atY?Zl;z)tl-wZ=ZBjPoxOH3yH@x%`>J*>=u=;QWt zS5lRhy}ksH%Jw1O#_}itoq!25E+Itn2`g!NB2l+UIs@@1|2Q;RTXQiUhH`GFV@l3VFZ9P6fw?430CLzfm&R{hId5Ift z$QUlE1_Ua{ialOHkmu}@0sXT+-VBe#t8&!+8E zz9sbsBG?o~5ig^6wOI!=9rg<97G)4%{ToF&B=nXO#e59-tdRQ!^0^-L)pQxnxxOZ; zd*knIf>HIyKRdN9fRWQcLPQm$M;5EfT6u3&TK+)5gBEt$nfSnNo zAee1wy=JHAR2)AjUp1hS;0peyHZMrPc0nskur0N$d0BZ79 zcmEck+S>@-bm9jq@kvP&a8Y=cyh3MKL_k)w>@RPpUE4bQ7b5*tR zpAc=615gQ>@}o)_qBdO@>34zeEcXwAXm?K@RC`+%_t0mtHYNZ1gEYf#Ioa(_BdF;)?>b}U$15S-U^AYy%977r5cRVz}c%s zOdQ~~w~4mu0#Gq6&-qpplX@3DZH4e`HQ;Qk0X5u4YLlRq4<9RivxK@^>I~y-5+4>U zBC`EikV&#fd*NuH0s8kgjBGoTIHIYDGpR>*O-MQ~NNRAr2M?4gb-mA^oUq>5hHSMB1$u4MEQ47VQf_yst~xZ#jg28UHGz;nqE&`=RrP<7G!;$ez) zO8^lE8%>=LL%Njlm_78BaLfoW1W1DEL26Rt?n3bCt4!<{P0s1%!n5zwV08~zQpo0R zGYCmORc3jb)mf{8eA2}rsra}sr7XE3GKKfN-^IU5RO$FL7k27i@x2%ts)g2Q>cMx& z+wtOj(VRGLZQH3Q$?Zf`1pVF^5f>JHfo7mP-@AviA;gJJ*$i^Xcc*&Nxo5VV>LPqa z?1uenY-q2xc>DnH_I|&;(nZ)>)VV{hc}f*g41aiMwff}}WdcKDhqUj|>La^yQAH5} z2H=JV)EbAy+7H<&jeODBH{TDNcV<%+>T1|HyHR4JIxmQsNHj(xt_}oZD{mHVyLoWV86y^;yqob`kJQ}G-z z^oX83kpBq{8KhvmAbmY3o3mtu^BTv%uyR^#)A|;)_~nG7NbhELLu<9!{fFrBu6bkY z=CrM^?vDmR(SK{O7^aaP>W{Asp9D4#5wH1na?lzS=(zh518pN$bpgQrM&y|~U^LQ` zi)`wLqqLK?aUfRHb^&u=ed<&g+yg-SY3=<8e;soAn)C~_ul~hjoSN{L2Id9!_OaZ$5?ez>_zf z<0$&%&Qlc4pvIRe{@__Lrq5hT6)kDrcO3kuN`PGuqjV;3uAIA60-5==fqR7y!fj_M zT2%kZgXmxUj?t8m{;Lw}T9kz$ciGGmM7e)&Svc6CAdXj5*z&d%!7FvPTHNGln9%(+ zE{r$D`Y}_}I?6m->|9$sy!QUcODxP-FN9A{_CR;+cy-7 z8h`cR@Z|lhy@p=7v=p6Q|PyHN}vCD>evR`u6!BO45 zAq`pYA4RP3OhBoMAmoMO3(P0Vm|0|p6v3L+je^%nZ$L6{$w^*J5!!wTKy@uhkkhDF zwkCn;F%(*OXZle{ora4l!}~#qvQ?5AHSf6qQMgf-sMNhxa)LQodvj6^#pYm@%l(hI z@i!oB+GMLGwjQgoz*-KErP{>xmst||DO}MWm%+S)~gzcZ5;(EyN3_y842TD-p2^?6W+4Z3+Pl*?=Xf1I`~-$^Pcs z5*x$wjc&?HLR7{>z?jD^&BYKumZa)gDxcu2R;tAj?|ZSu79@o;Bj9_A;!K~C%$bWO64Nu_=Q(#5R7H6Qv72U_ zF4HS_T7XzR0SV(SJX4boBU`xLctufhy~zGiV+pC#=ML1&_4(uv+!c;{1ru1^cREbGYHqh4}+96$UAoXRQ`&fEcoACA(7728&qI~ zP$ojNjt^;2JD5=aGZ>A#fxat_Z!;jzB4VKJgpNrVSNoD;d6-3JTlTohH^_fiRA9Sl zYGyZ@WrEEpDh$<05ha$NxTtZI=UoQ4!<#j||}vZSfInO|9v z2?uz$n^&(-A)3)}VNoWn)lHqP-hO?UnVy8phdv#`ov<_DBW)IgyHhCk5>E z#f?ZVzGle{hYv_rEB*jj@qnGWeJol1prrQKw_}_LTg9;bw-Pn5MA`W*IzrvnA5g8I z(9#furDT6^r9^VswlUy-wLB%TjIRYO4rmg4U+gq=C0Bh+f!)P#joN{9KbsbR21evH zETndJD;c1wM)0YsUoItB{goA@ErUvN=FB=}9!qNB;D-X7_2<2TC-1q``>4rYj>fPh zwwmYnC7vdN#=<#zjk z%vE*dp+nCPK!bdtnZ`GdD3-`_;NRq9K#>y-GvhrGUL-#3+LYk0nWLig#oj46PWWxeU`{1RTe0h|bh7?%P~>!kGYr z_E~|kp#ASRpQkj9up;gI?LHOT1*^FDK%xSwK47w_xb(T@RQA&L9yxLtCf=dU-d@dA zfXz6rdJK8nbM$dLS_rLNmhCg1>;Mr&B`MA*vUv=CZDpEz2e?lFYx~V)&dp9ce^i9Ep%tInEW?Ku6K-d2>A(%ZY7q-!kD7IU%cSlGKZ{G&;0TDe720UD^gT@MJ+W3DNz#siYNOEl!L&eatu9}run8p*XgLv zLYRmNikl}z80(AA=tv2h=_^INuYzst>g#}V{;q@*6A{n&6E(nWHLEZ9Rl8dG_w_PA zjL`*tD2b&7{5E=nJ{v8nb1gw)XP31YRS1vK3yZy6q=ST|D`By`H`SJ)tw_V%mO9}5 zXcdSLA%1CrDnbB{xB;xGKoS%+*8g|`_(&oCxVacShC1~~ON*HQPQm`oKoX>{xf)<4 zEtt+A@4#E9+bkE~N7I%u^IwlE9*9G9TrpE1Tt1D<=<()we0Em9C)VlxL#ugUqE2qZ zhv?|S0&diXReQ-^*SG=e!9sJBj}A@dTrl(BZ}y-*ToI9~ShP)-fH8v}WTkE^h=_D0{{2?VSSXv_`^B5|Fa(PV#$$6PQ0wk|fXLe< zk)yG`vNX6^z z*~iJGnb|@7)3D$aV6i-Z3f}6grZQtk6r>$^H~PfIKkAC{2+$qQ=ek93s)qGuhy{tp z;I5?KB4yyUPx(D5Y5iu=zOUSgyDpY;SoT|9AsxyHcsjEYR+ zWvZf$z@b*_3OqC~aJHW`DA{4LUnsY3ZSlU6qzC`eJnpHA_%>ETvge~r#P zxF>j^#pyYf+*!Hb8X4JyrR;n|pyeN^<}|}lA7v`(Js?!(iB|*DayKsBjz>t}u?uPb z7W-r}B@-KQWh*$PHkDkS+j@yBk@Ua#ddr45+Gtr6cMq-s0t9#W;K73im*DR14grF@ z1Pu#F*fO##j!*~!)RaMnsyC=kbD**oTq7~FL^Nqiin>IF=ObeZOWoj{p zGbtwrv1NoD7c-<)^68H+rS5uw$wiB&Q~FKD{yE*C-nY&0=K)E87TpQ|%%lcV-a0<1uyL8KP5d=*ayAV&O82qbFq@2~E3u9@TJ!>q-u*iWQKHen!z zVq}ljIxeOmOuIEckv&-}*&hupm82lDuRX1PpQOD|>VJCKXLdfW*1Kw`xTR+QJb~o- zo)(Vlrn>(&Tq4SorW3CFzK%|d^JnDE#c(23uuHeDSC;{UO-$QL58h-%Qb897AG zShqTbpK#CYlK}Ru(Z*uEOmj}p!m8WE_c7s1=+#`@QhSy1e3RIS%EA5sd@nK5C z=WRSLZ^hH8uZ~@@1nQ;#CziK^fST&pMh;GKUytY^iB7@K+%q8d5lWV8ZIToi z-j{roJ-=*tZUP3ro#kUgEtz|SNnpF+ZvDcm{6k**EN5QjYJON%XC%H-5>jHIM00bc z851Ci81*hVGSX@wFG$YmTXtV@+;HY%!Q;>={aJ1%|MYM^dVZ{7(f@RH0T&obG@^c0R)CR(Za=%c)Oe?;m3Cbglvu<2c^Ox#mR-UAa`}-vIatnv#)4?2Ny9*QFxHeCZc3be%7O1H0W#~OS zVez3qsueVHWP&bnu>7AicnUYL!{t={@#SSVl*rcH;W$o;wA*P?5FTJ+D_TGAW85~a zcex?gU)Z-#lT#m^G|%fN|LljbZCv170@~wb&=QfWp-1b&8ihnd$>BrDPb^}^F+7~@ zVO&KNz|=vj_sXeds^5M#USoEwiQ={Y(ejkY9?)L{qTi2vwJ@zrrU3;He^*AGDC|cK z&^66jHg&XeXy1j)3J8&f_-I`e+Uu-F*(bVt@QXDRyCcb%hg4m%DfWk-aBNDuG6)H_ zYGfdJuyexLEhKuf?A@%CA7k|toJ~H}=3tzCihcP{DEW*5brP8?`w45!=VATvC_mP~ z(4k^r&TZ2t?E2bK;BhNRE3Cy4f$uPDuHm&la2Pow2ymwFI z*RFSljJpcsu$>b{co7@(VhdmHlGqgQyUszF#0H|=)V_p5g9rOd>vlVA zkV(eeqGat@d)0c=*`bL?>shLW0oB7Ys%$nKs!72x`H2b5%pCOE(3lb88H0Av z9!yS)mL?qBh{Tl36R;@g?uw*x<#%n(XQ%Y-VxSdZ#QJnpx7OKfR@fW8U|j2b%9moD?t zqSd=PaO$96f@&hmW*xWJ9ObJ%G6!q!X7nEz(ul*+(P@ys02UM6n9J@`66N)gmDQI{ z3$RFZL!Sy)cH2L8zH;n3bnHIk9i9#wekp za@UlNYN18XDoVnpIa+(yS$3N_2j=j3_y^&#V*B42*;`D~FkDXkFWCks37f#|si4EJ z=8f**TP4@LBc7*QE?*Gy=N<+|=J&f6tMaYnqD%gc#U$t_Zpbx<1wU@Aq_-_EnqIu# z!NwVLdv1r_&z#SX8sF)=iwD2OrEk{1*3~*Obqe9Xt(9{kLW0HthC(Y6Vt5suR3Mxt z+x?4slN(5HZehV_B9m9w)BAc)<`WfF1nGfKH}G{2J0V?}E|4`X`U!vs1w`1<Hj6N}HIfl<)lLUTI>-k3iJ-|9jj8p{}m3mKyE!i30UhRDznF4%tNC(INX0`S8M3 zP8CT%INx>4H~)&FhWTSBrn?pabX#|;ldH7-^ONrH0lL!hZzI{7-cEG#0czM8d_qfz z+IVOSC3*IOS*h344-$vK#$n=)L)B!nk)3;B`LK9v+HPW`AVw)!47%MKaAylMVHY!q z0M4acJn~;DDPe#%#9%y~b4OLRV0?9zXm>EyEU=OzZ~}H`?wPU|M%TxFlWpmP-3FJ4 z57Ehq0^pvU&rr$Q1gy3s4PSNA5T1X!#eS5KeEN%}+tp#Ri+N&MI7U@(#2DWqd_7N~ z1SurHy!|fU^PV-1fwK3ma-0p3?(74yO?ePSU1uvAJ{zR`}PWD1-${cMFQv98IKHf*!hMfL5m~ruG5ZP(i zQ*Zm#^9E0}$mYy_XYAwx`&5l9x^rl4o2?hI>EY8=}S$H zvWkKTC{1E`Zq~4QG}Avj4eK?lTUyYWo~O>!PY#5|qXsCwD0vH=J89y7AL5FWDkFhB zNq8Hc#;ym+5-9*;)ka$)1bUVAQx7I&gRq?&dyrYW2jb4I0n;~xWZOkKrdRe^G0Z({ zT4Wu8nyC;030CuP^-D)7g98TsDHWdF^WE#EpVXRs9?qp{r^mv4 zNP^23TV9vC1}{bSpjnJOTGcllzSqN``#do#P~(~RO?J#s1(oJ1y1xNSu~Lper@8dg zs}nm1Ae%|~1q@^$7=9JTs|Sq|{g3PZ6yY=O|B|+q#hA9L@{N)* z?w59q8h>72W)&H60Fb-YgZ`IUvA{@-2CEHVsjeRPK1zdcn3;;PxjX%c;eY@N*Fy{* zt#pIM5C(70@(An+q8-}jBU>=L@~hW9gqs|KLywBE&aao4O?@7G!1XaK*jXj_DeYwe zS^G+6j>czy$a{hbW65vS7l=dZnpLK^=nB_(7g08;SZOar+BM70fqH(KTCK>F43vle za5)|KBbxXwwwT(;PL*pypH}?^tkSD%|DweFe=o}vX+TR0UnajBT5lM-20srV4thMu zu(Lm!BClx-3xm)0zLvS_)J-#j$psfuB_j>JUQXgz3$MGx z2?I8t*Cun0qK-SaMzcb6t+4Fu&(FuE*t${J0z4CB312dQsVgminUZmo+C`#oc{gY> zb>#ue&;n}NGcK=KWXC=rGpl^n39&ULruXb2CKBCKn2|7qUx*K}RBp}sB^y5sM_5L~$JV@6*H4})0CS{sIHJJdA;F83Y|SKSGKc&vISN|@gl z69cfk+tU${HUm$*S_ZS{&=PwF&i=;8qQW&mSj)zxlq^hpnaid&3j(l!?mbTI;S#eY zJ%iMCGWPc5fYlddAy)KuBXxpniMkUK&R#J+gEoE>@fB!f*J8RQ%fb&gD+(FnY^;(u zO7qfhy^8ra;#>$oJMfyMHXK(=5`(V;w(-g4+#(_3zS>-_Y>G?x2*_?4Cx!M*AI0Tve4-oc@JR#AA}IIeYWPPOgzdi3#jwla#I9#`~` z^vLpk8Mwl34Q!D0BIJ$=yx}T6I$PE@f#=05lCvfAOTgm4Z~m_(IpaG$6FSkuV12~5 z4+yF#MSmq{D42`G@7>U2`vANR#OMUn1S}$W&ZQHH3uTAYkmuEYt+rKU0IXoHUDvZ- zVcnaOXYALOxiKm{ z4p_*_%!0f7eo-D>=MS+HK(34D{&=vRD{4SZcX7j#F(i*{^jkFy?@yg(A>xpx#>h-& zIA-w$OyAOSa@G;Kg98IbcPH~rPX`$egCuTUUAZ#TI3GSxhVw3~C<;<_2>ZUex4qr3 z0`WVzeVGV+G6&;hV=y&-N58{@owHZ^l*t}6^nL1O{bav>t@gMv1;Erl!>Dcy;K`az zvhuB_0P;kpkm)R8ri(giffYzFw_hxXHQokDptvSP{ByoU??kDjq#VWBIZy|=+uIsy zaQMU!x2SM`>F$?GLnR)@;lxjX zRVvr}k^n@CvzNUG67T2~%tAxgW=~X?70343SojcFu5v|rohF3eSD6*+uhx0zJ~3gN zLWk<-{Gc?h-xlKzkT@jGpK+RouU&EcOM9pqNx$}3z07U;(oZd8@skljKex`L{ItxU zk~MW%4K|>;iubrfds6)o`6!!1u&_xC`JuNXZX_2$T_6SX$Oa)1+<=!hno{XyaQOyFgoUKR&qmES?8`Q}eve*f4(A!*#ss|9e=dC-S{cJ+@(=iL15o=B#4 zLXnv>C$?|7(vLX~8Z|dMrlUMS*opKD0LQi_;)LAq-tc zA33%-H-~`b`*dw0x>Ec1FU)o}r&aRD<4+NGHi@$xw(Bii@viaHevjK>)s2my+q3%m z`aI3G`}5VSVVaye@rzY-^`HNgMv<*dEYx=umm(#YKi_=6(w=bSqJgHY zI1Bi@PcW{iXTayj^gI{|(4`#;PeAsRd>N2H+O4FI4#YBM9SCIm_|j3gJNy}ZZDT}+ z-(9@<4kX>p?re+@_1be)Af)xHY4Y?C(fh^pAhW+1KJ;5>$}?km(UiAhikA6VmB2A` zF1^d_JqQRXB-8qMG7PUZ>Mn)G<_lfS^4#|K0t`x{tl6R7a$)KPejuKFIhn}1&Ojcny;(~uLqI|r zVM@_o-9bK*WPhhSnNsc0|4|A%c@|DCoUQ((C%^Xb@97x9Z>zv~7p1N}*t$Ek7XMND zexLo3r0chS$R-<5)%oJvQCTN?h3D3n!T@$6Z9i$fNH2rFW0J-lPcUZ#j zxXgMeii(p0c0jxp*aIwkQ|g+ypY&l$)t~8GXa9lSPFN#PXt@LxbNEBQo-cg6CoP^p zlx&>EzEOUP-Sb>e^k9wV%XYejFyIbMa%iiXct)rDqb#1&kI zvl6c!@(&U#3mgilTjhMo?ZX_uh0odU%=RmF7MC|S3HG zG$|?RwJ_iz(JbnZ%JF+DTx1u~IIv*NWs^Xhs@)KsB#c=iRwxLK+MVcAD5K!ieZ}y* z!U9!AJhb<}1V)q`Kfdiyj;*?VC^_c!n~Hkqc<-F)+X@?;fZ-Zu>cZJ-3^WC+I3 z&g|1Y;PF>d2ylJ3C45+XJaB&rOK5ufggXj9Cn4zPR!~5XaW5chOP!L`z_gOOoF6I> zcz$$V{C9Y|N=>{rGMmSN8><#9sPT69?0fz85Z9ThVujnEg8MFKUAWNRe@9)^jMte) zrfdcSr$z=tf3uU+U|r5ml8_o{D4f$R+&$?m6l_CDn6GZJ=nd^$gGKJ!e7w=#dZuk{ z&9LF~pliKU4N38)WIgBf_U!T$HS>72t6ZsbVazg_$r}X3Nsd6g_Cx5texY(*iw+O> z|D2%V4+if1NS0?-X67E8$PPYnO;pt*+i$IUO9XWEl-AqGhR&x0qUPEvO+(Diy7@8< z#f1!w)nN;yxtuGS;P%R@(b<(@ALG9rYYQeXo9*A>xzxSkbyE(kqoA;d7(aH1WU-k< zz7l+dI{9lddVn<5ZwoRC;=ZaKSX{(&IbBGCtV5XUpUewE#@pHHkNWF~nc8SR{iUco zDo5MxVl58RGl5!uZ!!vx*#Z1KQz*Ota=5d8%Vsh%G`@fR{FLNE2JKAg6*-SORWB%4 z)8hNMtL|>Iv58T}9_m;@wt_JFjyAB#O*wZGzjUtGMmZ_#0a?^cZ)ZYBm9}B4!%mQq z80w~x6YS2cwYb<(Gfu9TG-3z)27HiayQj;&SAf^UML&?(uy5N!ful?u!EVq6kqMkT zxETs6)+!u?tEj0|R^w}d0m-w!^uC6`-|7~0MeVx&RiEm|gW8FLtoh5NeyH7O8x1sG zbuL=xiK&^%5NI_H&_KsN1=drD9Lr!Otz@QmP=+8ei>XmcoTWS9FISc)9>k;?! z>G7{a{v#u`7Khyd_tT2Ty;cuESnAlHFBMDbNF{cb*Xpn<2}GF>`E~+RnIpWe!~NN4 z3N^H|a^oYLNO@vvM#kukbARDi|H`4EuJcQt@FZtleKjB5OCD-v+m+JOvbu~c@1&Uj zssPew<}L_b5BiD}IaYSDa66OWl_ko)ar6fq83a~EDf4S50XYPz&Q!W4oM~wIZ<+NQ zcrJt(!oko2B=+_7oOkci|Lp$FUg;-piG!yLVQndTn-*s1WFzXGP z671@j+=Kc9N5F2H`y~WP3w^5JD}-Vm3>2kgecV5Uxu+{>=gR(2*tz~!NGu|YS8IjCAKQ?= zSfBmCAdQdviNOwgK_i?X>MpvNH|lbUt;VvER}|x=>z(m|XgVu(t>qEw53gfUa~Yyp za3gE``Xe8`p`rZHFE(B(&O>?4{chD&-R9RY;@rCTTaxvM={Jb(tWW$cX;1S zx>UMB2`&(jl3o+zv>JbJ(1?FyG2PJpzO}BWzw5v^E5jL+DHRexMSOL*bkJfxvbSQ8 z-a0IAQ3(lLbe==a%r#b%Q zq>x4D=7e{AM^T}7wn6V|kHxZ$cP<3%Pla4_$mhQU zUAv=_+~#V0#5>zz7&LalJYM8|GsNT+2#OOZJ?y!ys2W18WWkoFiX)YvQ%f6_1^A%2JcxzMA_nt$>dVoqwpqpeWaJ%9*RAW@ zvQ^%Gv)@`*-diK5a?)29jHW3qxpA$+G@ zIVbLeW%?$NoE`T?^V|6v^v|cewh8#{3xnw01T806-NWnuuC>1*;+nt{jPmvsolB|c zAw<#$k(FTr(iE9#aemZC0n~?za?EsM+Mr8SiPD-0%nd(v=!#C^l>B%4XN8_*Z1jAR zgc|2IKT5x`BfWLa7AyO=AL*^#@(}}keYdXB$|r>s4t-jaRPRTH=lMBxUuXf4Q#UU8 z-}UZdfw9f<4HQ;4HHD{lQu}il-5^#qip?k@{D@Sqla* zo|=oZXh;Wy`+91T_d8RnnFGLT&%G$7_6-gLb$&(LZ(5+<`2ielJG=gyfnPX9_MXVw{j@!JJZ_cHwv0N;9xb9^JS1-!c)Qmo(2VNRfjOcu*_fD6fV&6oW>U$G*Zo;H5ChNR zbTFpVMB$$UjIAgK0J?`)th?ej(khssZnHfF@dPF1)1-9_D3H%`2Yjmr8!#^KxyOmN%NJjcu=dF#9z zzxp1!>3Af2L1Wr^+1*ym;T2|m?Oo`>P07(4Xt6r|+xeKW@q@2J0I0iO>QaaP6W5?T z96XKONGY5-T4i`&1>aN;BWh~y%%8MUMO|ZKDEb`WFW~ob`c6KhZ(x39(L@}JjoOUy zfu$hh8{*Z>11FYk5aM!9ghPaZkN~-W##2>>Z!}<Z7l-eDD2ZlExZ(4xK4A#ud?Dk@vXuZWH!Gwf_q&5l;9^M$(k7_npr@h)8 zA0HpBHM6^(Es<-i>$d?tH&UzSY*9-lf z+GlH9t0>oVWPK`*Jyt@;O>bRm2kUQEVi$SSxAIvW4UZc>-L~j#3*mbz`Kpf8VE6fDxS8t39d*IVq6Vg@f80gX>WXU7Ln69^T0dYi&h{aibU6T-6K8{qAv^eRV$ zEamJp)JNP$)H44P(ORVG8yr8Es?QK;3z?%3$vWwBkKg|r)Rjagp`OvEfNDjnGEvKf zsYydkJtCr2(8jFap#!(FlXVC1vPN&ucf9IT5+kpHu*g5Ubf-8ScErOIpUaaxuO$5c zblR*o;B(S}LjL5P@1Sk%ijj@#$9P!iZ4FX#8o2QsJ{>YQULVz8;O{Mo-$d6+wyicX z2%UZtn9!cjmU{d!UTqI)FNb1+O6xM$uK;I$#;pU<`^|`#c4X&N;zUO4LjC=zT z5At#vUdn{v3fzD&!k>Kl`SkH=WioZmfX!B7J+L!DctKYm9+@54`SYS^QAyO+{MuMs z7oWIg3qoo?)rKx!_uoI1w1SAEOh1ZvB4lA!jMQ|>O`~MXFH@WuA}#{fug=r#_Wi8% zTAIBNbzs&jM(VyuN`?Y=N~Ja~G5J%c_>#9(t=i#f1|V z?u2r2`5VYIL!&Rp%<2EcmBwVPWgh+WF_3$foqjj=Ui4Xzt?NgZK4JJ{|5fxe>^nL8 ze2tZ{&PhSDRX$m{iVtK_W0{@VAGb;&PrO-Ioq6qtK4mK@Aq!X$k z++ZV50yzzi8R~-H?P3U`T_%D0sWQ?G^YoJl-f;#ccx0^Pu#h)^+o&w}a7Xs5+N0X$ zr2Xd*{%HD;!Y{x7hndpAxiFaSfl-xrVlEf*t>g#3@#%zC3Zr18LJz(ETj40RQ~i9q z0<9cKog@Zj=8g~DI`bc@W`cDl$USw`NjEPWqP@UG#5AujNuqx4;nTy=bf-cPT2-Vo zajZEN@ix*EEBVV%&?a&@7E{eK>18IhZ)G@)2Mc^+arQRC&vHSmAWM|^D(Fi#63DoN z4VNp-HMB)g34N{CqIfJ{p@B*F!?gV2@s9MrCvT7WBh>9-?5-MxB zXc^nxJtCTo%HT>lAriWBmpT%i69V&lg>QdmwRWJbaZ!3q@qrr$sy%kM6)bwB8Z@|Q zVN8*FP>HH`zA(JLT7OywT9HWi>IB8^e$hp|6Dr%j&)B}U2uo>q__LKS}fJ=pc8s`zH|!4R_npcL^G?Ud`3E(+bWEE zef5tsI`Sd2z2{dVcRsBIX=Etiw?dUBm;LZ;O%6cKeU>-tVKJPAg+4-5sxM$)K(#>N z_5zbwV|?gQ`0wZXE5HID97Wo=v;;MYl~Xe3;ShT1R?*qZyyzFeqwlUiO49Mpr@l}A-QDB2&90(qM=bXq?jQ9T*v{CUy9ss-@1-_ z5?a~-yr=5BHS@Pw9JuLz$80psI|ZLa$NF7@V>njIGnoHai=(e1#*oi6VM5)Nt*wa{ zZb0W^tv!|-<6#wp+uw0)a2*(6BAPanBI_&qLs~$$-UNw9O!ytzCOJo?ENt{eVPFB< zt^Q(P{vEMxkpUusU!6Px7Z&&)5;~|FjI*o#7w4vHyI*?i;M8=DzVdaf_@D}tsMx%J zutDqTUctf>vVoJ8MeYhLJ6@?XUH^9kJ{#~r5h73Zmp&v?sw5JA2Sv7D8J?rF9&F)f zq6_EjW*^HJjjBGB=jxUq$^V(UuC3p0c&O8&M7nr{lhj;PIn~>^&FNa{MxCk)#FMG} z+{NL>xMSI5S=4BSKj&ZOMVt^U$$sZW{TwCG*}e%;Z%=YC{ad7h8$yB*+6CIzcZu^K z#4AP6(d;Cy|E4OSb(8hGl*6#jgcCPc>XT&d{6Np7*!$-r%DOANAaw961b{)Bw@f*+ zLVD5Bj1RN2B%`zvW9;Pv_Id_yInZ!cSDZ=+S|>K?$-D5|FnLxTY>5%eAf zmvVnTl6s>yYE2vs^DG|lSd!Uw_}d(ko%mGexRiuK&Q};VdkOsd4WaWEklP5^_}8B^ zN2*;Bga6;dm>UlD5;RHfF^KEDl$|D{do=$SmBq#LcfZ_k{{blH09N}+kxU=Q29XrE zvd$YLB>hhZO!Z%llsozQ(?raS&C**Z{>Fl^o7HiL3Mq=ret#BptPlf8j&m}Y zvn&|#jd6?PcRHmTm#z`CYKMgmC#`P>rEjy^{$Ag^0;Rev$g&uLE8H(C0&|q}e)oZz ziiZxb0FPWmQC_|ukn#b<9CZ7X@AWWEljAUyV0ucKaYcW_vt`OC09g7qNh!nS(PV=d38R>`+mZIg$fyThS{=>aB^ACq`7T$SmXQmpK?kjYME# zi}O|K^$w|7m-;tdbOO2Bv=JSYox(ZVQ4p`$Glu?mE3ReUDHI>)id5FUY14& zlZ!;H{@Q*J!>l5)`~DSC-*yei|D7uA&zc|UMeqs}k!GSWa&rVcuxJ!AyN2Q@@7NfD z)Cbaou{3BrynWwLa}I!6JCrj*Ok4@@I>OTLV#vstBbaBKq zL#Kb`16#&aMOVk9LRW1l1u@2as3YoTy@6u;wh`>p-XiUDi*P)dBL;Jtys^RJW-oHq zA&mL7OZaIMEg2gzIz2x{5l_WvdRdcUY|Q>C%C)-o@6`8<{`TL$QZbyLD=s_PBU=-M z1}1M^ef|(hX2j+tT#jfwd*Hpr#-U=QxrO0b&YM1p0D~EvN5#~OCM@c)ubMuw|s)1U2_?! z_+|`D+7Y7#NKqu~DPWSHA%5#K$4#aWl@WUTGX__KpYB#%7@^(OAlvAmNg@5)X@13_ zg>$&1LLVIXOY?nrA0HE7mlvW!3rB+Nse;B_44_Ftwrzc5=o;5=2VXJ$ciM(<-FZcr zIixk%Meyz}fL9na+HFqgiFUf46AHcEs@$F}e*k9mpb&|JolI#ly#GJ(psB4r`u}Dg zYS-Gm+z6V0>7RmyMQMSugyGOR{j$2l-q& zY;97GXr>vZaY(?WPpqKVq*q3rMnC(eF1NFdJ;=craWu(fNz34YN}~(_HwDi9?cP|I zz_!Q1#AT_D5NAM$QDgCW^*;K`BF7|S64|u z^0Uvsn^&HnZ+y=Z7!+i(@(e5j_xxlP6{QX*vT6XgPxA?Qhe~}*LWFrF9OuR7<=*h= zdcOsEDnCAd%2`Y$Df^2PyHlbAQ;^s6gKEoUB2pE&n2#7d;jy)3x^g>I6QY> zcS#ez(E&Z&Xm@DjzEs2y$Irn^MOqQt-#ZOwR@7E>=ei_f3vB<0HdMNAU3)V=_}rR5 z><{9DZwM;5bw}pW{CwsR8q72x$Or2-^x}xj!H7!n84qBx#`r2;9S zih!Ls|F_~+IRFAUZy1WNaGa+{2E&8~04^=b_vl&eB8=5#Fn9V{vf0(uuO_~k@qmJj z7HcybjEiW2_;t|^1(ut!K|<16C#EveZJd3Et#jS&bdzksWaOjgi|c2s4~F}@s8w;4 zm|Tw7GucApyyEYUM@olc#`q20w+{9Rj;SlnrQNs1JTAc&7ops%0A=3BJ1rHv6F+-- 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 Date: Tue, 13 Aug 2019 14:28:31 -0400 Subject: [PATCH 19/37] texttemplate: fix GL traces with txt array longer than data --- src/traces/scatter3d/convert.js | 2 +- src/traces/scattergl/convert.js | 2 +- test/image/mocks/gl2d_texttemplate.json | 9 +++++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/traces/scatter3d/convert.js b/src/traces/scatter3d/convert.js index 475a4d74f20..61d52f0b5df 100644 --- a/src/traces/scatter3d/convert.js +++ b/src/traces/scatter3d/convert.js @@ -246,7 +246,7 @@ function convertPlotlyOptions(scene, data) { var d3locale = scene.fullLayout._d3locale; if(Array.isArray(data.texttemplate)) { text = new Array(data.texttemplate.length); - for(i = 0; i < data.texttemplate.length; i++) { + for(i = 0; i < Math.min(len, data.texttemplate.length); i++) { var pt = {}; pt.text = text[i]; appendArrayPointValue(pt, data, i); diff --git a/src/traces/scattergl/convert.js b/src/traces/scattergl/convert.js index 8c569aa7b63..e644d1548bd 100644 --- a/src/traces/scattergl/convert.js +++ b/src/traces/scattergl/convert.js @@ -119,7 +119,7 @@ function convertTextStyle(trace, gd) { optsOut.text = []; var pt; if(Array.isArray(texttemplate)) { - for(i = 0; i < texttemplate.length; i++) { + for(i = 0; i < Math.min(texttemplate.length, count); i++) { pt = {}; appendArrayPointValue(pt, trace, i); optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, d3locale, pt)); diff --git a/test/image/mocks/gl2d_texttemplate.json b/test/image/mocks/gl2d_texttemplate.json index 5db4d1fae61..4c30dec571b 100644 --- a/test/image/mocks/gl2d_texttemplate.json +++ b/test/image/mocks/gl2d_texttemplate.json @@ -11,6 +11,15 @@ "xaxis": "x2", "yaxis": "y2" }, { + "type": "scattergl", + "mode": "markers+text", + "x": [3, 2, 1, 0], + "y": [0, 1, 4, 9], + "text": ["1", "2", "3"], + "textposition": "top center", + "xaxis": "x2", + "yaxis": "y2" + },{ "type": "scatterpolargl", "mode": "markers+text", "text": ["A", "B", "C", "D"], From decec4505c54d5d25b0bba630ca426340928f909 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 13 Aug 2019 17:52:36 -0400 Subject: [PATCH 20/37] scattergl: :lock: down handling of texttemplate with fewer elements than data --- test/image/baselines/gl2d_texttemplate.png | Bin 26138 -> 26831 bytes test/image/mocks/gl2d_texttemplate.json | 2 +- test/jasmine/tests/scattergl_test.js | 27 ++++++++++++--------- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/test/image/baselines/gl2d_texttemplate.png b/test/image/baselines/gl2d_texttemplate.png index b63a6ef7e9eee3f2a634b7914d52a56091056332..778520f36083915a547a52c6f04119be1c15528f 100644 GIT binary patch literal 26831 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 P3VxIoG_Dn2H4pqhVTgvH diff --git a/test/image/mocks/gl2d_texttemplate.json b/test/image/mocks/gl2d_texttemplate.json index 4c30dec571b..e90aace0a8a 100644 --- a/test/image/mocks/gl2d_texttemplate.json +++ b/test/image/mocks/gl2d_texttemplate.json @@ -15,7 +15,7 @@ "mode": "markers+text", "x": [3, 2, 1, 0], "y": [0, 1, 4, 9], - "text": ["1", "2", "3"], + "texttemplate": ["1", "2", "3"], "textposition": "top center", "xaxis": "x2", "yaxis": "y2" diff --git a/test/jasmine/tests/scattergl_test.js b/test/jasmine/tests/scattergl_test.js index c73a6b92d05..e2e77dbc448 100644 --- a/test/jasmine/tests/scattergl_test.js +++ b/test/jasmine/tests/scattergl_test.js @@ -117,18 +117,21 @@ describe('end-to-end scattergl tests', function() { }).catch(failTest).then(done); }); - it('@gl should handle a plot with less text labels than data points', function(done) { - expect(function() { - Plotly.plot(gd, [{ - 'type': 'scattergl', - 'mode': 'markers+text', - 'x': [3, 2, 1, 0], - 'y': [0, 1, 4, 9], - 'text': ['1', '2', '3'], - 'textposition': 'top center' - }]); - }).not.toThrow(); - done(); + ['text', 'texttemplate'].forEach(function(attr) { + it('@gl should handle a plot with less ' + attr + ' labels than data points', function(done) { + expect(function() { + var mock = { + 'type': 'scattergl', + 'mode': 'markers+text', + 'x': [3, 2, 1, 0], + 'y': [0, 1, 4, 9], + 'textposition': 'top center' + }; + mock[attr] = ['1', '2', '3']; + Plotly.plot(gd, [mock]); + }).not.toThrow(); + done(); + }); }); it('@gl should be able to toggle visibility', function(done) { From 2f6bf8a942c58d600288fa47b632ff55cb4dfaca Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 13 Aug 2019 18:55:53 -0400 Subject: [PATCH 21/37] scattergl: make sure text(template) is not mutated --- test/jasmine/tests/scattergl_test.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test/jasmine/tests/scattergl_test.js b/test/jasmine/tests/scattergl_test.js index e2e77dbc448..e08a967e028 100644 --- a/test/jasmine/tests/scattergl_test.js +++ b/test/jasmine/tests/scattergl_test.js @@ -128,7 +128,11 @@ describe('end-to-end scattergl tests', function() { 'textposition': 'top center' }; mock[attr] = ['1', '2', '3']; - Plotly.plot(gd, [mock]); + Plotly.plot(gd, [mock]) + .then(function() { + expect(mock[attr].length).toBe(3); + }) + .catch(failTest); }).not.toThrow(); done(); }); From e7c034aa6b3b0daf750d6192ecbcb619a3a06357 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 14 Aug 2019 10:43:40 -0400 Subject: [PATCH 22/37] texttemplate: test that trace.meta is passed to template --- test/jasmine/assets/check_texttemplate.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js index b219c780824..e6e905d1751 100644 --- a/test/jasmine/assets/check_texttemplate.js +++ b/test/jasmine/assets/check_texttemplate.js @@ -22,15 +22,26 @@ module.exports = function checkTextTemplate(mock, selector, tests) { expect(gd._fullData[0].textinfo).toBe(undefined); }); - // Generate customdata + var N = tests[0][1].length; + var i; + + // Generate customdata var customdata = []; - for(var i = 0; i < N; i++) { + for(i = 0; i < N; i++) { customdata.push(Lib.randstr({})); } mock[0].customdata = customdata; tests.push(['%{customdata}', customdata]); + // Generate meta + mock[0].meta = {'colname': 'A'}; + var metaSolution = []; + for(i = 0; i < N; i++) { + metaSolution.push(mock[0].meta.colname); + } + tests.push(['%{meta.colname}', metaSolution]); + if(isGL) { tests.forEach(function(test) { it('@gl should support texttemplate', function(done) { From 4b1face31090fa76ce1f43e60d0eb159e9d5cf4f Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 14 Aug 2019 11:32:11 -0400 Subject: [PATCH 23/37] texttemplate: pass trace._meta to gl2d traces --- src/traces/scattergl/convert.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/traces/scattergl/convert.js b/src/traces/scattergl/convert.js index d8428d3ad9e..0e0c9513d30 100644 --- a/src/traces/scattergl/convert.js +++ b/src/traces/scattergl/convert.js @@ -122,13 +122,13 @@ function convertTextStyle(trace, gd) { for(i = 0; i < Math.min(texttemplate.length, count); i++) { pt = {}; appendArrayPointValue(pt, trace, i); - optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, d3locale, pt)); + optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, d3locale, pt, trace._meta || {})); } } else { for(i = 0; i < count; i++) { pt = {}; appendArrayPointValue(pt, trace, i); - optsOut.text.push(Lib.texttemplateString(texttemplate, pt, d3locale, pt)); + optsOut.text.push(Lib.texttemplateString(texttemplate, pt, d3locale, pt, trace._meta || {})); } } } else { From 888cf684bbc9c4f4f8c35f4ced09299e554a5f52 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 14 Aug 2019 12:27:13 -0400 Subject: [PATCH 24/37] texttemplate: DRY code for gl(2|3)d traces, pass meta to scatter3d --- src/traces/scatter3d/convert.js | 28 +++++++----------- src/traces/scattergl/convert.js | 22 +++++--------- .../baselines/gl3d_scatter3d-texttemplate.png | Bin 23024 -> 23351 bytes .../mocks/gl3d_scatter3d-texttemplate.json | 3 +- 4 files changed, 21 insertions(+), 32 deletions(-) diff --git a/src/traces/scatter3d/convert.js b/src/traces/scatter3d/convert.js index 61d52f0b5df..79d48bed66f 100644 --- a/src/traces/scatter3d/convert.js +++ b/src/traces/scatter3d/convert.js @@ -242,24 +242,18 @@ function convertPlotlyOptions(scene, data) { } // check texttemplate - if(data.texttemplate) { + var texttemplate = data.texttemplate; + if(texttemplate) { + var isArray = Array.isArray(texttemplate); + var N = isArray ? Math.min(texttemplate.length, len) : len; + var txt = isArray ? function(i) {return texttemplate[i];} : function() { return texttemplate;}; var d3locale = scene.fullLayout._d3locale; - if(Array.isArray(data.texttemplate)) { - text = new Array(data.texttemplate.length); - for(i = 0; i < Math.min(len, data.texttemplate.length); i++) { - var pt = {}; - pt.text = text[i]; - appendArrayPointValue(pt, data, i); - text[i] = Lib.texttemplateString(data.texttemplate[i], pt, d3locale, pt); - } - } else { - text = new Array(len); - for(i = 0; i < len; i++) { - var pt1 = {}; - pt1.text = text[i]; - appendArrayPointValue(pt1, data, i); - text[i] = Lib.texttemplateString(data.texttemplate, pt1, d3locale, pt1); - } + text = new Array(N); + for(i = 0; i < N; i++) { + var pt = {}; + pt.text = text[i]; + appendArrayPointValue(pt, data, i); + text[i] = Lib.texttemplateString(txt(i), pt, d3locale, pt, data._meta || {}); } } diff --git a/src/traces/scattergl/convert.js b/src/traces/scattergl/convert.js index 2457be8c66d..92536d4ddce 100644 --- a/src/traces/scattergl/convert.js +++ b/src/traces/scattergl/convert.js @@ -115,21 +115,15 @@ function convertTextStyle(trace, gd) { var texttemplate = trace.texttemplate; if(texttemplate) { - var d3locale = gd._fullLayout._d3locale; optsOut.text = []; - var pt; - if(Array.isArray(texttemplate)) { - for(i = 0; i < Math.min(texttemplate.length, count); i++) { - pt = {}; - appendArrayPointValue(pt, trace, i); - optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, d3locale, pt, trace._meta || {})); - } - } else { - for(i = 0; i < count; i++) { - pt = {}; - appendArrayPointValue(pt, trace, i); - optsOut.text.push(Lib.texttemplateString(texttemplate, pt, d3locale, pt, trace._meta || {})); - } + var isArray = Array.isArray(texttemplate); + var N = isArray ? Math.min(texttemplate.length, count) : count; + var txt = isArray ? function(i) {return texttemplate[i];} : function() { return texttemplate;}; + var d3locale = gd._fullLayout._d3locale; + for(i = 0; i < N; i++) { + var pt = {}; + appendArrayPointValue(pt, trace, i); + optsOut.text.push(Lib.texttemplateString(txt(i), pt, d3locale, pt, trace._meta || {})); } } else { if(Array.isArray(trace.text) && trace.text.length < count) { diff --git a/test/image/baselines/gl3d_scatter3d-texttemplate.png b/test/image/baselines/gl3d_scatter3d-texttemplate.png index 49b25ca0ea710bc5e031b2419ebfb0e9c6162e8b..46897a1e65d12d0b390bac1569817fca778858b7 100644 GIT binary patch literal 23351 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

MF=BLtWm|FYcy#Il|gJcE~{B+zy zRjv(snpGn-nJ~$=ETgMj;KFFybH|t_q}1(1MBf`Njmmg@RUAEI_MvPf0O6_p600nk zwV0i4>@Rll+d?7d>Ha}i^( zb>x0t_dA(C>|Vo9C>pM7u6fzUr2l$f?xCKWP*5c$b^bA9x7?w$=VKux23NBLi!jPr zGjz+o%d6GeFtdISDr7^Q7{Hx4$SLrbU!Qcnuix2X-9yg1?7l5&Z~wwznG5L83v1FS zu?HW;R@#j?S{k=Aw+5eApNO9s)^JVFW0g;KX{UDcj5qMQM@XU1Y?QAV388%*?#}84 z)zEM3yB&dWz0`<2_{(kgc5rtBb#cTUM0Vs9NgFzA6WX@;lrRFtTl_w&7_?a)Iek#>0i zir?gFe|o#D>#97QH~&{s+a4*k#C#9jDrB_PufjM+2n;P1RxL)wpd3YdfX-UFFqxPyLPr$(QJ&b*L+&#x&_vwLM@TY;}~d% z`5{8w+<6{Kjc@=;Y`#K=lY{Nf$@$94%F@XyQ_P*^re+}wMaP}Y*vQDpxDn~%nw6yW z&kZiUFOGpIj788PC%fJ3xTf0sw#?s<2mN`QTvx&ILq-PrOOot$Neyp5Y=ZTGcvG$3 zPD-wrd2dwm((#>YNFc;<iGg0o&*qUe{!p{F7R$(ai*&J7?M^{#O zQy)-@_ELSWpWjjG)Qs+vI6LVQm5~&HfFsi4mMVSKUJq|(&i#660E+8rsB*I#RjBiK z!y(#Hl{ukMrMVq2e9C>&elX4a8MNdv@!-cLRtTzP0(`|QgwCmOE1qVvFr~$ny_R8B zbY%Bo4@tW$zNzB*i%eP5s8S2tGEmjvQi3&ab95(*>$kAXBOK4}gg%tJ%W}JB{X5N@ znAKK#hvZB-*Pf}v&ja>9p87af#@Ut_`hJ>LXpeb&{RAz^3=Ri#9d=^-*|H7Ck3`8( zuK{_q!&vP_zN!BFTt6S;m(ew<5pKPaZ)+?SF%k{D$Mfs?QwNX)+HZhwgTxH|TUE2$ zd^Jnxx6h!#Q{<2H-%%L~liyAD{tM0t`j?2;b<0CxpCD&|b?et1o?08PtxrIAC7}Yg z4DsC2Z$fTE!x zVyYeShk@D^yFTAln7T5QGV&3wHMXEKsJP}?b>reu-_$V7uqOV1N=$R}0o7?TKQ{J( zz(D$t0M^0UxbU8^_QvZv;JlXO0hpuI0_G(NSYN*m=2$Q{KyT1UUyD|~weN_-L%Z)Bu$pnV|%%~`K-K>b$27V#| z-kB>7RCpYv^$2dY#z2d+_E}gPhrj-JI4>e^Z{z~AS#N(-DIQ=YWJ>Sap*tz}rO~}f zy&wemRTCET#K>BP_2nwsy-Lg#m;??TdK+h46sL8>-~NSgJ&z(ikn#K`h6a2HcZ(WW z=eDUk--Jc`{54m!<%VY#gfTS>^0A;}Mz65I(Q(HrjEIi*9C^V3+(6c+*RPDR?^Qcu4ONAdIM&A{o7cIE z+M61~JQi8{1ewnyrdquQm-h;0Tu!omDRNf)q4T#`Wpvq1in{;co*vpzDT?M5sfC(F zzN-<}gwGG-6@ zf%jGZtgFN%IYiyc=ncS&kp)AG-4G~LQAdnwA}R{NE-s8 zg9I%Mcr{_^Rh!3FT^D*BY&Y+1+?jMXQ{q^aVb6@MVmL|LCQNHg8w$e3f<7Ot@EIqE zzhxUmDE*axW)o8hSNtFz`!>angBHX7nnhg}+P7wMJ~28Kmv*rk_H^6<6Rm;vR>!sc;3l|>Ok3+OxQt`~AxVCE**2xQ|DospgCj_}WD5}p# ztK-{4&5E7!a^v4MG^}aOT|~H=V8=4C^DOEzP~n$EWOx0FX|a1lMMz%j-KkL6kfCNG z4L9Yav&+9Bz2da(OONTDn*wZM@PZ7Bc8c>I^dpkwEQGRA+xW5l;0LdpD6RrvAceDHdUAJSSMkA{>f#@GsZf599o1R0a*cP6P8 znY9n3Bzf8LlHo$MPRYe&x#@tcrF_qIN5MiQndr9$6}lvo1*MlX?v#hNT#2@u38}$N z`VfV%ex$3h{lf3*m$+3X&WD6FQfx_{OG-%ywq!WgIA-N+v&6$H#Vw)kWFb876?$FC zj+g3wXKtx1iI2Vvbih+b2t)D(-!W-%J9WY>DtT+zJt2uVA3m*_C7oQXR3HC-be?z$ zE94!;E?ybh<8vDQ(vxc}6s`ecCZHM*7eVw7p5+`?GjD+MMPiLN_&lKck0Ygdv|QI&%_n-wORw zz+vS|S|+`ZjR{p_f^)PF`|D~c<#N?4ThdG$nI0b4*o#(q!~oSJE|F*+NjS}=Ei zAn8#%e5IfJ4kF}E?XYsR(?+o6{8#FC#x|bUkVnGO09!j)Lm;2^IbD>o^g|pOuMr&Z zNDVqa^zr(;2Hb8R&Q4LPQ4vSOuGRUIAA#Og6xLO$;eD_ynP%{==J(HAroE{zs1D1l zF$^{|9Yci#*5s7fjc-IFl%cHO%YXpJReYS%pEz6XP!rC|1PV9G$~X-$k1p!G%Kb5d zTAs+1zr4u(R3?rt2*hMX!B>*nwQkb0SW|oJPKX{Hkl`8y!Ml+L#jR_!9;^74nxc~c zMDbT_CIc_WtVn)Rf&5kvoGV0xBV<6gSuk;+;ImEy`{fIOco3&kwRDC*+n?fP33~z-_IphDa(zMcDRiE5L0!qqur% zXt?UVdA!ca6zlYaUS$FSbB8q3E*=nTSHP$Fcx4B5#iu&rZBNw?axn8~siJ?Y3G#Wr z43p4XP3&8ImRSt&c;A*-`QQ3@SnZIyAx)ViL9ci7ARoF?^aNlUeT^+0mF|UDd(_si zZj%5-BVBmIbj=%|PtS|km$i{gn27+&?s!wfOmjtef;bmYtBIr28y7^;>1&KROpHK~CYJkw?j|QDn4JR^jF%{wfUkOv#ZxRR>oJ zodHGGEZr-YtqgYEf!oSD3@BMhD5iWsP`~GGoOv?W>bR{;YF$K(mXPwdTJ2JKMqFpI zC=a*gH%jLV@f^2cd8uAX(Q>gvQ0P5SE}K2LG{@DpfUgL)q4jLGy9l{9#7SB^^=xIp z7C!u4xzV@?_Nc;~EZ|^seG+MJ!MMO-y_jpT!BVPujvgx2ChpRWYT5;6x{-aXm|u|f zs+oSdtm5X}bMsc$ptf4UuMb7Z`6gO#b7~%d+4p2#4Md6Mz{bes5?0gveEHy~9@g~o zj9Ar4+q;4tb9zz`U@$v)3zD-GVA|D|l0N(t;7??9QFoN>KcY&VLVCfxp;JyDIjE&y zQsV#a#DApzct*57nDdao6cZV;`AqXtD``pC-rjl>LKB6++8W5OG$=$Dfw>~4P!Kb#ve5l{oT#${P+5UQxW zR!1`qGKSkfjwWomWWz8S!ot?_YFt_v=TvZKK~RCZTCVgvo2WG2#X_y6{)=aKZdBQrz`c-t;K({;2C6T7&pwdt&r8-5cdEKQ8GZcsp z{&&ANK5D>%&8S!N8zJk=*ciC3GFVD(N-(1xGiPmm#?lvw;CI(?GFzhgK2kXaPqED= zR$??)`D%Fa)Q4>S^M--e8C8u-$A8k-I7+MB^iEiz<-(K7ZHt}9t z`*(No)W8t;A;=)nDBAQqPrI%)S!|5LTjB2R58n8YoX$NDiBANq0TirG5jKdU2A}h6 zkPn}TJY};u@U&NW@$T`>yK_d4KZ&;gmiLN7=0n&5ArkLoN?>jo?`MkW_ zCdbRmOrQZEsaooxodE$Ud)TY!SXS>pIPF&GnxEw*a^szb$UNG5pRcnVByy@dry$-# z4Fgv!8`Zh1j20ub30nMDgLcJ2cD`r<0jG|h4_M>%DhQWP`$;cO|2*$aZYLBM%K|z# zwK~;9{0P5t0e;q=SPOuFmd-*5N4wsE4H#4o`gB#a>Os8_3Nr%dR|GP?+OBn8f0Je) zHWG2yQ&unU_vu7!z+gy!gTz*lJy8olD;@tPYAP#e_7t{$B1qvkGc}crudMI;1DoBX zOvs1U@ipErUM(;tCn=rko;CUB8RRap-7_rvD?odMhE-TpfI11k;a}7 z5YEs#kk6nOj-7_fjEdE#H%U%LYfw!wpwREuExMJP-v!`t zfCFr$p~6PL$7Q9R6yR&v6qjPLixg3nhghrVT*8e%_K(QLx%PLTN?S$55{sDoRhg}Q zcL`sE1IEj(dWWW5fB_nJ(O>;|l{lG4O`nimFuL*sGLC8wk)x3a(|AH%-uRh+zpV3< z>}#-5I9E(po-U7lUW52vJdfQ-f`R_dgtJRa9BZ_rexHd}6DN`Ub#)X(#4ct_o`3#K zDFT5o`NAD2*qm1c2mD;;;pCV)qKAQps7F;J5K6o*FZNTQ;JXG+Eo?6@Q|GzeYPofF zi{lm|-nm%1`1Zo3^Le(Z;X*05D(KH@02{2FWmEbIe>) zj79E}cLhF4Ek_s+@>~hF7!SVG&l;fN^L@qJMdsH3kfKqnk;fjL8eTCc)WKVkS9Wm- z=@t|OA!ENJMHs|D!0V(;#A{K{Pq=Iu-wds1=jMiS|FmA{R$De-X+5*TH$m zQ{Dc5Jg3vwu@6f2IGcZf2MFDyNHpmQ#UYqkIW^M0VxGSvC`<6ix{$Hs-h=Q{7;0= z(YLBuZ>m?D{B+*Kjlho*(b`m1kY7lgNW<hG$=eY<+GR+Ul9 z!e%+JG>FOP@s-t+3dgrE{5!v&8(YNwicz?_!7-+{A#Y<&DXRT(!Av`NTQ1YxCGOP@ z$=6huHK*fYg14P}DZd}3#l&N@tsn3jR%$i`1%FLr+}VECuJ_c%Ud3y5%a6f;Sb#yC z0+P@UO{PCwy6PV7p5fphuQtS9HkQVybbi!MLGawJW5}nSeOaowF`&Htude24>kN5v z;Tg0h<@G^|SVK9@6#e1r0Ok7a4!{lDt+#ZxBuHP3`%h@5Tji&<5$@W8RCH`lL74co zH@7_d028?HXYHRIBuPRC1mjCj;Xet6&*jYD$7c3uTjhMl2n0L0b&ko&Sd7*rKT^AE z*_wT13}&X^iwqtNuS+x&W2oB3vpSGsOR9mH6&tj*Tl$bw=T(EU2VXH+FC zRvG8|8__k$#f|uI06R4l8#8!TTRN=bbgHyXJO3cmPs`fWj4#qSJ=CmzWIFkzJ;7E% zq9nKUR^V;VYJtI0rQL31fk7sj=u;cv+WQ^%yF z@T~!Lg?BghCKPpL+P!Hns<;j!KQx9l5_AvE04aiylS)y)c!kh~ZdH-H&Z7|G`Nf8R z89WH&kgtWfbFsYtp(8WuR>XU-OJ1=gp6~9siRql~-1?S?QakabDxd~Bd&3eXfj@T5#AD{>r{RaD99eBR`(XeNs|SyZ@s>ywzTaPa(Z)x48$IRBmHr!UG1WVNSb z&-G$R2=OA4hH^P+U#sREmpkPuM!u~3-78p$xp+zPvNklDLX``_erpbxujJ!4$MiNz zsJOCFPjVNcN2W!FdAk4yNLZ77#V)0a; zV}t~rJ&GKSmAQALDBx?&_T=czJpBE{y^~*yuh9h=LrE zcabH-CYC$y_U5_J2KHShPg%hzg&>U z<%G&Pd^Fb$s(s-sbRFt&{I@7OKbh@QhV@;oyGQc*S5-x-JDfZ z7Vt~TTjrtxcNs}eVkJY1rWEW+GwBb5` zN1dA1V%xT#d7@tjC`~p8Vm0?|dG0@F7X=|fxDEgB@l!U(n|>r&!lSP=HpSv+ejvmcFQJ_FJDf4Y!$I?eCl0{Kk?( zbHI(Qt=fqx$4v9df9aJ}ew;^C4ZPdYeb-v0An0H>OyJJ$Ta=<$YW0D5Y2@!$OR6c0 z-H-kv$DM_6k7UMn=iNE9nVwhX7Bv#B9W(LUKa(!ALD z@Qt# zWVj#py5%mDvBhoIv$)=GDP1Y)-z$kSB2o#h@Tbjv2yf!Z6HLp^zoIT-4@6Mo`G{}O z98BM(!`{>muOFAbmAv^NhLJ^h1f z*vy;~qg8la5{X3G(zV)Ke`pbWQ?0ScMM{Oa)>jaP@MrGC=wW6T?MKUDz^Z`>o%$2< z8j2X_Ep3ImMt8Lg6txsTclqC4<8cYWz@K^hbE_uL=!9islDVZ|O$PL#olfMjeY*&% zzM$rDn0GJ9rS z;3FSu>u%I9SP5L5KT-ce$afLC@p4)oU;6j1FOF9#7|-*&HS^NPoS)v|8WIWoxufSc zrNDaFAol78x&DfR(M2W=5EBJweEOPju<~*#%fh;X8}t15c)Q`)J(c$Sl54RGTtsbg zf=@ro{m2jJ-YN2iJ|{FIs`wiv4kSOEz_Rru;rK{Ws#{{Tk7NN8#ME($H9`4x83# zP6g8XYla6wiv_svC}Z84-QHOGj$&nvc@~F|+Ns%2QZ9-)x9Qq{DTy42dtFD+r>=WP z?nn*mcdwi7MRd)wvA(TRnZp2`&R6z zcI?8gQt+}CS@1#V+UmnPx#zi0%p!!JHIQ59L(%1i=?rGOPhkBllv!Ecz z4LI*f2^x9v%v@A;d#klv1X?D)()otoX`?B>-w|f+&xzrOu`5X4od#dAc}1hn48z79 z>8k7hRa9{SgK&T0Q9%##a$9RQ$hPZ{smMJ_p(v6unR_*+crVm!>&so|#SZ4Ef%3}G zC&a$p8qxfzzPZ&w?oBiCF0++_Wp|DwSfH#}v*BTAVQbWp{qgaA#4hGD?Um2@^{=Vh zpuhj)6y6d1`u)H;H=TQUK?8n#S%uhMDV>jI|zyMXZ-62X+phEiSn}`}}#^j~O#nvxZ{lDw9h<)t))D%uo@pFGJm> zK*MKH`?LR=x~Y>-kFUDPR?S`tKAI~sAzn{bNEwk~d1I}d61^F4cLb(-9;bf*e>TGU ziter-$Vga!pHj)J;YNCwX(+0F`Rxfs{850ABA_-pO}tp{OtX&Py!?aHR2-(#;)n65 zj7ND|x!O#G780ue=Fx7TqmliGM1R(oXv8+L$OVR{_O9+5cxZtbXU}%p)#m2&Z%8wfT?)q;tfl1!2Jn>w#0a^b`iMO3k$rYM zw=^hv?J+s3r1`-lQA(B3%3EK8ZkfHupRR9~?FxU9F9Fpu4IR_oP&ewNy{ndtqUpTH z!#`52uB-RhL}^%iHd$rMLT0Xc;1+j=w-yE4*6P5xJ@IS!Qb0>s6m6ojHdy;Z5l-uHX2{edZ+3)(ZJqkLuf)*k7*mp0DkujzQJo zE8`ltXdYjaIzhbtKImh6WY7_oysqo zOoBoB$GTUS*^zZaHGSABXWepb!e&$jUAE%mo#TDX>%%H;v z?0Bz0&&=1H&dK4k2Lc>VtW($}xsTy3zxgj#_*Yxcth6vqEg{Tvge?Ig~CWO zra)E^tgK0xu_wJY@L;Swbas9>NnZh+Bm)I|1$qjnz&cpS7h>~5$rUp2(Ck># z%&X3sEiT;`ulaDnER}4&(W(3(Z7`pa_)R>GV5={_Cv7llyQ%Hb{|RU8;prA#@xhm~ z(fddsKN#LyRK-lZ@K3JqY-VLpAd z(;Ub1UMWjrLJ0Sk8*;|JQK9O}gku*tm8OICQzS}4NTe1#9SWbLi7)O*k3$`$aF0(n z&%Y)1SOfRk`3!_Z{?(Ycb1`OPCXY2Oy;ltw90m8@K@@ZJ3)r=`+&_OKU;Luog5nj3 zWHoaUEdjR7~9P^S)HU`)%VNI(= zAv;I(E!*O@JonacWPiWsG}~ZcOL6Gs^b4!WG!9kG;>`T%g9Zm!Nce< zrKK#dnerhNtll0Ba*6$3J)CkQp!95<$tpF`ni#>T#!_Z8Rw1W zKDOgA^71Za3BM)1VpX*?h9%EGux%-;{VOmf^2{C( zLItpR=gC#K9wZi?O)g8)8i`J>`z!qHASFjCkXJT9Ebv+j#S=iB83pjK(0i#_={?T8 zkez`(^fGBT1EC?ab_%+bLA<8=Ky%~-L`ye>DiO*q;fHc|GjbdKasjo?94|ys8H9hV znr~9vHL1#yMxe`Hxs=<^TVt|Hmin=&A&c^Z+1oz?(+l*)$;m--E1l~_k4Cw#zFjq+ zxky$M^t^NS+;v3LDw`=OoQ(O+?dSq>`keTf%Gvn#bus!g4*z4%Ro2Ln>?gm+A|82EF+~FaQE|*{ceQsSNQa)I{osmkD=qxo!WF z)ZphWoXFt^r2}SnVk3*EJbRbu5vn&+Zl_%UD0n8KFtZJ#XJT7nmfQ3#sYew6KiR3D z6Q#~|Vk0ktRx%gNAr+t(Ko}FPN^8r~qC7cA<>3bv1C%2ylkEa~!;Gry-k&sM&S-Y56H z3NN@5R5U!GH!I1X6^&E|PDd8tqm0qVPbPb#hn70AJ~Nsg+#(fq(Z*s8j8{ui)b>+5 zQz7mud{G?33vv^P$`+ZF_p7j}7c5-!6u| zq1|YYyO%j|Ws(zl`d;X>dqMRFl;kgK>dyWlG03`3iWHu^&J5Qan94NNtXLyaZwD^q zMIiW8smXGH{{wM<@D9-@MDBmHeYni#Db^4_>qs*pM?oWxd?=6sT7g|LkKP~5dQosb zDq*mav20rON8tPUKl0kyj&6M!Qs!G5RZE)G1GJfVNk@0{MA#6|MFb6dK_^~4^>N$O z$Z$M*EtK(HDIyypbn|sP|C+igQVHs7CH}{`FUQ^TteaTI>b$Tj7l*36A0JPH+;m~2qT1o%9Bdc7kRk{@tpzGj(I+-iBq5LF8hfZZw zUVI~Jej{rfe$+PS!#Gwl_`41Ul`Jn>YhGpqNtTV-%g5p2CFE<==<4>X*FjGCuOBSV ztK0uo1_KX#NR_w6f(AQ7e(`31nGqj2aouqbt&N{+u-+0mg!})S% zY?PU zb|jFFkHi^(bJ}0^1cfc6wj{W`*2Qosgc<;Svrjm}ppd(mPiTWqhgO?%oUQAh9V2o4 z%y3Ppj;Q_pCC7PCAupA?Ei-)#O8lyJ9{hrO#xcMpf0!? z-~JqPzluRznz~0R=e7z6;hRT~HlHTxvjNRGmk7(O5`#3OE!P-zv26(>n+) z8)50*7*{X>pc;*VAH$v4RHr(E(+uEft)Nrr*5t2#KmKDUY6C34hB!Q*FGi4bESRig-nh4}alnCl1vDhk7WHE!&k3`fn_Dd?~jx5UsB@0Bv9>+G#m+-%}0g$ls|Jw$K0F+@*DxPvF zw*9x19sHZwv^ZV)Y`6bGxtp}-u3M}ZK4xx z+SfZ?+qS$uwwyop z89uEa9Mn9WnQEE*+s<;?4rACVwg!HRtxWnS*n@yJ#vl8nbuWkSo#MD<`kD`u%H3Lj zOSk^=TSoXjXYln|qOf#XIQ3mvb86ZVI~|Snb0a~i7Y9N>l-%mJgcIze+QeJWHBXC- zn*0Br#a^EUcMwxQUKD6KvpN0tQg*!gclw@N>)+Ydot9JYR!_Cx?bLoQj&Z_(r;K{0 zPbi5LvuH7l&R<3y9USUYS}#`;!o2sIJ=rMVS2b?reVn^(WVUp5wRio)+-oCuJhivc zM;W$dV^^I2PmS#Rk*#NuyLEnBb$Q+BOTS|y|B3e2*6Y7}o`kEq7SVj^`)78+!`XXw zHe%qZi86a!?$d8aqW_sBm|!ZT4}%M>|7p5yj9>&$Q@b@R|1%;|`8LpVu;P0Lf(cYG z0b5*`-~Z{5p_W<`n}3vX*122w(t$?rD$?@ullRPc#%jy;pH@o^E(37MQrl`kx!-Z| zxYzKHX772u%nST;4|eeVs^p>n%w}zlk^0j4v?ueriQo7#<)v(Uv*VPu!7t)ai2r$t z|M%wOQs?<9D@*?OJd2yf_kF~4I;p;h>tAkk2{0y&6w;AT4W8X%3|6*K_An`ksy*?k-mhM~}5;&{# zZ2dDoerH+kJVEaDP3n7Y*C)=`s}_gYlzQ_f5698ly<540zJ)>j0}>Yvn?=QQ@8~Sn zhh$FYUNuL-i@rI2AZXeu9bCVE>V&pz-ZQT5zg{|W++CfL%V&tm{QEsKy-cy4zZ1Nj zc@XtdLW1l%NbW2s;j%N7x~WHI_x1R@82B9*>M6m$V}g8n`Y`*mV;ddF>ohrxyuCG3zzTT&vkNrCx`=r}% zL)|h}ncw;CfazS1>`7&~(qjMZYwz)oKb9@_1L^8t%KiC1F1NSP>R)tI!(iz&+S#Y` z@2d0Fs)+5og;2T6CA+Sl`M+0YK)A1C$y5Kxl4I_%gJEEa9V+0v1#Z~`GS5Fdb=n;J zBZ|}w2)T>Vaj)*4 zeo_A&p>B}g`!eo(`HLkJv^;#ZJv=v>gV1KcwDtb%7W6w1xt)9w5M^;vm7Bo^s{I##U~bNeX#-sRyOMArD-I&* z{HycK>$exu8j9_crp7*@ku28c#Ll;_2rro8X5`O`JR;|hH>}T$KEt23{%LBJj+U@E zh%nMGGr+bl|t^PvIIwA zEDhXNoh{`O2Rv=!vigrL=)Z3gbRPkD4>$&%{d13@0Wx;>1irQY>ja{%s&1Yb4J=XCs^TZ0pVE0`6g8TC&q5WwmD%G|>I>n|PJ62lGSo?!+p zYYDYFWcAt>V5s>lePUwoFK#DW zF?6nG%3^Ei@o$aO#QewIgm?4lzjt$sNNEv0C3V^-{`KHZ`)r!`@*y?WKS zIZrq|?SF@3LLqN{=cKDYw%c0lZWH${W+<}wcQ^VUhk*ZuXQ3c?C`6^0+c6sc?e~Aj zk0`<4QUdk&j&Y@su)JUI9scv@H;B5;jbZ;}e`RG#{Lo1J-^Icyh`P}*napZYz^E&I z!hrH(S<|kov_}`U@!;RD0=>cn5^y@;Hq4rCdMamx+MnR~vFZZhh90|h$M7DM9f*&G zfMix?U8Wi6F}Lg)^uB??gutN$RHlIvl+tzC0XB9dL>a@`7IXVGnqE(WJ*lSXX-V2% zv}#(ri$>pe0)@e>fNX#qvT#$d!`|-NGn6ukj(N3^vNH4g|TCL-oMX8Q@@m{1~&KHmOx`VJbz?!FvS3N=amJc`q&08D!JOfC|hXlr%3kitDa^e~?a> zM(0P{7>-<*s_hU0v0bS9XKX!CSX@&-r&V8J5TQBzgXii4ms<*JZ40Tq};jpBFc1O1~r z51W-?2~Z=M2&3FJ^NqRRWs577_>i_#b^>`DsvEf1%f0a%n{n85J*z;Oh_#z7I`aQ?Tx zVWpTiq`6p-_0hvMt}*Ea4xgg2QvN1ZH~~8c1NEeI?Ve4+C@lw&&G(n4vCUf`plDxw z*vNV8{x&78Wn;7#a8~sK(`RB%xaj+i19saco?6{SZKK7|z~?8dAYgS6n$_R)&m?at z;jUvYo46Yv4SBzHKh`szjVVLD(rjBKSfoA!4_$#eUHgLx1{>22At3g~qnFY}lm)H@ zE$}47#PHZ%fXTmQY>f8Xc)0Gv0P68~~D;seAXf8!&Uw>v>Gh1HxQ9`Col ziZ_dkiG@r@KT-e-1F|LQoTy0`^ul|dVha4n$#*gt`pOoc{G!x8^ZU{U7S5xdZmmz7F>CISrM0Qd2SR!&{uqG8|HbKMx_ zx!J)jqN3ZR!UsNNuk^hTMkQic$E4WgmG$VhI3RL1?9$q2yGGV-#Qr#G^5$}MRssaH zP{rUuVOw@_#LwbBpc~QF4+aTvoJf$BjjpRxMx6hT^Cy%|E6>YjNTITu$vLzbRx+TM zii@_+*^sA0JLHOTEYBk|5zyI}VxPtI6lsTeZ$h6A=MciyHdjC1eU+%lmE&Zcf>Pw- zjwP@GK(R==E^{E`n7r1qv-3w@9UYC0^LlTI3S(5P**OvDW#gh}4v3UJ$6QxVpV{Y8 zn6`c3ry8^x^h%cz=}bVfXBK(ZkH|i#H+~I`ZCv4bVxv$eL`E6Iiy z_cN7O|I{ItklN>e-q?disn)Ng{%t1be4 zX9+#1*{|H-x_#;jOr-%$v?s4VR)+Null!QUC-U<7JEf0%mmbH?Tq?uPKP%&FGsrEG zV)vj#LiiQ^5Po9Pnn(D*^(V;FY*-fhAtb(M!9q%TM|mE6u5^2D7GSxZX`rb(}~2 zwg-nTzfx9|i;f>On~ST8_mDPyd2Rqi3iGW5G;`c!&^01USDWH#8-fC%>@;)dolhT; z{nY|6#_@6@OeT?_uDZxQ`w> zDc>lEovt-?R9QotAD|ko<~rPl0{RJjMV}-l=Fa=!+y|q1}VPuO( zHvWXYB9~!}NVhTLCIzz^5Qm|llMK(a&ZVMSjB;BFo}X@!*ZB3=w+*M~9r8%=9Wp>W zsmi=^VeusUm?**DFe}e_XxIhg`I9(}YdFA`a{DXKdSW!Map%hQcoF(_vMXY3h>NnW z`G2Otf3$N4k=pw>Wydr7?<1Kss4B(Cf{kPgww10Fse35yepBBfMNz5E<|O~fy)bSO0Whv*`d_VzPMJL-c?Kf_^-2O7E)NIt zMdEt6i8$Ee#80iIR1(XgDk^lm+;f{vx!Ms1I(X5)b5j|EqxL`HJ%6mPgj# z3uvIs>j??t9e&MZ984XjPGLFFFc#ozH^Zts9O30SKK8gfrSttafY{kL*$2cJD?yf} zREkOPqP3d>Go=oob)f<-woU`329HsS&n=$p%uY=dHG_Z%#tN%#!44FVld4S}1}@R= z`wmt0;k31jh2q>Pebr25dqVkl9s|CkVb&hEepb3u_@g2LkKe&vqz?JF8*0TP-@#3sh+T+9O>{gkcMcm_>q=r0eYm z@@G27M!{AzDp5RYy~Ow&Xs`5-gP3r52X)?O7v|?l2$<;aqcKeQs$q{_v>J?4p8U@I zK?!vRKW}_OhxUvXw((ugqe0EPCSK^v$+0oW^mLQwUNyyoOP6$3GbQSvE2g*KNaAQQ zU5CNZ5AZ~j@RQwnbqnw8&Q5jSjZ5T9F&r_?&3FTX8pD1r-+U}pBv(NM**Ov^<*U$5nNgH&Dl0Y`5Z?nIRdRVJU$i;}^h8$jz zV87UxP7ZZHu=_}m~Ls<4=O%Z#XvCxyBf~*P9%)X^^TTe>!&QWvzyK5Dd3oBqAHZc7= zCMmad9DhrT2`6_KtG0vZRN6RF>+?W+Qi_tJRcV>|2sy`F4nuz+wo24*e124 zBwkBFi^?E#x;N~jr$BRchV|2#L(WQ}r#%oM0OTatm_3UWYHh&vS{Wt#4S=Unj|I{&nk>oLnJ@NOO%JxxUm>)GCr$f zdXVE{V|I(g+-5j8W)keRnezlz<6bmat_o{u`c(cJQNsZIB%=^l5$>WV{u&5WB3mBn zq^^%FZ%xoCL7!UuWkWVr$REGI*J1yJXVw{E50W{42*_@DBd~}Tf4;mtT0N7hHXB>L zl7jz!xC{Yv#yu*p=e7LV$!i64{gu0h9alfS;30WN9p_yd)VAa?oL7+WZ!Wt&(B0YtZ?IIhbhDM8dtV<&Fkg{JI=nUXRZv%Y*j8l=1=3Bg7fy* zjwF0SM25)a_uQum(-&<0YGlKl#_$$hi^oRVq6YG7>C}4^;Zbm_P4c`7i3Qs=XU~*$ zZA<+rSK(b+`LY-juhstOzd!WoGT|M?j;`XO_N0%}T}@bSWTNCW0tJ?FZy$I_B`b|jd)MTNU-1;LZ z=IpFZlEY_GqP8z6vIe5UYqJ&ayaQ6&Os5>YSB2YB1r9)c10DzP**FgdJbr^9Rmlxj zLT%}P^nVUGn1WXXalEco0(?$nvFjH&FdtAv5Ck#Nu$He;OQ$?s60`E@#8A-)+7`xq zLB1+9-2{y5OLW|@$tuAt@{lYv<>QNLwQ9~0TyfLA1s>+wfbv|odY-G7cK77}ox}GD zO$PL~DtyFf5|cH*DB)E%LK4o-K}3$RGT#rs5eI1rZ0OfBM(SCI>1tW@RhQOM+YPK$ z)2R>qyU#4+At{wUF$;1`mq76^d1R&+jx@Wblt!mN`kn+Zu%Ht}N;juBZd!9T>Gb() z-6*GWRYSn=v2xMlp|9~KU)DCWeBtqtnYnAMFg2KqdtdidzIJvFDtGxI0w(cfVlzFO zld>;YmE+izWBB;6P~EcN8wsD;^C5e%HtSuTLZZx1_PmuVdG#EG;GBwEw6Qw^gE_%E zk31QgLmn#t`XpQKIsC?oGMcHTa|G(wx9EOC*k!oj^n#oYMEgd zje-LDN}W|^Q`q-bKRSCLV(+C_xzrJ@4PKN+gI9Us}xQ-o(ZGE+_5f2Mz&%Ia%;$ zIvKa=F$-$Ctg)k-my~J)(JK^W!O}bIg^|I0sKxM!gj7#0?ZS+fqZ1Twv)U{}os9al zLPw^CvLwJ91Y`<5l+Y_O`HyCB8z6G1f!J%sNyI~o14{r@_5W()-FgDX>VMcE z7`m|Kq{$R!*Jr>b>8-MuYRcWW0lR&cyZj0g2Aq^lo-qwXdwgD4f#|S;IVg3E>`N7@ z4*EKarr5u26p8L-J`g|o69$Bmc4LoWybB4~&$NI8U*He^_NK0C8>R4JlY937Hb8|B zzn2TeGEJ%uR5#yM;k=#EQmX%mZY*p`eZ2W@0!zk`77^4+ zY^`q1%lR@K*wNsS=v}Ln!~F4^2qAH3&$wa6%XSbDllU-TL`+QVlTo@#lI{Zpn+krH zUKsEl)y?qn25aDgszZ3$DEpCm^dndrY}k=I*WI~!sK0bdDlZlalHj0kSk3r&$BJOf z6!R!z@iON$^pK>%%R8v!f_9XFGEA2A4G+z>-ZMtkg`~uH?h|pmyiHRx_L|&Q-nPFvc;o+Gd8=JJOLb3mfU4l>$R*Ik~fEU&UK0zuR*g@YAPiSrjwcZWiR-92nKEsvF?-R08ncy?x<6WUbn~WQ>Iq zF#656YE6r0#(X>Lud{3Y*jK~>y4A}4@rClr$QrZ71U?GeXk{3bUMI-C3=L0Gtc=9* zIRfk;bEb*%l><_^hlJ&>>%9zHjQYo-ff{AoqaY==3YXU!5Hh17rb%p76x`LqvGor~ z!ycxdA(#jvHxVEj=d3VY+h6L`gUp>aaUPF>geCt*!E4!qnZq6pKSs~AbJp-%%+#hj zs_E5=ov&Q_GW#z`cx+E|>6`U`Fb$gSU{&7)%4nbMoe%r_)s0`Y{1}rD2@Hp*FmYCN zFI)~T)aT3W*x^0`S1TqZ%Co=ciP#crF}%_7@iiaUn0@07q~mR?Va67}tZ#W3;V0v; zO`|ehvDRx#^_$_b{oyAqsKlpxZzfT4))xP77U1Udy&ugVw@`Xs;ZpBN?0X$VrAF}0 zz3>MaeITXYwnE3W9EobB#a{{}@3&`a?4_Ec+08D0V~B4?j%}$# zPXYPw%d6>`Uu_H>|8-ZDgY;tM_X@q8@}mu@E4w63X+YB?DgduZ7s{Axc^D>=9Aj3$ zgZB97<>G4noYbvX{>K=zb&&F?gr<& zI~GdkYnJGlu*U`0WUtYA>x2=2WOPUowe3vs{Rar9t1y1|6V5t{2ck6wK`;49MQ#5~ zCqu(xA8aoM9_Nm0Nk=!wh`fARC>3H`{hoJZEPY&HlAn;XKNUX1HtMZq6vnU>GS+-E zmg1F>u)o7e$R5haSeEek95I)vM1EBm&sL1|?t7}j-Ra7li^t(|fMq9#tg~EN51HOr zWUIR-IuI^$FV~KwC>Whw;;gf2^ysB_ytbxZBqUUVLm5W!DSg2vo*Lrh7<^1{hZS`W zWc{qo$a_}4G!y6WiIZ-?{$a<`#jF%=;qab{Bk>lAaWs08aL|@%4ogjxStF8JEle>8 zuCqGtxnO=d^0d@n9e9P5)XhIC=wB2WPE2l*ZG!?`rG~&`FYaP=OjfJL(~j7(zh1ti2;+%n3^@;_VoqI+TxvDU zG|X9E*Ph7c5XwJ_GbSdp4Lx35S3iiC)Uf}pP6M*_O8lIMIEKV5)G)BV+O$9}xc7a& z14Pa+Cb$Md(xmf=xxsp`?c`y80fBPE?g1#WEU{J*%(BDgEU#yVl1W{14z=cdVM|Nd zMlBc=02@{D3b?zeX(v>Av@GJrpN^Dz1x7^jme6XUj|-1?W-iAtW%zO=a}n~bWab2R z7Uh;uydZVmA`A@Fl7haDT3!^@lgp*Vt$;YhCT_>5{G)fx1N=$z`0{QZ+WJ9-Vb&B@ z8u{nGBfI)=oiNb#_n>%_|5>R2`+J+1uR>$_^8q~WrB8kGdSi1pRAGKD@@$2i0R*x@ zg{Q>X(^S&tE<6Vv6oREO@bZ3P4z zgad1roEBP|tEEiKas_X*txzCcFTLR0+v}q_<8l)j+y^VD^%f-0~onD||# zT~Yk;q!Sz+vsq52lJ;y-B!W;P*|KO{Ww-4dUCxquM(uY#Zpzg3$F7F@%x*xi^t5qV zIvk$$6RPM=c>`?_ci(oU3hUYpe#$Z!uVIZAeZPcwdzzE|KJTc%s}5 zt)?X~mEUnRb7+5TdVHx1xZBM$XMb0j3+$-DtM{n%;3)v36Ry(`EVoq1r76d{e3#(!24!HoZgd-v&bZf+q?CmM3ZN_#~E~ zzrC3`{7m(EmFyF6>=`r8qby1I)}Ecc9bygKb04Czfv2Rq23tD$?O1VV$Cf{f{?bru z$}T=-A!@tUU%L>?K9UaSX{Il#RQBNEomUGBQh+tw%urxlJYJgq9aXBgl2@U_b?XZ;A#7I-SbxnTLoH`EqeU@j^FR2IX!H#RQZEd@rs0k!sG(>u8C5lbq~){vxk}gL-x84`Z(0 zZ6?L&O?|Uw6u^MIe40%PdqJq>q1pDI`E4(S=40bs0?cfh|1x2|tt^2->qK5XvOLew z=-*wScai=)kGjgbWNW1OqT!bpY9+5P#43q{(+Ubw#3bLnlL;dbff@$n-xxSy>dkxeF1v7++Le}-z4Gy$7roiK7v`sz%N~&0g>LMA*udD8C%t1Lw2F~k6f20U*m`E@{^N8;i8yC z`pkSb!Q)`k3i4AsMr+p{$m`ZBKl=C>={`zO`Gep zXU~wLo~O|6H*+G^IqJt32MhnoZg^r59~dQ!gudO(eZpY(UuO8P$q`D;5~CGv?m6#1 zE;gJl?Wwi#n&M$hgw6P?maF<>de2y*J68;#IQBR&q4NjAaT%ZI2=acMTBo^)!toV~ zy=RB=r#I~MjSX*iD7ajPgfW>C#Nv%Adkt$yQPXuq*6BPht5^lHs zENFH+@-k?BcGOIvI+?keQ0`)|ok(7{4;#i#w{Vmx-y-?sIq(G;aIM1n!QQLkuA#en zjqynmT6{V#YoqG@j?n{V@MUn=0{Wd?4?ro}+`hLd&rGi1V%bEE1KRkCCagN9r6qBY zc5LVCaxNqc8YXvqL!Nqd$9Ii|Sx58c(1fpm&=H>ED48!4dP5!boDiCh_B3I<^Slx$ z(n|&nJx6)P7Y=TEpD87#Vs<0ZNI&ctDjbZ5_6^$ zsP|0tj8Mf*j8Cbi6kSpE)bB`U`Ax(QweU&QNH-@Q^#JwtzY>qqF#_d*-^1E;0VvHI ziEV{>moAkbKg9wua7km2L9Sp1K)gh&eD}REc^T^&39-%m{_JT4(y+KTKlc%dpgLNZ zFit>X(auTLnxe{@3P{3NC4z6>XMX~-7L+k7F)F_73^av?Sx(W%tB~rbK2?UzSV-jg zu!BR))xw`~0G5E1DyB3g@$et+15wI_a^F4KlXfBz1{-$c-?=)!h?`QMvo*9?R+>ws2;vLxeLAXh( z=ZMe2&w+-?aE`Rn7Z+T%n0T^ahB)3I?gz)7jl(Q{ZH`>f&bK~iJA}I36R!9~O|;k4 zg~HyYpGycN+uu0BhGIiEp6mMw);#E!)S4(D+}JWmqT)S-OsTO&$o9C*beF5cXRsF6x3^Vj?N)oO^-j?p249U^Kvs-#%m_JSyNjTT0R8vP_P?c2> z5Xs8xF~Vtw?>Y=8@=5JW;S9yx2HgBn6__c3xcsAEQL;Lu?zA0bT8riNk>Lq~hUGub zd1YKm1PKs(i?&lWGBJx!^Sg= zOcZri9qBaJn5}aj?$;*io-w7z-6`fh&WDmcxkD#J`GNLudDCuV1#D~wP$jWH^L&LD zHPu(w%=+Hz+Ub93{+myYkoF|N;bH<+otX{pDHSQfw@PjrT&KmV$EWV0k;iy?lH^*W z0rA)yk#G@arB0pfmfYXn*v6W#U}7@Tdpm~+PH^j0T1*ho0xDb&43z!IV5`3I9LRQ; zIhos@py3{UgZ|qh3{I#`lHN{BjSx2m8SU0fX==H3ftD+DNiy7ANw8ahDctokyINzT z&7>G%yk_#Y6hX#tQI&>=A|O@}6+6KKx)TZa_Knx5t)h9bYx^iS_)9R=)~!7ko$?*( za$bym?NZRC3+cZ?^EZWaV(PzgH?P}I>;5b#1j=*`O|h^@{62)(j^`nyXo2U;}jJK;&T`15Bf|>_#Y!8 zwFib+g-&t&z{5G7Ybn)(iVj!Gt%KSKFgH~!ebX0ry!*T=s=N9c`P=x2Lo|#31 zj|ZZ2yD6ewILp+$L5r2aWlb)$4p5w!HdoD%tJ&>iiIlUvQaQ-W z8!Sgzh+%MELi|J>ke*t{*(&h_l%$8IuR0m7`t_g2Ax&!{qP9?bvP!8u5N_E(!e4~g zU)F6sZnoLmlh!1TIvqoZnog`W_%M|~I2^(e?;_4PafQ6%<_w+jYiQvrwCuMmd~e$5 z0pg2*yN2eNoJ65Cx|nY#;iYpIm@x1R7n28xG*FUDUo;v`eu<`5dFN`i#5flEoFpec zIyyRGQn9S%Vsj&@g-}IW17dK`gO7PQ9pt8w+HZQ4BiRK$=}qZfQt}oy)mHZgsdSMQu-iW%ZUiiX;k4*sUIovQdTK2pl(p zi#)UeJ?zyC?G_4p{BO`!1l6_p&D@fA{ww1+_nNe%_sXH(rLsau@ZZk(TVDgFLGj3P zGeT_YPjYM>2lH^nrCOM)iSBkVmquJndFmX$x9>7OHH%F)O;)=2HS5aqp{!q%#ri`f zZ-t~U3_R~K>$v+VQXqnh*rs=9|I?;&`#YL8SZ@#2Yc-%h*sPspwzw$!7p*=>TyU%={Qgu8^@f*N4zn(H}oX50QQ;*69e>al?IwJL*)wlER;{bZo4 zYu%sK#DW^#`*Klp@~!wjC(CjZ=IZB3F{lD1wx@e(={tn!9et3J&DG~GY6odpnT9l{ zMCGy1nBZ{(6L#Wjt{>5%^0Pi?*Dj2E(J5ccy@r=QUdW`S5(fqohY2;_KS%k#82XAY z*5&w%tCeL95p7(VQHkD$nwn+^1B*Z$U$}5<42ZG|ekSZAgDHhfFwOfSz@dt!QTL>> zYki(y{uedSTjwuFPscyPL>HKd6w+Tu#He%Bh<#cfhLAlWy)CW!R3|U^3x4utT)E`^ zJewCAtB?XVup1kFg!&#)idb6k=i!a6^o7YuZv5@qm5xL$fiSfw2K)E3)g%7-1=8cDRn*BoR^3MDCKFn)7zq?VZcJSn%ZHB>JipX!>@-N%SJ;0Z$ z^Kb0WK@bHEIDv=y9JMQ}tA&+ja`S)oz6>{SB{w|{`5C29Ahkl9WfqCF&q=*px748y zKQYLOoCG;)?LuFOy2{p4wSFeli+akJ-kY?kuiwAjmKB2?r;&Y;xY*k+QTOqi+&IL$ zBN;i_Y}Cs0F-poj>GqLJpd|L4RHu;?wV<_W9IN|qV(^}N%+RXC^49(DKMMS;H`YNF zAe_5)umz<_f2wlnQtw!Fs<%BqWeoy(PW1T6eFh*~rNASjDX=)%Cu{}(MRD-n#F^hM z>F|r1#DQaXb!|nfQV_0dgOj0L?BM5a(F~fJHihVxHAkw~vRW#fBTzEeB5sv1*MokU z?w;JV-$7CM6uY73!%usszu@2rnXgF{9CutIh9i6bgfQ+)nla-ZleRY@mYm98Bsq_4 zR!l2XYfgN#wsdp8d&)nCQ?@p2$oD+fz>4D`bYiJ9^oiE$)XW`yjXs_Obu!;5II7v< z_>d995lD9Vx$Eaj+5lc;b4JmX$>?jt+5U^~cs%s@7HAV(=AXEI;}^b1`(u&f4k5po z{p2Tkmx-;f@8?f${#cWjWf{p9bVLw9p}7mb^rztlnhuT{t_eNn`;aneu@NGaOX}*W4VF!P4&0X2eNc`YRndf$a!}H^W zvcZoyHSJ_<&N=8-cs=^QCnM_^?q0cNb-AUMmsdY_3XKR%&$SC`n}L92IcHHB&A7S+ zS5txYd{J_hQeIWa?V9j_!S)|xM$d4{A<*Ll6Y3l0xQxjOsw2^0)ngKM?#KXoj1`Q5 zRVY8C=WH)$BW(PB{k!T_a@QE|Y6cQ3ILSOJuSdeYvughvxwxQc^L5zmG**mgEo4DH z<;XW0Ue20;QdBpJY3rv^k#Jv%};nkPuDnuE_;R9_?LOKmRc{{T9 zuNOQ*H2wJ{^^;}?hQa`bnCGa;01@eMgJw6sDr!9 zMn`;l^pFCyhn~)dQ=>ebzd-WcS*!SgHIokC@j3oitA~6uq zb0^a><-NO}YYwxurDuWgvX8mSk|y#k#|5aedo|K)IKXBalbR`+qd>0Fg9fwAnxn^r z`41)3QmoNC1X9ntuAZj2I&H?sC2x_?di#)Js_C1%XWq4J2OeW0)enp#Kf@oQc2?Iy zwNzrF?1y$$NKpMTyh9E2yv;s*-aVA6t;XU{KLG)Y$LsTGPl%leAmUe|hO>_9Lql0^ zA)TXq+!9v7aepltQP^pgirs1B^hi0>jbT!g{@I&jQ_7lPQkz?>Xf+B{czvcH`(;I| zBsGI)-4goT^yVbeG|RXCTwSQp{(euL^i+xV>%1CVASyg9k)J2$12jtAjgPnIu$LXC z1>;Z4u6;SLfDlS*?M6Eh0-hl`uM6?Rnr;0??AxQcYUZ@5_tKx`+p}vemS`y)dKYC) znZ}8HevV`-exCZIqP2lP^OCqIjTe1M&EJ5PwW|904}x+8CDo3*dVOSC(;ykPkU5;Q z4Nhycp26ov$ZQrEtj<~M@-8IC{i>5Jee@XWm3;PLr4Rv6gTp!PLc?ToO-lehMSgHspL(o z^L_|@2E4i~JI=%G%PYaUrlL80?zPLYlok=q<7%n2srv;Nq9oFT%>g{&-2GUpWl83C zPnYL!f4p5=!6x{poV>>CZdNxdzf8Cl!$~V|WegbIeXS+{s`Z&8D~VyhVLZ~^YVS<` zidp|*ecN@mlW5bZ1b^=F1^Idi^{aXGu*|r97*d-?{o+l%0Q-b&u4>FPdv(*;HWwh< z%6rLI987iHZUzn}Y+|LK?w*O*=5Nz_C+VO!HS|1+VhZ`&k$#*@zY4t73?03b@DHa} zcRb$`5CHBuUHCFUk|d9z=Uuvp3;lkoeOWdwCpHASh$EKC)rjwZtH4tZEmM%mrfT4C zCzOaAg6a@zp8FGLZ%Te)8CH^O=dlv3JI-9?R7AG{OWzy=Y1;4f%@zJ=L}jEkb-m54 zTS0DiIi^A7Gfla2?$nn4h~53Ks{A zPCxB_7yqlxWY%@ft?a`+9?B?DTi1i0BT<}Dk+bFp(PKXIfYp1-D`#T4vP^IF*_L{7 z>#yu)*hk*M+g@8$5(0~$gXObwr3hm6K?M4~iL1G?hAg)Vl2IoAUSf5w(%Qi4rhqP2 zu2Xi*zUSOo+hFWQAt9e~jG^K@bX~S!OUU`0JAugJ#bhZm%Xr~;2-VHhg`}C+NWerI zaf%jm;`-8B_P1#CK(8j{F?qq*&2iUY)u)zAHtMQ^(SqILoO`%p$|GL3!X$Nq3tVT* zQif%TNmcH_M}h)Jd%nNSl$j{u#^3-$V|m3q0#J&Kh5+?=Q>?O7R)|!WigD0;w0n6w z9fCoJv^r^8!3$;bV9L68gSk`B=3_m}&8WxqhV+k`34^YGepSwM;j`aRObcZ(OSoi7 z7ES=~3W&*uS4$Z!ZA~|pSs6(@=VjL6txs_n1LYT1B#=m7t$IAOHudULw-8Q;VCz3W zs5affGxjU8#QEi?+t8@9#|DsNbkd%405BPIJ9P`P(IKk>2MHmqM&O?KY<-=q#ZNMu zVH*MVsw3V`c19bG$QknO=a;<**`JFX(opJdfkY989FlD_l;v&3!pvM=1UwPm!QX(6 zLDgm#Y=Y^JpJEMhSITzA(e-AspP2w5YQyF~u zoFxJFiZBUtlBTBxir#AQetB)jbxFy&g@*CxNG}x0xY^%^+MhpZ9$1ope(ykb2yaMq zY*mIyQh#1}26AHu)7x|!P~@Iox_tZaQE~G9)a3dGa?^|vUyq@8FXB%@ibumNOe_Z< zaiW)Xiv+EDWCp3;iYQYs2&@0?IhX-A6l_@7#F7MRthOk_I>?-5bY8rXf${^g(@@&HvEFlkb`OO{I zOXvdGa(E*-SkjJ^Z``<>`S1S%Xm=wM2lyW&pLdNd19I`VIn4f6dv!KkxDpH2Sri_b ztgLR%qQs4io#*Cxd|QHCX9W}a8|G(w6^m|1u@drqGnaOfaqHZ{!NHAdtmOkhdpdVv zLKD!-or%6CP!nn!o41u?ftH z$(Q@PfwfVsG9g7;vc3so&eP@CeZppNw4{_uP9qNMTnnklrTpB#{-V0f7f=CgRQcFs?#49ttaPk(ASpMFy63c(ax1{XWW4I!9{eF zZP5B{l}?CCB+Yi1Z#jH(>aIhYw~S6zcij=MrE}K>VPJ$?;BnF%XW?reU8rY5H^Pby ze0@QDU29gU+e<0vv70fwTI2mAX-H;|97$=SWpqxS3#dP#MU?Zm>zv|WA-rkv_U#Ot zOzfq1>Oc-pJjVxXUaoN^DU<{!DIr zq)l#Ii4*C&{-h_rglFM_lPi@nVJdyf?KWqCb`IZKm*CD;^HUeAQ?vH2R&0vc`nBpYtM;tWXef#=@sj}U@? zY>n#*7p!rOC$TSZoV^IA5`|P*v|7{GKCH3p+Fh;7Vdk=ZPRgYLIgz3|FGIn&? z5wD&3Z7x4B9IAdGwVec&GW=z(X8XT1b}RlJV@cq`l+c`te3g6OSZzM*=S#v2!9+OR zLOkVdb#3M*s=VX}E!(@fnRs#+orAwks&?yb?(rpi&)??r!hsr1{Y7KeU_HT#PJFPm zLEX0WGhR?9*nhn2WJcW(rZ|b;V~7-@bL~tPeCP7(O{afd|)-Tx=!o zOYRX8${=_*un=v!=Sx78+kJ4)W zy!pemmYSL(860H0mmKvVyfe8Jex%{&fkCAA2M(t)iXARhYW7Awsh$K8inW98ch`W15cs@j6LXU12jUBrn-*Z8UJLDZ4pueiOM5dUj)d|iOONhE~v zl*@5?&xfpBW8RoC7j7W_)r4l1ei8655boEE9nXx@CZ7vsz8!lVi-f=r`HHS6uxDQs zAHV%T+>4X-+W&6Smh~b^5PU!nrj!=y+?<)!NQgd4`bB8IfZ|ufpvmJA2i+IQ6}%eO z#urK4)zggpGyH{HH4!(VrY7d&$vUCKwMc0GWtyob&2wW5<&qU{jh z6XVS*U+Q7`s-D#IX2Gv?pl`orX800G>iqD@-cNm~Omv5b`#$zQI9`C|6??^TZcTS= ziXCUbyF6MSdZMt4&HP6ev9_*0%YxXHW-R|#E9`N;ob)aSgi#lU78JHsk1)BXFKwAu z|NOwKZ_W%ge2AI!3_pH~@fNx5zmgVS{@&PUt76l6KNP}I-!A)DS49VI zAJS^_I18yy$gbI{h*7?0QkTk~DEZ$r8I@xmKl2%pny#d-guMQH8C0 JZV5|T@6FKL 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 Date: Wed, 7 Aug 2019 13:48:25 -0400 Subject: [PATCH 25/37] texttemplate: add support for scattermapbox the baseline produced with the old image server does not show text labels --- src/traces/scattermapbox/attributes.js | 4 ++ src/traces/scattermapbox/convert.js | 18 +++++++-- src/traces/scattermapbox/defaults.js | 1 + src/traces/scattermapbox/plot.js | 4 +- test/image/baselines/mapbox_texttemplate.png | Bin 0 -> 47053 bytes test/image/mocks/mapbox_texttemplate.json | 38 ++++++++++++++++++ test/jasmine/tests/scattermapbox_test.js | 40 ++++++++++++++++++- 7 files changed, 98 insertions(+), 7 deletions(-) create mode 100644 test/image/baselines/mapbox_texttemplate.png create mode 100644 test/image/mocks/mapbox_texttemplate.json diff --git a/src/traces/scattermapbox/attributes.js b/src/traces/scattermapbox/attributes.js index 7fb71c44e11..5de1234e499 100644 --- a/src/traces/scattermapbox/attributes.js +++ b/src/traces/scattermapbox/attributes.js @@ -9,6 +9,7 @@ 'use strict'; var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../plots/texttemplate_attributes'); var scatterGeoAttrs = require('../scattergeo/attributes'); var scatterAttrs = require('../scatter/attributes'); var mapboxAttrs = require('../../plots/mapbox/layout_attributes'); @@ -49,6 +50,9 @@ module.exports = overrideAll({ 'these elements will be seen in the hover labels.' ].join(' ') }), + texttemplate: texttemplateAttrs({editType: 'calc'}, { + keys: ['lat', 'lon', 'text'] + }), hovertext: extendFlat({}, scatterAttrs.hovertext, { description: [ 'Sets hover text elements associated with each (lon,lat) pair', diff --git a/src/traces/scattermapbox/convert.js b/src/traces/scattermapbox/convert.js index ace20bea379..a5939e65396 100644 --- a/src/traces/scattermapbox/convert.js +++ b/src/traces/scattermapbox/convert.js @@ -20,7 +20,7 @@ var makeBubbleSizeFn = require('../scatter/make_bubble_size_func'); var subTypes = require('../scatter/subtypes'); var convertTextOpts = require('../../plots/mapbox/convert_text_opts'); -module.exports = function convert(calcTrace) { +module.exports = function convert(calcTrace, gd) { var trace = calcTrace[0].trace; var isVisible = (trace.visible === true && trace._length !== 0); @@ -87,7 +87,7 @@ module.exports = function convert(calcTrace) { } if(hasSymbols || hasText) { - symbol.geojson = makeSymbolGeoJSON(calcTrace); + symbol.geojson = makeSymbolGeoJSON(calcTrace, gd); Lib.extendFlat(symbol.layout, { visibility: 'visible', @@ -229,7 +229,7 @@ function makeCircleOpts(calcTrace) { }; } -function makeSymbolGeoJSON(calcTrace) { +function makeSymbolGeoJSON(calcTrace, gd) { var trace = calcTrace[0].trace; var marker = trace.marker || {}; @@ -251,6 +251,16 @@ function makeSymbolGeoJSON(calcTrace) { if(isBADNUM(calcPt.lonlat)) continue; + var txt = trace.texttemplate; + if(txt) { + var txti = Array.isArray(txt) ? (txt[i] || '') : txt; + calcPt.text = calcPt.tx; + calcPt.lon = calcPt.lonlat[0]; + calcPt.lat = calcPt.lonlat[1]; + calcPt.customdata = calcPt.data; + calcPt.txt = Lib.texttemplateString(txti, {}, gd._fullLayout._d3locale, calcPt, trace._meta || {}); + } + features.push({ type: 'Feature', geometry: { @@ -259,7 +269,7 @@ function makeSymbolGeoJSON(calcTrace) { }, properties: { symbol: fillSymbol(calcPt.mx), - text: fillText(calcPt.tx) + text: txt ? calcPt.txt : fillText(calcPt.tx) } }); } diff --git a/src/traces/scattermapbox/defaults.js b/src/traces/scattermapbox/defaults.js index 4708202f393..b0f088f9f14 100644 --- a/src/traces/scattermapbox/defaults.js +++ b/src/traces/scattermapbox/defaults.js @@ -29,6 +29,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } coerce('text'); + coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); coerce('mode'); diff --git a/src/traces/scattermapbox/plot.js b/src/traces/scattermapbox/plot.js index e683980a722..cfeeb6dd39f 100644 --- a/src/traces/scattermapbox/plot.js +++ b/src/traces/scattermapbox/plot.js @@ -67,7 +67,7 @@ proto.addLayer = function(k, opts, below) { proto.update = function update(calcTrace) { var subplot = this.subplot; var map = subplot.map; - var optsAll = convert(calcTrace); + var optsAll = convert(calcTrace, subplot.gd); var below = subplot.belowLookup['trace-' + this.uid]; var i, k, opts; @@ -113,7 +113,7 @@ proto.dispose = function dispose() { module.exports = function createScatterMapbox(subplot, calcTrace) { var trace = calcTrace[0].trace; var scatterMapbox = new ScatterMapbox(subplot, trace.uid); - var optsAll = convert(calcTrace); + var optsAll = convert(calcTrace, subplot.gd); var below = scatterMapbox.below = subplot.belowLookup['trace-' + trace.uid]; for(var i = 0; i < ORDER.length; i++) { diff --git a/test/image/baselines/mapbox_texttemplate.png b/test/image/baselines/mapbox_texttemplate.png new file mode 100644 index 0000000000000000000000000000000000000000..490e08cac746cbf7bef89d4106ffa9b3fa5468c7 GIT binary patch literal 47053 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 Date: Tue, 27 Aug 2019 13:18:28 -0400 Subject: [PATCH 32/37] merge (text|hover)templateAttrs() into a single file --- .../template_attributes.js} | 60 +++++++++++++++---- src/plots/texttemplate_attributes.js | 58 ------------------ src/traces/bar/attributes.js | 4 +- src/traces/barpolar/attributes.js | 2 +- src/traces/box/attributes.js | 2 +- src/traces/choropleth/attributes.js | 2 +- src/traces/choroplethmapbox/attributes.js | 2 +- src/traces/cone/attributes.js | 2 +- src/traces/densitymapbox/attributes.js | 2 +- src/traces/funnel/attributes.js | 4 +- src/traces/funnelarea/attributes.js | 4 +- src/traces/heatmap/attributes.js | 2 +- src/traces/histogram/attributes.js | 2 +- src/traces/histogram2d/attributes.js | 2 +- src/traces/isosurface/attributes.js | 2 +- src/traces/mesh3d/attributes.js | 2 +- src/traces/parcats/attributes.js | 2 +- src/traces/pie/attributes.js | 4 +- src/traces/sankey/attributes.js | 2 +- src/traces/scatter/attributes.js | 4 +- src/traces/scatter3d/attributes.js | 4 +- src/traces/scattercarpet/attributes.js | 4 +- src/traces/scattergeo/attributes.js | 4 +- src/traces/scattermapbox/attributes.js | 4 +- src/traces/scatterpolar/attributes.js | 4 +- src/traces/scatterpolargl/attributes.js | 2 +- src/traces/scatterternary/attributes.js | 4 +- src/traces/splom/attributes.js | 2 +- src/traces/streamtube/attributes.js | 2 +- src/traces/sunburst/attributes.js | 4 +- src/traces/surface/attributes.js | 2 +- src/traces/waterfall/attributes.js | 4 +- 32 files changed, 91 insertions(+), 113 deletions(-) rename src/{components/fx/hovertemplate_attributes.js => plots/template_attributes.js} (52%) delete mode 100644 src/plots/texttemplate_attributes.js diff --git a/src/components/fx/hovertemplate_attributes.js b/src/plots/template_attributes.js similarity index 52% rename from src/components/fx/hovertemplate_attributes.js rename to src/plots/template_attributes.js index 23068f233fe..0aa235411e0 100644 --- a/src/components/fx/hovertemplate_attributes.js +++ b/src/plots/template_attributes.js @@ -8,13 +8,20 @@ 'use strict'; -var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK; -var DATE_FORMAT_LINK = require('../../constants/docs').DATE_FORMAT_LINK; +var FORMAT_LINK = require('../constants/docs').FORMAT_LINK; +var DATE_FORMAT_LINK = require('../constants/docs').DATE_FORMAT_LINK; -module.exports = function(opts, extra) { - opts = opts || {}; - extra = extra || {}; +var templateFormatStringDescription = [ + 'Variables are inserted using %{variable}, for example "y: %{y}".', + 'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".', + FORMAT_LINK, + 'for details on the formatting syntax.', + 'Dates are formatted using d3-time-format\'s syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".', + DATE_FORMAT_LINK, + 'for details on the date formatting syntax.' +].join(' '); +function describeVariables(extra) { var descPart = extra.description ? ' ' + extra.description : ''; var keys = extra.keys || []; if(keys.length > 0) { @@ -29,6 +36,15 @@ module.exports = function(opts, extra) { descPart = 'variables ' + quotedKeys.slice(0, -1).join(', ') + ' and ' + quotedKeys.slice(-1) + '.'; } } + return descPart; +} + +module.exports = {}; +module.exports.hovertemplateAttrs = function(opts, extra) { + opts = opts || {}; + extra = extra || {}; + + var descPart = describeVariables(extra); var hovertemplate = { valType: 'string', @@ -38,13 +54,7 @@ module.exports = function(opts, extra) { description: [ 'Template string used for rendering the information that appear on hover box.', 'Note that this will override `hoverinfo`.', - 'Variables are inserted using %{variable}, for example "y: %{y}".', - 'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".', - FORMAT_LINK, - 'for details on the formatting syntax.', - 'Dates are formatted using d3-time-format\'s syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".', - DATE_FORMAT_LINK, - 'for details on the date formatting syntax.', + templateFormatStringDescription, 'The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data.', 'Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.', descPart, @@ -59,3 +69,29 @@ module.exports = function(opts, extra) { return hovertemplate; }; + +module.exports.texttemplateAttrs = function(opts, extra) { + opts = opts || {}; + extra = extra || {}; + + var descPart = describeVariables(extra); + + var texttemplate = { + valType: 'string', + role: 'info', + dflt: '', + editType: opts.editType || 'calc', + description: [ + 'Template string used for rendering the information text that appear on points.', + 'Note that this will override `textinfo`.', + templateFormatStringDescription, + 'Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.', + descPart + ].join(' ') + }; + + if(opts.arrayOk !== false) { + texttemplate.arrayOk = true; + } + return texttemplate; +}; diff --git a/src/plots/texttemplate_attributes.js b/src/plots/texttemplate_attributes.js deleted file mode 100644 index 878c182800f..00000000000 --- a/src/plots/texttemplate_attributes.js +++ /dev/null @@ -1,58 +0,0 @@ -/** -* Copyright 2012-2019, 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 FORMAT_LINK = require('../constants/docs').FORMAT_LINK; -var DATE_FORMAT_LINK = require('../constants/docs').DATE_FORMAT_LINK; - -module.exports = function(opts, extra) { - opts = opts || {}; - extra = extra || {}; - - var descPart = extra.description ? ' ' + extra.description : ''; - var keys = extra.keys || []; - if(keys.length > 0) { - var quotedKeys = []; - for(var i = 0; i < keys.length; i++) { - quotedKeys[i] = '`' + keys[i] + '`'; - } - descPart = descPart + 'Finally, the template string has access to '; - if(keys.length === 1) { - descPart = 'variable ' + quotedKeys[0]; - } else { - descPart = 'variables ' + quotedKeys.slice(0, -1).join(', ') + ' and ' + quotedKeys.slice(-1) + '.'; - } - } - - var texttemplate = { - valType: 'string', - role: 'info', - dflt: '', - editType: opts.editType || 'calc', - description: [ - 'Template string used for rendering the information text that appear on points.', - 'Note that this will override `textinfo`.', - 'Variables are inserted using %{variable}, for example "y: %{y}".', - 'If the `text` attribute is set, it will be available via "%{text}"', - 'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".', - FORMAT_LINK, - 'for details on the formatting syntax.', - 'Dates are formatted using d3-time-format\'s syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".', - DATE_FORMAT_LINK, - 'for details on the date formatting syntax.', - 'Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.', - descPart - ].join(' ') - }; - - if(opts.arrayOk !== false) { - texttemplate.arrayOk = true; - } - return texttemplate; -}; diff --git a/src/traces/bar/attributes.js b/src/traces/bar/attributes.js index af17a0cb1d5..c800d8bc30a 100644 --- a/src/traces/bar/attributes.js +++ b/src/traces/bar/attributes.js @@ -9,8 +9,8 @@ 'use strict'; var scatterAttrs = require('../scatter/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var colorScaleAttrs = require('../../components/colorscale/attributes'); var fontAttrs = require('../../plots/font_attributes'); var constants = require('./constants.js'); diff --git a/src/traces/barpolar/attributes.js b/src/traces/barpolar/attributes.js index e6540f1a6c6..46de5c8f4bc 100644 --- a/src/traces/barpolar/attributes.js +++ b/src/traces/barpolar/attributes.js @@ -8,7 +8,7 @@ 'use strict'; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var extendFlat = require('../../lib/extend').extendFlat; var scatterPolarAttrs = require('../scatterpolar/attributes'); var barAttrs = require('../bar/attributes'); diff --git a/src/traces/box/attributes.js b/src/traces/box/attributes.js index 66476cb1f26..a8144de00d0 100644 --- a/src/traces/box/attributes.js +++ b/src/traces/box/attributes.js @@ -11,7 +11,7 @@ var scatterAttrs = require('../scatter/attributes'); var barAttrs = require('../bar/attributes'); var colorAttrs = require('../../components/color/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var extendFlat = require('../../lib/extend').extendFlat; var scatterMarkerAttrs = scatterAttrs.marker; diff --git a/src/traces/choropleth/attributes.js b/src/traces/choropleth/attributes.js index 0e5145f18e5..16a3712413a 100644 --- a/src/traces/choropleth/attributes.js +++ b/src/traces/choropleth/attributes.js @@ -8,7 +8,7 @@ 'use strict'; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var scatterGeoAttrs = require('../scattergeo/attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); var plotAttrs = require('../../plots/attributes'); diff --git a/src/traces/choroplethmapbox/attributes.js b/src/traces/choroplethmapbox/attributes.js index 4b36f3d44ee..31c932e1273 100644 --- a/src/traces/choroplethmapbox/attributes.js +++ b/src/traces/choroplethmapbox/attributes.js @@ -10,7 +10,7 @@ var choroplethAttrs = require('../choropleth/attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/cone/attributes.js b/src/traces/cone/attributes.js index a47c8dc8ee5..5e263c86515 100644 --- a/src/traces/cone/attributes.js +++ b/src/traces/cone/attributes.js @@ -9,7 +9,7 @@ 'use strict'; var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var mesh3dAttrs = require('../mesh3d/attributes'); var baseAttrs = require('../../plots/attributes'); diff --git a/src/traces/densitymapbox/attributes.js b/src/traces/densitymapbox/attributes.js index 4dcc168f8eb..c37046b1f76 100644 --- a/src/traces/densitymapbox/attributes.js +++ b/src/traces/densitymapbox/attributes.js @@ -9,7 +9,7 @@ 'use strict'; var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var plotAttrs = require('../../plots/attributes'); var scatterMapboxAttrs = require('../scattermapbox/attributes'); diff --git a/src/traces/funnel/attributes.js b/src/traces/funnel/attributes.js index c03a9b25082..c6407d0a110 100644 --- a/src/traces/funnel/attributes.js +++ b/src/traces/funnel/attributes.js @@ -11,8 +11,8 @@ var barAttrs = require('../bar/attributes'); var lineAttrs = require('../scatter/attributes').line; var plotAttrs = require('../../plots/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var constants = require('./constants'); var extendFlat = require('../../lib/extend').extendFlat; var Color = require('../../components/color'); diff --git a/src/traces/funnelarea/attributes.js b/src/traces/funnelarea/attributes.js index 19237fa73a7..d0bc5dbed7b 100644 --- a/src/traces/funnelarea/attributes.js +++ b/src/traces/funnelarea/attributes.js @@ -11,8 +11,8 @@ var pieAttrs = require('../pie/attributes'); var plotAttrs = require('../../plots/attributes'); var domainAttrs = require('../../plots/domain').attributes; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/heatmap/attributes.js b/src/traces/heatmap/attributes.js index 1fc7aa07eb6..6be9ef1fc5a 100644 --- a/src/traces/heatmap/attributes.js +++ b/src/traces/heatmap/attributes.js @@ -9,7 +9,7 @@ 'use strict'; var scatterAttrs = require('../scatter/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var colorScaleAttrs = require('../../components/colorscale/attributes'); var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK; diff --git a/src/traces/histogram/attributes.js b/src/traces/histogram/attributes.js index 4869e9b02fc..7f9a4d8a2a8 100644 --- a/src/traces/histogram/attributes.js +++ b/src/traces/histogram/attributes.js @@ -9,7 +9,7 @@ 'use strict'; var barAttrs = require('../bar/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var makeBinAttrs = require('./bin_attributes'); var constants = require('./constants'); var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/histogram2d/attributes.js b/src/traces/histogram2d/attributes.js index d4a6c6de48a..2fa6ffbd04f 100644 --- a/src/traces/histogram2d/attributes.js +++ b/src/traces/histogram2d/attributes.js @@ -11,7 +11,7 @@ var histogramAttrs = require('../histogram/attributes'); var makeBinAttrs = require('../histogram/bin_attributes'); var heatmapAttrs = require('../heatmap/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var colorScaleAttrs = require('../../components/colorscale/attributes'); var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/isosurface/attributes.js b/src/traces/isosurface/attributes.js index 37cf47f316e..c294ca45f01 100644 --- a/src/traces/isosurface/attributes.js +++ b/src/traces/isosurface/attributes.js @@ -9,7 +9,7 @@ 'use strict'; var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var meshAttrs = require('../mesh3d/attributes'); var baseAttrs = require('../../plots/attributes'); diff --git a/src/traces/mesh3d/attributes.js b/src/traces/mesh3d/attributes.js index 4d538925f7d..db7c1963568 100644 --- a/src/traces/mesh3d/attributes.js +++ b/src/traces/mesh3d/attributes.js @@ -9,7 +9,7 @@ 'use strict'; var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var surfaceAttrs = require('../surface/attributes'); var baseAttrs = require('../../plots/attributes'); diff --git a/src/traces/parcats/attributes.js b/src/traces/parcats/attributes.js index a2188a08636..8289c4a6642 100644 --- a/src/traces/parcats/attributes.js +++ b/src/traces/parcats/attributes.js @@ -12,7 +12,7 @@ var extendFlat = require('../../lib/extend').extendFlat; var plotAttrs = require('../../plots/attributes'); var fontAttrs = require('../../plots/font_attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var domainAttrs = require('../../plots/domain').attributes; var line = extendFlat( diff --git a/src/traces/pie/attributes.js b/src/traces/pie/attributes.js index 235b44c6e3c..770c784d14a 100644 --- a/src/traces/pie/attributes.js +++ b/src/traces/pie/attributes.js @@ -12,8 +12,8 @@ var plotAttrs = require('../../plots/attributes'); var domainAttrs = require('../../plots/domain').attributes; var fontAttrs = require('../../plots/font_attributes'); var colorAttrs = require('../../components/color/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/sankey/attributes.js b/src/traces/sankey/attributes.js index 7fe25588f35..a3501323cf9 100644 --- a/src/traces/sankey/attributes.js +++ b/src/traces/sankey/attributes.js @@ -13,7 +13,7 @@ var plotAttrs = require('../../plots/attributes'); var colorAttrs = require('../../components/color/attributes'); var fxAttrs = require('../../components/fx/attributes'); var domainAttrs = require('../../plots/domain').attributes; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var colorAttributes = require('../../components/colorscale/attributes'); var templatedArray = require('../../plot_api/plot_template').templatedArray; diff --git a/src/traces/scatter/attributes.js b/src/traces/scatter/attributes.js index bf38e374826..209c4f9ec3e 100644 --- a/src/traces/scatter/attributes.js +++ b/src/traces/scatter/attributes.js @@ -8,8 +8,8 @@ 'use strict'; -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var colorScaleAttrs = require('../../components/colorscale/attributes'); var fontAttrs = require('../../plots/font_attributes'); var dash = require('../../components/drawing/attributes').dash; diff --git a/src/traces/scatter3d/attributes.js b/src/traces/scatter3d/attributes.js index 6429da53fc8..e985957375e 100644 --- a/src/traces/scatter3d/attributes.js +++ b/src/traces/scatter3d/attributes.js @@ -10,8 +10,8 @@ var scatterAttrs = require('../scatter/attributes'); var colorAttributes = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var baseAttrs = require('../../plots/attributes'); var DASHES = require('../../constants/gl3d_dashes'); diff --git a/src/traces/scattercarpet/attributes.js b/src/traces/scattercarpet/attributes.js index 6a0ff3aa882..88dd85fb404 100644 --- a/src/traces/scattercarpet/attributes.js +++ b/src/traces/scattercarpet/attributes.js @@ -10,8 +10,8 @@ var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var colorScaleAttrs = require('../../components/colorscale/attributes'); var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/scattergeo/attributes.js b/src/traces/scattergeo/attributes.js index 2b3ea5fd2d0..c327921cd58 100644 --- a/src/traces/scattergeo/attributes.js +++ b/src/traces/scattergeo/attributes.js @@ -8,8 +8,8 @@ 'use strict'; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); var colorAttributes = require('../../components/colorscale/attributes'); diff --git a/src/traces/scattermapbox/attributes.js b/src/traces/scattermapbox/attributes.js index b934f1695b7..c9f96a02630 100644 --- a/src/traces/scattermapbox/attributes.js +++ b/src/traces/scattermapbox/attributes.js @@ -8,8 +8,8 @@ 'use strict'; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var scatterGeoAttrs = require('../scattergeo/attributes'); var scatterAttrs = require('../scatter/attributes'); var mapboxAttrs = require('../../plots/mapbox/layout_attributes'); diff --git a/src/traces/scatterpolar/attributes.js b/src/traces/scatterpolar/attributes.js index a4ce7ca2004..1e5b2742dc6 100644 --- a/src/traces/scatterpolar/attributes.js +++ b/src/traces/scatterpolar/attributes.js @@ -8,8 +8,8 @@ 'use strict'; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var extendFlat = require('../../lib/extend').extendFlat; var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); diff --git a/src/traces/scatterpolargl/attributes.js b/src/traces/scatterpolargl/attributes.js index ec99f052522..bef0834efa1 100644 --- a/src/traces/scatterpolargl/attributes.js +++ b/src/traces/scatterpolargl/attributes.js @@ -10,7 +10,7 @@ var scatterPolarAttrs = require('../scatterpolar/attributes'); var scatterGlAttrs = require('../scattergl/attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; module.exports = { mode: scatterPolarAttrs.mode, diff --git a/src/traces/scatterternary/attributes.js b/src/traces/scatterternary/attributes.js index ac2d0fb6038..990b9dbc9cf 100644 --- a/src/traces/scatterternary/attributes.js +++ b/src/traces/scatterternary/attributes.js @@ -8,8 +8,8 @@ 'use strict'; -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var scatterAttrs = require('../scatter/attributes'); var plotAttrs = require('../../plots/attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); diff --git a/src/traces/splom/attributes.js b/src/traces/splom/attributes.js index e75878fdf25..037079f95cb 100644 --- a/src/traces/splom/attributes.js +++ b/src/traces/splom/attributes.js @@ -10,7 +10,7 @@ var scatterAttrs = require('../scatter/attributes'); var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var scatterGlAttrs = require('../scattergl/attributes'); var cartesianIdRegex = require('../../plots/cartesian/constants').idRegex; var templatedArray = require('../../plot_api/plot_template').templatedArray; diff --git a/src/traces/streamtube/attributes.js b/src/traces/streamtube/attributes.js index 47b4f2f103b..9cf58c2b3fb 100644 --- a/src/traces/streamtube/attributes.js +++ b/src/traces/streamtube/attributes.js @@ -9,7 +9,7 @@ 'use strict'; var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var mesh3dAttrs = require('../mesh3d/attributes'); var baseAttrs = require('../../plots/attributes'); diff --git a/src/traces/sunburst/attributes.js b/src/traces/sunburst/attributes.js index f6fd01d005f..f36294917aa 100644 --- a/src/traces/sunburst/attributes.js +++ b/src/traces/sunburst/attributes.js @@ -9,8 +9,8 @@ 'use strict'; var plotAttrs = require('../../plots/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var domainAttrs = require('../../plots/domain').attributes; var pieAttrs = require('../pie/attributes'); diff --git a/src/traces/surface/attributes.js b/src/traces/surface/attributes.js index 7e0fbfe0a6f..6d9ae82c2f1 100644 --- a/src/traces/surface/attributes.js +++ b/src/traces/surface/attributes.js @@ -10,7 +10,7 @@ var Color = require('../../components/color'); var colorScaleAttrs = require('../../components/colorscale/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; var baseAttrs = require('../../plots/attributes'); var extendFlat = require('../../lib/extend').extendFlat; diff --git a/src/traces/waterfall/attributes.js b/src/traces/waterfall/attributes.js index 988ff41c046..36ff4d860c1 100644 --- a/src/traces/waterfall/attributes.js +++ b/src/traces/waterfall/attributes.js @@ -11,8 +11,8 @@ var barAttrs = require('../bar/attributes'); var lineAttrs = require('../scatter/attributes').line; var plotAttrs = require('../../plots/attributes'); -var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes'); -var texttemplateAttrs = require('../../plots/texttemplate_attributes'); +var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs; +var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs; var constants = require('./constants'); var extendFlat = require('../../lib/extend').extendFlat; var Color = require('../../components/color'); From e700fc2814a503757df2a82294ce491f423bd8cc Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 27 Aug 2019 14:29:26 -0400 Subject: [PATCH 33/37] texttemplate: fix style --- src/plots/template_attributes.js | 5 ++--- src/traces/bar/plot.js | 1 - 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/plots/template_attributes.js b/src/plots/template_attributes.js index 0aa235411e0..fd5a5bdb59c 100644 --- a/src/plots/template_attributes.js +++ b/src/plots/template_attributes.js @@ -39,8 +39,7 @@ function describeVariables(extra) { return descPart; } -module.exports = {}; -module.exports.hovertemplateAttrs = function(opts, extra) { +exports.hovertemplateAttrs = function(opts, extra) { opts = opts || {}; extra = extra || {}; @@ -70,7 +69,7 @@ module.exports.hovertemplateAttrs = function(opts, extra) { return hovertemplate; }; -module.exports.texttemplateAttrs = function(opts, extra) { +exports.texttemplateAttrs = function(opts, extra) { opts = opts || {}; extra = extra || {}; diff --git a/src/traces/bar/plot.js b/src/traces/bar/plot.js index 55497bd51e9..11d8ad24f68 100644 --- a/src/traces/bar/plot.js +++ b/src/traces/bar/plot.js @@ -619,7 +619,6 @@ function calcTexttemplate(fullLayout, calcTrace, index, xa, ya) { return Lib.texttemplateString(texttemplate, obj, fullLayout._d3locale, pt, obj, trace._meta || {}); } -// TODO: calcTextinfo should build a texttemplate pass it to calcTexttemplate() function calcTextinfo(calcTrace, index, xa, ya) { var trace = calcTrace[0].trace; var isHorizontal = (trace.orientation === 'h'); From 6780a3d6b8a8cf36701a5b49a9ffce6eb710352f Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 28 Aug 2019 14:01:57 -0400 Subject: [PATCH 34/37] texttemplate: do not coerce texttemplate when no text is displayed --- src/traces/bar/defaults.js | 3 ++- src/traces/funnel/defaults.js | 1 - src/traces/scatter/defaults.js | 2 +- src/traces/scatter3d/defaults.js | 2 +- src/traces/scatter3d/index.js | 2 +- src/traces/scattergeo/defaults.js | 2 +- src/traces/scattergl/defaults.js | 2 +- src/traces/scattermapbox/index.js | 2 +- src/traces/scatterpolar/defaults.js | 2 +- src/traces/scatterpolargl/defaults.js | 2 +- test/jasmine/assets/check_texttemplate.js | 33 +++++++++++++++++++---- 11 files changed, 38 insertions(+), 15 deletions(-) diff --git a/src/traces/bar/defaults.js b/src/traces/bar/defaults.js index b362600fdc7..5627ffa3db7 100644 --- a/src/traces/bar/defaults.js +++ b/src/traces/bar/defaults.js @@ -36,7 +36,6 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { coerce('width'); coerce('text'); - coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); @@ -156,6 +155,8 @@ function handleText(traceIn, traceOut, layout, coerce, textposition, opts) { if(moduleHasConstrain) coerce('constraintext'); if(moduleHasCliponaxis) coerce('cliponaxis'); if(moduleHasTextangle) coerce('textangle'); + + coerce('texttemplate'); } if(hasInside) { diff --git a/src/traces/funnel/defaults.js b/src/traces/funnel/defaults.js index b4a893a2034..870f09cf9a8 100644 --- a/src/traces/funnel/defaults.js +++ b/src/traces/funnel/defaults.js @@ -32,7 +32,6 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { coerce('width'); var text = coerce('text'); - coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); diff --git a/src/traces/scatter/defaults.js b/src/traces/scatter/defaults.js index 82fd150e17f..0efdc43345a 100644 --- a/src/traces/scatter/defaults.js +++ b/src/traces/scatter/defaults.js @@ -37,7 +37,6 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout var defaultMode = !stackGroupOpts && (len < constants.PTS_LINESONLY) ? 'lines+markers' : 'lines'; coerce('text'); - coerce('texttemplate'); coerce('hovertext'); coerce('mode', defaultMode); @@ -53,6 +52,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } if(subTypes.hasText(traceOut)) { + coerce('texttemplate'); handleTextDefaults(traceIn, traceOut, layout, coerce); } diff --git a/src/traces/scatter3d/defaults.js b/src/traces/scatter3d/defaults.js index 13553db1e74..3ad572306a3 100644 --- a/src/traces/scatter3d/defaults.js +++ b/src/traces/scatter3d/defaults.js @@ -31,7 +31,6 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } coerce('text'); - coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); coerce('mode'); @@ -46,6 +45,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } if(subTypes.hasText(traceOut)) { + coerce('texttemplate'); handleTextDefaults(traceIn, traceOut, layout, coerce, {noSelect: true}); } diff --git a/src/traces/scatter3d/index.js b/src/traces/scatter3d/index.js index 98fecd71957..58ea27a3e00 100644 --- a/src/traces/scatter3d/index.js +++ b/src/traces/scatter3d/index.js @@ -29,7 +29,7 @@ module.exports = { moduleType: 'trace', name: 'scatter3d', basePlotModule: require('../../plots/gl3d'), - categories: ['gl3d', 'symbols', 'showLegend'], + categories: ['gl3d', 'symbols', 'showLegend', 'scatter-like'], meta: { hrName: 'scatter_3d', description: [ diff --git a/src/traces/scattergeo/defaults.js b/src/traces/scattergeo/defaults.js index b67b34dd062..f4c8c8fad4f 100644 --- a/src/traces/scattergeo/defaults.js +++ b/src/traces/scattergeo/defaults.js @@ -32,7 +32,6 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } coerce('text'); - coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); coerce('mode'); @@ -47,6 +46,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } if(subTypes.hasText(traceOut)) { + coerce('texttemplate'); handleTextDefaults(traceIn, traceOut, layout, coerce); } diff --git a/src/traces/scattergl/defaults.js b/src/traces/scattergl/defaults.js index ca3cf397a92..5987ca12d7b 100644 --- a/src/traces/scattergl/defaults.js +++ b/src/traces/scattergl/defaults.js @@ -36,7 +36,6 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout var defaultMode = len < constants.PTS_LINESONLY ? 'lines+markers' : 'lines'; coerce('text'); - coerce('texttemplate'); coerce('hovertext'); coerce('hovertemplate'); coerce('mode', defaultMode); @@ -53,6 +52,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } if(subTypes.hasText(traceOut)) { + coerce('texttemplate'); handleTextDefaults(traceIn, traceOut, layout, coerce); } diff --git a/src/traces/scattermapbox/index.js b/src/traces/scattermapbox/index.js index 279b1bad81e..ebe19400d3a 100644 --- a/src/traces/scattermapbox/index.js +++ b/src/traces/scattermapbox/index.js @@ -28,7 +28,7 @@ module.exports = { moduleType: 'trace', name: 'scattermapbox', basePlotModule: require('../../plots/mapbox'), - categories: ['mapbox', 'gl', 'symbols', 'showLegend', 'scatterlike'], + categories: ['mapbox', 'gl', 'symbols', 'showLegend', 'scatter-like'], meta: { hrName: 'scatter_mapbox', description: [ diff --git a/src/traces/scatterpolar/defaults.js b/src/traces/scatterpolar/defaults.js index 69d9fff752a..cc1c626b5a1 100644 --- a/src/traces/scatterpolar/defaults.js +++ b/src/traces/scatterpolar/defaults.js @@ -34,7 +34,6 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { coerce('thetaunit'); coerce('mode', len < PTS_LINESONLY ? 'lines+markers' : 'lines'); coerce('text'); - coerce('texttemplate'); coerce('hovertext'); if(traceOut.hoveron !== 'fills') coerce('hovertemplate'); @@ -49,6 +48,7 @@ function supplyDefaults(traceIn, traceOut, defaultColor, layout) { } if(subTypes.hasText(traceOut)) { + coerce('texttemplate'); handleTextDefaults(traceIn, traceOut, layout, coerce); } diff --git a/src/traces/scatterpolargl/defaults.js b/src/traces/scatterpolargl/defaults.js index 20c0b29dc7e..5164d8f10e5 100644 --- a/src/traces/scatterpolargl/defaults.js +++ b/src/traces/scatterpolargl/defaults.js @@ -34,7 +34,6 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout coerce('thetaunit'); coerce('mode', len < PTS_LINESONLY ? 'lines+markers' : 'lines'); coerce('text'); - coerce('texttemplate'); coerce('hovertext'); if(traceOut.hoveron !== 'fills') coerce('hovertemplate'); @@ -48,6 +47,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } if(subTypes.hasText(traceOut)) { + coerce('texttemplate'); handleTextDefaults(traceIn, traceOut, layout, coerce); } diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js index e6e905d1751..4960865dbd7 100644 --- a/test/jasmine/assets/check_texttemplate.js +++ b/test/jasmine/assets/check_texttemplate.js @@ -12,16 +12,39 @@ var supplyAllDefaults = require('../assets/supply_defaults'); module.exports = function checkTextTemplate(mock, selector, tests) { var isGL = Registry.traceIs(mock[0].type, 'gl'); var isPolar = Registry.traceIs(mock[0].type, 'polar'); + var isScatterLike = Registry.traceIs(mock[0].type, 'scatter-like'); + var isBarLike = Registry.traceIs(mock[0].type, 'bar-like'); - it('should not coerce textinfo when texttemplate', function() { + it('should not coerce textinfo when texttemplate is defined', function() { var gd = {}; - gd.data = Lib.extendDeep(mock, {}); + gd.data = Lib.extendDeep([], mock); gd.data[0].textinfo = 'text'; - gd.data[0].texttemplate = tests[0][0]; + gd.data[0].texttemplate = 'texttemplate'; supplyAllDefaults(gd); expect(gd._fullData[0].textinfo).toBe(undefined); }); + if(isScatterLike) { + it('should not coerce texttemplate when mode has no `text` flag', function() { + var gd = {}; + gd.data = Lib.extendDeep([], mock); + gd.data[0].mode = 'markers'; + gd.data[0].texttemplate = 'texttemplate'; + supplyAllDefaults(gd); + expect(gd._fullData[0].texttemplate).toBe(undefined); + }); + } + + if(isBarLike) { + it('should not coerce texttemplate when textposition is `none`', function() { + var gd = {}; + gd.data = Lib.extendDeep([], mock); + gd.data[0].textposition = 'none'; + gd.data[0].texttemplate = 'texttemplate'; + supplyAllDefaults(gd); + expect(gd._fullData[0].texttemplate).toBe(undefined); + }); + } var N = tests[0][1].length; var i; @@ -46,7 +69,7 @@ module.exports = function checkTextTemplate(mock, selector, tests) { tests.forEach(function(test) { it('@gl should support texttemplate', function(done) { var gd = createGraphDiv(); - var mockCopy = Lib.extendDeep(mock, {}); + var mockCopy = Lib.extendDeep([], mock); mockCopy[0].texttemplate = test[0]; Plotly.newPlot(gd, mockCopy) .then(function() { @@ -78,7 +101,7 @@ module.exports = function checkTextTemplate(mock, selector, tests) { tests.forEach(function(test) { it('should support texttemplate', function(done) { var gd = createGraphDiv(); - var mockCopy = Lib.extendDeep(mock, {}); + var mockCopy = Lib.extendDeep([], mock); mockCopy[0].texttemplate = test[0]; Plotly.newPlot(gd, mockCopy) .then(function() { From db87e62dd0c146d5fc78587b146fac6dcba97f0b Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 28 Aug 2019 14:03:01 -0400 Subject: [PATCH 35/37] (hover|text)template: pie/funnel/waterfall fix attribute definition --- src/traces/funnel/attributes.js | 5 +- src/traces/pie/attributes.js | 2 +- src/traces/waterfall/attributes.js | 3 +- .../waterfall_funnel_texttemplate_date.png | Bin 0 -> 38898 bytes .../waterfall_funnel_texttemplate_date.json | 73 ++++++++++++++++++ 5 files changed, 79 insertions(+), 4 deletions(-) create mode 100644 test/image/baselines/waterfall_funnel_texttemplate_date.png create mode 100644 test/image/mocks/waterfall_funnel_texttemplate_date.json diff --git a/src/traces/funnel/attributes.js b/src/traces/funnel/attributes.js index c6407d0a110..c21d05865a7 100644 --- a/src/traces/funnel/attributes.js +++ b/src/traces/funnel/attributes.js @@ -27,7 +27,7 @@ module.exports = { hovertext: barAttrs.hovertext, hovertemplate: hovertemplateAttrs({}, { - keys: constants.eventDataKeys.concat(['label', 'value', 'text']) + keys: constants.eventDataKeys }), hoverinfo: extendFlat({}, plotAttrs.hoverinfo, { @@ -47,8 +47,9 @@ module.exports = { 'are computed separately (per trace).' ].join(' ') }, + // TODO: incorporate `label` and `value` in the eventData texttemplate: texttemplateAttrs({editType: 'plot'}, { - keys: constants.eventDataKeys.concat(['label', 'value', 'text']) + keys: constants.eventDataKeys.concat(['label', 'value']) }), text: barAttrs.text, diff --git a/src/traces/pie/attributes.js b/src/traces/pie/attributes.js index 770c784d14a..04518282f6a 100644 --- a/src/traces/pie/attributes.js +++ b/src/traces/pie/attributes.js @@ -106,7 +106,7 @@ module.exports = { text: { valType: 'data_array', - editType: 'calc', + editType: 'plot', description: [ 'Sets text elements associated with each sector.', 'If trace `textinfo` contains a *text* flag, these elements will be seen', diff --git a/src/traces/waterfall/attributes.js b/src/traces/waterfall/attributes.js index 36ff4d860c1..94f0745cd02 100644 --- a/src/traces/waterfall/attributes.js +++ b/src/traces/waterfall/attributes.js @@ -99,8 +99,9 @@ module.exports = { 'are computed separately (per trace).' ].join(' ') }, + // TODO: incorporate `label` and `value` in the eventData texttemplate: texttemplateAttrs({editType: 'plot'}, { - keys: ['label', 'text', 'initial', 'delta', 'final'] + keys: constants.eventDataKeys.concat(['label']) }), text: barAttrs.text, textposition: barAttrs.textposition, diff --git a/test/image/baselines/waterfall_funnel_texttemplate_date.png b/test/image/baselines/waterfall_funnel_texttemplate_date.png new file mode 100644 index 0000000000000000000000000000000000000000..5a890f72b423614834c1fb91a3dc6ec8b9236e0a GIT binary patch literal 38898 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 Cjw}TL literal 0 HcmV?d00001 diff --git a/test/image/mocks/waterfall_funnel_texttemplate_date.json b/test/image/mocks/waterfall_funnel_texttemplate_date.json new file mode 100644 index 00000000000..b8d4be3e574 --- /dev/null +++ b/test/image/mocks/waterfall_funnel_texttemplate_date.json @@ -0,0 +1,73 @@ +{ + "data": [{ + "type": "waterfall", + "x": [ + "2010-01-01", + "2010-07-01", + "2011-01-01", + "2012-01-01" + ], + "y": [1, -2, 3, 0], + "textinfo": "label", + "textposition": "inside" + }, { + "type": "waterfall", + "x": [ + "2010-01-01", + "2010-07-01", + "2011-01-01", + "2012-01-01" + ], + "y": [1, -2, 3, 0], + "texttemplate": "%{label}", + "textposition": "inside", + "xaxis": "x1", + "yaxis": "y1" + }, { + "type": "funnel", + "orientation": "v", + "x": [ + "2010-01-01", + "2010-07-01", + "2011-01-01", + "2012-01-01" + ], + "y": [10, 7, 3, 0], + "textinfo": "label", + "textposition": "inside", + "xaxis": "x2", + "yaxis": "y2" + }, { + "type": "funnel", + "orientation": "v", + "x": [ + "2010-01-01", + "2010-07-01", + "2011-01-01", + "2012-01-01" + ], + "y": [10, 7, 3, 0], + "texttemplate": "%{label}", + "textposition": "inside", + "xaxis": "x2", + "yaxis": "y2" + }], + "layout": { + "title": { + "text": "textinfo: 'label' versus texttemplate: '%{label}'" + }, + "xaxis": { + "type": "date" + }, + "margin": {"t": 40, "b": 20, "l": 20, "r": 20}, + "width": 800, + "height": 400, + "grid": { + "rows": 1, + "columns": 2, + "pattern": "independent", + "xgap": 5, + "ygap": 5 + } + } +} From daa2c7e587bcb4d70af57539f8e0a574a0d96472 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 28 Aug 2019 14:03:22 -0400 Subject: [PATCH 36/37] templateFormatString: do not error out when lookup objects are undefined --- src/lib/index.js | 2 ++ test/jasmine/tests/lib_test.js | 12 +++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/lib/index.js b/src/lib/index.js index 49d8e46b6c1..0073533aab1 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -1031,6 +1031,7 @@ var TEMPLATE_STRING_FORMAT_SEPARATOR = /^[:|\|]/; function templateFormatString(string, labels, d3locale) { var opts = this; var args = arguments; + if(!labels) labels = {}; // Not all that useful, but cache nestedProperty instantiation // just in case it speeds things up *slightly*: var getterCache = {}; @@ -1039,6 +1040,7 @@ function templateFormatString(string, labels, d3locale) { var obj, value, i; for(i = 3; i < args.length; i++) { obj = args[i]; + if(!obj) continue; if(obj.hasOwnProperty(key)) { value = obj[key]; break; diff --git a/test/jasmine/tests/lib_test.js b/test/jasmine/tests/lib_test.js index 924420a90ce..cbcdfb2ec18 100644 --- a/test/jasmine/tests/lib_test.js +++ b/test/jasmine/tests/lib_test.js @@ -2250,14 +2250,24 @@ describe('Test lib.js:', function() { } expect(Lib.warn.calls.count()).toBe(10); }); + + it('does not error out when arguments are undefined', function() { + expect(function() { + Lib.hovertemplateString('y: %{y}', undefined, locale, undefined); + }).not.toThrow(); + }); }); describe('texttemplateString', function() { + var locale = false; it('evaluates attributes', function() { - var locale = false; expect(Lib.texttemplateString('foo %{bar}', {}, locale, {bar: 'baz'})).toEqual('foo baz'); }); + it('looks for default label if no format is provided', function() { + expect(Lib.texttemplateString('y: %{y}', {yLabel: '0.1'}, locale, {y: 0.123})).toEqual('y: 0.1'); + }); + it('warns user up to 10 times if a variable cannot be found', function() { spyOn(Lib, 'warn').and.callThrough(); Lib.texttemplateString('%{idontexist}', {}); From c7dd845dba0295e8cd4f82b0a82f45e2f3d49747 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 28 Aug 2019 16:39:11 -0400 Subject: [PATCH 37/37] don't coerce texttemplate when no text - fix for scatterternary --- src/traces/scatterternary/defaults.js | 2 +- test/jasmine/tests/scatterternary_test.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/traces/scatterternary/defaults.js b/src/traces/scatterternary/defaults.js index 594099d8ec3..23d3bbda305 100644 --- a/src/traces/scatterternary/defaults.js +++ b/src/traces/scatterternary/defaults.js @@ -58,7 +58,6 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout coerce('sum'); coerce('text'); - coerce('texttemplate'); coerce('hovertext'); if(traceOut.hoveron !== 'fills') coerce('hovertemplate'); @@ -76,6 +75,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } if(subTypes.hasText(traceOut)) { + coerce('texttemplate'); handleTextDefaults(traceIn, traceOut, layout, coerce); } diff --git a/test/jasmine/tests/scatterternary_test.js b/test/jasmine/tests/scatterternary_test.js index 53c787aee13..83299d8027b 100644 --- a/test/jasmine/tests/scatterternary_test.js +++ b/test/jasmine/tests/scatterternary_test.js @@ -556,7 +556,7 @@ describe('Test scatterternary *cliponaxis*', function() { }); }); -describe('Test scattergeo texttemplate:', function() { +describe('Test scatterternary texttemplate:', function() { checkTextTemplate([{ 'type': 'scatterternary', 'a': [3, 2, 5],

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 Date: Tue, 20 Aug 2019 14:04:01 -0400 Subject: [PATCH 26/37] funnelarea: fix description of variables in (hover|text)template --- src/traces/funnelarea/attributes.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/traces/funnelarea/attributes.js b/src/traces/funnelarea/attributes.js index a5e51a5253f..8648123c4da 100644 --- a/src/traces/funnelarea/attributes.js +++ b/src/traces/funnelarea/attributes.js @@ -55,7 +55,7 @@ module.exports = { }), texttemplate: texttemplateAttrs({editType: 'plot'}, { - keys: ['label', 'color', 'value', 'percent', 'text'] + keys: ['label', 'color', 'value', 'text', 'percentInitial', 'percentTotal', 'percentPrevious'] }), hoverinfo: extendFlat({}, plotAttrs.hoverinfo, { @@ -63,7 +63,7 @@ module.exports = { }), hovertemplate: hovertemplateAttrs({}, { - keys: ['label', 'color', 'value', 'percent', 'text'] + keys: ['label', 'color', 'value', 'text', 'percentInitial', 'percentTotal', 'percentPrevious'] }), textposition: extendFlat({}, pieAttrs.textposition, { From 8c339df8c17b60af28ad38831924b03ec1141acc Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 21 Aug 2019 15:07:55 -0400 Subject: [PATCH 27/37] funnel(area): fix description of variables for (hover|text)template --- src/traces/funnel/attributes.js | 4 ++-- src/traces/funnelarea/attributes.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/traces/funnel/attributes.js b/src/traces/funnel/attributes.js index f97c0b098fd..c03a9b25082 100644 --- a/src/traces/funnel/attributes.js +++ b/src/traces/funnel/attributes.js @@ -27,7 +27,7 @@ module.exports = { hovertext: barAttrs.hovertext, hovertemplate: hovertemplateAttrs({}, { - keys: constants.eventDataKeys + keys: constants.eventDataKeys.concat(['label', 'value', 'text']) }), hoverinfo: extendFlat({}, plotAttrs.hoverinfo, { @@ -48,7 +48,7 @@ module.exports = { ].join(' ') }, texttemplate: texttemplateAttrs({editType: 'plot'}, { - keys: constants.eventDataKeys + keys: constants.eventDataKeys.concat(['label', 'value', 'text']) }), text: barAttrs.text, diff --git a/src/traces/funnelarea/attributes.js b/src/traces/funnelarea/attributes.js index 8648123c4da..19237fa73a7 100644 --- a/src/traces/funnelarea/attributes.js +++ b/src/traces/funnelarea/attributes.js @@ -55,7 +55,7 @@ module.exports = { }), texttemplate: texttemplateAttrs({editType: 'plot'}, { - keys: ['label', 'color', 'value', 'text', 'percentInitial', 'percentTotal', 'percentPrevious'] + keys: ['label', 'color', 'value', 'text', 'percent'] }), hoverinfo: extendFlat({}, plotAttrs.hoverinfo, { @@ -63,7 +63,7 @@ module.exports = { }), hovertemplate: hovertemplateAttrs({}, { - keys: ['label', 'color', 'value', 'text', 'percentInitial', 'percentTotal', 'percentPrevious'] + keys: ['label', 'color', 'value', 'text', 'percent'] }), textposition: extendFlat({}, pieAttrs.textposition, { From c6370d9cc919d585d16fb476e2f26c0bc2c63dd3 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Mon, 19 Aug 2019 15:47:02 -0400 Subject: [PATCH 28/37] support formatting date in (hover|text)template --- src/components/fx/hovertemplate_attributes.js | 4 ++++ src/lib/index.js | 22 +++++++++++++------ src/plots/texttemplate_attributes.js | 4 ++++ test/jasmine/tests/lib_test.js | 7 +++++- 4 files changed, 29 insertions(+), 8 deletions(-) diff --git a/src/components/fx/hovertemplate_attributes.js b/src/components/fx/hovertemplate_attributes.js index 23e53961500..23068f233fe 100644 --- a/src/components/fx/hovertemplate_attributes.js +++ b/src/components/fx/hovertemplate_attributes.js @@ -9,6 +9,7 @@ 'use strict'; var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK; +var DATE_FORMAT_LINK = require('../../constants/docs').DATE_FORMAT_LINK; module.exports = function(opts, extra) { opts = opts || {}; @@ -41,6 +42,9 @@ module.exports = function(opts, extra) { 'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".', FORMAT_LINK, 'for details on the formatting syntax.', + 'Dates are formatted using d3-time-format\'s syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".', + DATE_FORMAT_LINK, + 'for details on the date formatting syntax.', 'The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data.', 'Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.', descPart, diff --git a/src/lib/index.js b/src/lib/index.js index 720995e4de9..913d45d6a50 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -964,7 +964,7 @@ lib.numSeparate = function(value, separators, separatethousands) { return x1 + x2; }; -lib.TEMPLATE_STRING_REGEX = /%{([^\s%{}:]*)(:[^}]*)?}/g; +lib.TEMPLATE_STRING_REGEX = /%{([^\s%{}:]*)([:|\|][^}]*)?}/g; var SIMPLE_PROPERTY_REGEX = /^\w*$/; /** @@ -1011,7 +1011,7 @@ lib.texttemplateString = function() { return templateFormatString.apply(texttemplateWarnings, arguments); }; -var TEMPLATE_STRING_FORMAT_SEPARATOR = /^:/; +var TEMPLATE_STRING_FORMAT_SEPARATOR = /^[:|\|]/; /** * Substitute values from an object into a string and optionally formats them using d3-format, * or fallback to associated labels. @@ -1067,12 +1067,20 @@ function templateFormatString(string, labels, d3locale) { if(format) { var fmt; - if(d3locale) { - fmt = d3locale.numberFormat; - } else { - fmt = d3.format; + if(format[0] === ':') { + if(d3locale) { + fmt = d3locale.numberFormat; + } else { + fmt = d3.format; + } + value = fmt(format.replace(TEMPLATE_STRING_FORMAT_SEPARATOR, ''))(value); + } + + if(format[0] === '|') { + fmt = d3.time.format.utc; + var ms = lib.dateTime2ms(value); + value = lib.formatDate(ms, format.replace(TEMPLATE_STRING_FORMAT_SEPARATOR, ''), false, fmt); } - value = fmt(format.replace(TEMPLATE_STRING_FORMAT_SEPARATOR, ''))(value); } else { if(labels.hasOwnProperty(key + 'Label')) value = labels[key + 'Label']; } diff --git a/src/plots/texttemplate_attributes.js b/src/plots/texttemplate_attributes.js index d0d8f004f42..878c182800f 100644 --- a/src/plots/texttemplate_attributes.js +++ b/src/plots/texttemplate_attributes.js @@ -9,6 +9,7 @@ 'use strict'; var FORMAT_LINK = require('../constants/docs').FORMAT_LINK; +var DATE_FORMAT_LINK = require('../constants/docs').DATE_FORMAT_LINK; module.exports = function(opts, extra) { opts = opts || {}; @@ -42,6 +43,9 @@ module.exports = function(opts, extra) { 'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".', FORMAT_LINK, 'for details on the formatting syntax.', + 'Dates are formatted using d3-time-format\'s syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".', + DATE_FORMAT_LINK, + 'for details on the date formatting syntax.', 'Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.', descPart ].join(' ') diff --git a/test/jasmine/tests/lib_test.js b/test/jasmine/tests/lib_test.js index 17addb9df1f..924420a90ce 100644 --- a/test/jasmine/tests/lib_test.js +++ b/test/jasmine/tests/lib_test.js @@ -2225,12 +2225,17 @@ describe('Test lib.js:', function() { expect(Lib.hovertemplateString('y: %{y}', {}, locale, {y: 0}, {y: 1})).toEqual('y: 0'); }); - it('formats value using d3 mini-language', function() { + it('formats numbers using d3-format mini-language when `:`', function() { expect(Lib.hovertemplateString('a: %{a:.0%}', {}, locale, {a: 0.123})).toEqual('a: 12%'); expect(Lib.hovertemplateString('a: %{a:0.2%}', {}, locale, {a: 0.123})).toEqual('a: 12.30%'); expect(Lib.hovertemplateString('b: %{b:2.2f}', {}, locale, {b: 43})).toEqual('b: 43.00'); }); + it('formats date using d3-time-format mini-language `|`', function() { + expect(Lib.hovertemplateString('a: %{a|%A}', {}, locale, {a: '2019-05-22'})).toEqual('a: Wednesday'); + expect(Lib.hovertemplateString('%{x|%b %-d, %Y}', {}, locale, {x: '2019-01-01'})).toEqual('Jan 1, 2019'); + }); + it('looks for default label if no format is provided', function() { expect(Lib.hovertemplateString('y: %{y}', {yLabel: '0.1'}, locale, {y: 0.123})).toEqual('y: 0.1'); }); From 836d5a240dc4d686b9141b463e190b9788e63564 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 20 Aug 2019 10:59:44 -0400 Subject: [PATCH 29/37] templateFormatString: use d3locale.timeFormat if available fot date fmt --- src/lib/index.js | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/lib/index.js b/src/lib/index.js index 913d45d6a50..49d8e46b6c1 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -1068,16 +1068,12 @@ function templateFormatString(string, labels, d3locale) { if(format) { var fmt; if(format[0] === ':') { - if(d3locale) { - fmt = d3locale.numberFormat; - } else { - fmt = d3.format; - } + fmt = d3locale ? d3locale.numberFormat : d3.format; value = fmt(format.replace(TEMPLATE_STRING_FORMAT_SEPARATOR, ''))(value); } if(format[0] === '|') { - fmt = d3.time.format.utc; + fmt = d3locale ? d3locale.timeFormat.utc : d3.time.format.utc; var ms = lib.dateTime2ms(value); value = lib.formatDate(ms, format.replace(TEMPLATE_STRING_FORMAT_SEPARATOR, ''), false, fmt); } From 3dda912ef61db9bfa2e37b86cb0a009188d60276 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Mon, 26 Aug 2019 17:54:06 -0400 Subject: [PATCH 30/37] texttemplate for scattermapbox: fix editType, improve style and mock --- src/traces/scattermapbox/attributes.js | 2 +- src/traces/scattermapbox/convert.js | 2 +- src/traces/scattermapbox/plot.js | 4 ++-- test/image/mocks/mapbox_texttemplate.json | 2 +- test/jasmine/tests/scattermapbox_test.js | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/traces/scattermapbox/attributes.js b/src/traces/scattermapbox/attributes.js index 5de1234e499..b934f1695b7 100644 --- a/src/traces/scattermapbox/attributes.js +++ b/src/traces/scattermapbox/attributes.js @@ -50,7 +50,7 @@ module.exports = overrideAll({ 'these elements will be seen in the hover labels.' ].join(' ') }), - texttemplate: texttemplateAttrs({editType: 'calc'}, { + texttemplate: texttemplateAttrs({editType: 'plot'}, { keys: ['lat', 'lon', 'text'] }), hovertext: extendFlat({}, scatterAttrs.hovertext, { diff --git a/src/traces/scattermapbox/convert.js b/src/traces/scattermapbox/convert.js index a5939e65396..9aa9c13b79c 100644 --- a/src/traces/scattermapbox/convert.js +++ b/src/traces/scattermapbox/convert.js @@ -20,7 +20,7 @@ var makeBubbleSizeFn = require('../scatter/make_bubble_size_func'); var subTypes = require('../scatter/subtypes'); var convertTextOpts = require('../../plots/mapbox/convert_text_opts'); -module.exports = function convert(calcTrace, gd) { +module.exports = function convert(gd, calcTrace) { var trace = calcTrace[0].trace; var isVisible = (trace.visible === true && trace._length !== 0); diff --git a/src/traces/scattermapbox/plot.js b/src/traces/scattermapbox/plot.js index cfeeb6dd39f..55c2e910dcb 100644 --- a/src/traces/scattermapbox/plot.js +++ b/src/traces/scattermapbox/plot.js @@ -67,7 +67,7 @@ proto.addLayer = function(k, opts, below) { proto.update = function update(calcTrace) { var subplot = this.subplot; var map = subplot.map; - var optsAll = convert(calcTrace, subplot.gd); + var optsAll = convert(subplot.gd, calcTrace); var below = subplot.belowLookup['trace-' + this.uid]; var i, k, opts; @@ -113,7 +113,7 @@ proto.dispose = function dispose() { module.exports = function createScatterMapbox(subplot, calcTrace) { var trace = calcTrace[0].trace; var scatterMapbox = new ScatterMapbox(subplot, trace.uid); - var optsAll = convert(calcTrace, subplot.gd); + var optsAll = convert(subplot.gd, calcTrace); var below = scatterMapbox.below = subplot.belowLookup['trace-' + trace.uid]; for(var i = 0; i < ORDER.length; i++) { diff --git a/test/image/mocks/mapbox_texttemplate.json b/test/image/mocks/mapbox_texttemplate.json index f1e25d646d6..68aa29cdcf9 100644 --- a/test/image/mocks/mapbox_texttemplate.json +++ b/test/image/mocks/mapbox_texttemplate.json @@ -17,7 +17,7 @@ "Toronto", "Vancouver" ], - "texttemplate": "%{text} (%{lonlat[0]}, %{lonlat[1]}): %{customdata:.2s}", + "texttemplate": "%{text} (%{lon}, %{lat}): %{customdata:.2s}", "textposition": "top center", "customdata": [1780000, 2930000, 675218] }], diff --git a/test/jasmine/tests/scattermapbox_test.js b/test/jasmine/tests/scattermapbox_test.js index 78f9e061550..51839f51af7 100644 --- a/test/jasmine/tests/scattermapbox_test.js +++ b/test/jasmine/tests/scattermapbox_test.js @@ -139,7 +139,7 @@ describe('scattermapbox convert', function() { Plots.doCalcdata(gd, fullTrace); var calcTrace = gd.calcdata[0]; - return convert(calcTrace, {_fullLayout: {_d3locale: false}}); + return convert({_fullLayout: {_d3locale: false}}, calcTrace); } function assertVisibility(opts, expectations) { @@ -500,7 +500,7 @@ describe('scattermapbox convert', function() { 'lon': [-73.57, -79.24, -123.06], 'lat': [45.5, 43.4, 49.13], 'text': ['Montreal', 'Toronto', 'Vancouver'], - 'texttemplate': '%{text} (%{lonlat[0]}, %{lonlat[1]}): %{customdata:.2s}', + 'texttemplate': '%{text} (%{lon}, %{lat}): %{customdata:.2s}', 'textposition': 'top center', 'customdata': [1780000, 2930000, 675218] }; From 354b70f7a4631cbbdcd5c1932f2e964cd670613c Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 27 Aug 2019 11:25:51 -0400 Subject: [PATCH 31/37] fix baseline "mapbox_texttemplate" --- test/image/baselines/mapbox_texttemplate.png | Bin 47053 -> 52200 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/test/image/baselines/mapbox_texttemplate.png b/test/image/baselines/mapbox_texttemplate.png index 490e08cac746cbf7bef89d4106ffa9b3fa5468c7..96878d67d19d64a1f79faa657c170f33b2cc15e3 100644 GIT binary patch literal 52200 zcmb4qRa;z56D<~kdvJGmcL{C*LU4DN!QBb&?(XhRAVCKh+#&b`cPE_5d%p7n&c)p9 zXLk4Q>aw+}D(Z`hEGiNq5)>2^s=VB1btow4+kZa8_We2@jGKrzphuf0_8sfMxi z`dgiD`1@nR``8-r|j|7Str=WzSlfC_C zd3nVCyE-R{`Bvx<|2?AZLA!>&h!{LJMoCY6-sGothxI|_sHA|ii)dKLQGanvH{B+O zi3a}l6Mi{udF&Z@5xRPxs_N;{vp(942Fw%pguf#$)}>Rq%w;f1TD4CIfcr zyTkqaw*5{rBl3`2inG=1?%}a}6!`bZW!wMZj>@fKz_&)^c_RQ(#8$uLqRW<|0P{;& z{!B>*`>H(HbJHDfslh10WH+lo81A_ie=KRYpwm{dXvOSbL}Y$+x1u z<;BIFbUnu(GjAI+MZLZHUx%gd$^Pz;UH;qbac#Lj;_c;uDo-UQZWwRiQ971Xq`N`D zwuQ?QIQaWV=+*Tk+umH6B0i68DtSgi;OpMozM$77xwXJbn;o7UKi{Ssw&-1zs>!eD zPn2YBtV?1R6F9Fw$X+FkbZln_-qr`=#9ms&h9OJ5ERIu!kCOT-VXV!(0%vaD?gQT+ z0w4cA3?vLZ*9;65OUFF_oh}JZqLPh%eusSBN4w?v4>!r=f1e882^<_8{Jj~r|Gk1N z{QYX+@5w;4V29H-Yb{l3in(CGtJgY#q{d%lwqEjhk=V~lC^3Va|=%qD(bnUTgzNK1!5t}oVTT|LbN8pghFdTz5gclkZJ4&1Mz$LHN$sEXXBg7%}{ zJO^G3dap)^OnXOS2|`r^u2YItsMPAYtfq~ht`CZ5DpU(_&HNx2_`SCkN5U+(8e-Hye%rWd5f5eyi%WpCo(P0+G9amByJ9XHnA98YXe#wO95GQA3f#hAO zF%B(6sQ-Lrq}k_|i}XtRdI-#-;w7W@g-vK~Zia4l0fm8`1^3Vat<6W@r|BSpXUBfpvJvUizT9feDy{D3+vx| zr}uC6V0ylF^Ste+Y0uAw*^gN>nRvN EF}nHPDUTbQmbqGr8k2zf-P=?5|?L@Iyz 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 literal 47053 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

*m4}2$59s*v_=1n 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�x`Tz# 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:.2f}, %{b:.2f}, %{c:.2f})", + "textposition": "bottom center" + } + ], + "layout": { + "showlegend": false, + "width": 1000, + "height": 500, + "margin": { + "t": 50, + "b": 50, + "l": 50, + "r": 50 + }, + "geo": { + "scope": "north america", + "domain": { + "row": 0, + "column": 2 + }, + "lonaxis": { + "range": [ + -130, + -55 + ] + }, + "lataxis": { + "range": [ + 40, + 70 + ] + }, + "center": { + "lat": 57 + } + }, + "mapbox": { + "domain": {"row": 1, "column": 0}, + "center": {"lon": -90, "lat": 45}, + "zoom": 0.7, + "style": "white-bg" + }, + "polar": { + "radialaxis": { + "showline": false, + "linewidth": 0, + "tickwidth": 2, + "gridcolor": "white", + "gridwidth": 0 + } + }, + "polar2": { + "domain": { + "row": 1, + "column": 2 + }, + "radialaxis": { + "showline": false, + "linewidth": 0, + "tickwidth": 2, + "gridcolor": "white", + "gridwidth": 0 + } + }, + "ternary": { + "sum": 10, + "domain": { + "row": 0, + "column": 3 + } + }, + "scene": { + "domain": {"row": 1, "column": 1} + }, + "scene1": { + "domain": {"row": 1, "column": 3} + }, + "grid": { + "rows": 2, + "columns": 4, + "pattern": "independent", + "xgap": 5, + "ygap": 5 + } + } +} From 05f472229f99e0f6bd82200f6192a7ec2fb17638 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 6 Aug 2019 14:48:40 -0400 Subject: [PATCH 14/37] check_texttemplate: put @gl tests in its own `it` block --- test/jasmine/assets/check_texttemplate.js | 52 +++++++++++++++-------- 1 file changed, 34 insertions(+), 18 deletions(-) diff --git a/test/jasmine/assets/check_texttemplate.js b/test/jasmine/assets/check_texttemplate.js index 186971645b2..b219c780824 100644 --- a/test/jasmine/assets/check_texttemplate.js +++ b/test/jasmine/assets/check_texttemplate.js @@ -31,14 +31,14 @@ module.exports = function checkTextTemplate(mock, selector, tests) { mock[0].customdata = customdata; tests.push(['%{customdata}', customdata]); - tests.forEach(function(test) { - it(isGL ? '@gl' : '' + 'should support texttemplate', function(done) { - var gd = createGraphDiv(); - var mockCopy = Lib.extendDeep(mock, {}); - mockCopy[0].texttemplate = test[0]; - Plotly.newPlot(gd, mockCopy) - .then(function() { - if(isGL) { + if(isGL) { + tests.forEach(function(test) { + it('@gl should support texttemplate', function(done) { + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep(mock, {}); + mockCopy[0].texttemplate = test[0]; + Plotly.newPlot(gd, mockCopy) + .then(function() { var glText; if(isPolar) { glText = gd._fullLayout.polar._subplot._scene.glText; @@ -54,20 +54,36 @@ module.exports = function checkTextTemplate(mock, selector, tests) { var text = glText[0].text.slice(from, to); expect(text).toEqual(test[1][i]); } - } else { + }) + .catch(failTest) + .finally(function() { + Plotly.purge(gd); + destroyGraphDiv(); + }) + .then(done); + }); + }); + } else { + tests.forEach(function(test) { + it('should support texttemplate', function(done) { + var gd = createGraphDiv(); + var mockCopy = Lib.extendDeep(mock, {}); + mockCopy[0].texttemplate = test[0]; + Plotly.newPlot(gd, mockCopy) + .then(function() { var pts = Plotly.d3.selectAll(selector); expect(pts.size()).toBe(test[1].length); pts.each(function() { expect(test[1]).toContain(Plotly.d3.select(this).text()); }); - } - }) - .catch(failTest) - .finally(function() { - Plotly.purge(gd); - destroyGraphDiv(); - }) - .then(done); + }) + .catch(failTest) + .finally(function() { + Plotly.purge(gd); + destroyGraphDiv(); + }) + .then(done); + }); }); - }); + } }; From 672928671f80e929f655ae4d1c6f3181d8ee73fe Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Tue, 6 Aug 2019 15:12:44 -0400 Subject: [PATCH 15/37] split gl2d and gl3d in separate mocks --- test/image/baselines/gl2d_texttemplate.png | Bin 0 -> 26138 bytes .../baselines/gl3d_scatter3d-texttemplate.png | Bin 0 -> 18409 bytes test/image/mocks/gl2d_texttemplate.json | 52 +++++ .../mocks/gl3d_scatter3d-texttemplate.json | 16 ++ test/image/mocks/texttemplate_2.json | 193 ------------------ 5 files changed, 68 insertions(+), 193 deletions(-) create mode 100644 test/image/baselines/gl2d_texttemplate.png create mode 100644 test/image/baselines/gl3d_scatter3d-texttemplate.png create mode 100644 test/image/mocks/gl2d_texttemplate.json create mode 100644 test/image/mocks/gl3d_scatter3d-texttemplate.json delete mode 100644 test/image/mocks/texttemplate_2.json diff --git a/test/image/baselines/gl2d_texttemplate.png b/test/image/baselines/gl2d_texttemplate.png new file mode 100644 index 0000000000000000000000000000000000000000..b63a6ef7e9eee3f2a634b7914d52a56091056332 GIT binary patch literal 26138 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 P3VxIoG_Dn2H4pqhVTgvH literal 0 HcmV?d00001 diff --git a/test/image/baselines/gl3d_scatter3d-texttemplate.png b/test/image/baselines/gl3d_scatter3d-texttemplate.png new file mode 100644 index 0000000000000000000000000000000000000000..2d0c5b5bb51ffe5428a7473407962bc84df53495 GIT binary patch literal 18409 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 N002ovPDHLkV1oO>KOF!7 literal 0 HcmV?d00001 diff --git a/test/image/mocks/gl2d_texttemplate.json b/test/image/mocks/gl2d_texttemplate.json new file mode 100644 index 00000000000..5db4d1fae61 --- /dev/null +++ b/test/image/mocks/gl2d_texttemplate.json @@ -0,0 +1,52 @@ +{ + "data": [{ + "type": "scattergl", + "mode": "markers+text", + "x": [0, 1, 2, 3], + "y": [0, 1, 4, 9], + + "text": ["a", "b", "c", "d"], + "texttemplate": "%{text}: (%{x}, %{y})", + "textposition": "top center", + "xaxis": "x2", + "yaxis": "y2" + }, { + "type": "scatterpolargl", + "mode": "markers+text", + "text": ["A", "B", "C", "D"], + "texttemplate": "%{text}: (%{r:0.2f},%{theta:0.2f})", + "textposition": "top center", + "r": [1, 0.5, 1, 1.5], + "theta": [0, 90, 180, 270], + "showgrid": false, + "subplot": "polar" + } + ], + "layout": { + "showlegend": false, + "width": 600, + "height": 300, + "margin": { + "t": 50, + "b": 50, + "l": 50, + "r": 50 + }, + "polar": { + "radialaxis": { + "showline": false, + "linewidth": 0, + "tickwidth": 2, + "gridcolor": "white", + "gridwidth": 0 + } + }, + "grid": { + "rows": 1, + "columns": 2, + "pattern": "independent", + "xgap": 5, + "ygap": 5 + } + } +} diff --git a/test/image/mocks/gl3d_scatter3d-texttemplate.json b/test/image/mocks/gl3d_scatter3d-texttemplate.json new file mode 100644 index 00000000000..5f6b0aa85d7 --- /dev/null +++ b/test/image/mocks/gl3d_scatter3d-texttemplate.json @@ -0,0 +1,16 @@ +{ + "data": [{ + "type": "scatter3d", + "x": [0, 1, 2], + "y": [0, 2, 1], + "z": [-5, -2, 4], + "text": ["A", "B", "C"], + "texttemplate": "%{text}: (%{x}, %{y}, %{z})", + "mode": "markers+text" + }], + "layout": { + "width": 400, + "height": 400, + "margin": {"t": 20, "l": 0, "r": 0, "b": 0} + } +} diff --git a/test/image/mocks/texttemplate_2.json b/test/image/mocks/texttemplate_2.json deleted file mode 100644 index cd948181abc..00000000000 --- a/test/image/mocks/texttemplate_2.json +++ /dev/null @@ -1,193 +0,0 @@ -{ - "data": [{ - "type": "scatter3d", - "x": [0, 1, 2], - "y": [0, 2, 1], - "z": [-5, -2, 4], - "texttemplate": "%{x}, %{y}, %{z}", - "mode": "markers+text" - }, { - "type": "scattergeo", - "mode": "markers+text", - "lon": [ - -73.57, - -79.24, - -123.06 - ], - "lat": [ - 45.5, - 43.4, - 49.13 - ], - "text": [ - "Montreal", - "Toronto", - "Vancouver" - ], - "texttemplate": "%{text} (%{lonlat[0]}, %{lonlat[1]}): %{customdata:.2s}", - "textposition": "top center", - "customdata": [1780000, 2930000, 675218], - "geo": "geo" - }, { - "type": "carpet", - "carpet": "carpet1", - "a": [0.1, 0.2, 0.3], - "b": [1, 2, 3], - "y": [ - [1, 2.2, 3], - [1.5, 2.7, 3.5], - [1.7, 2.9, 3.7] - ], - "cheaterslope": 1, - - "xaxis": "x2", - "yaxis": "y2" - }, - { - "type": "scattercarpet", - "carpet": "carpet1", - "name": "b = 1.5", - "mode": "markers+text", - "a": [0.1, 0.15, 0.25, 0.3], - "b": [1.5, 1.5, 1.5, 1.5], - - "text": ["a", "b", "c", "d"], - "texttemplate": "%{text}: (%{a}, %{b})", - "textposition": "top center", - "xaxis": "x2", - "yaxis": "y2" - }, { - "type": "scattergl", - "mode": "markers+text", - "x": [0, 1, 2, 3], - "y": [0, 1, 4, 9], - - "text": ["a", "b", "c", "d"], - "texttemplate": "%{text}: (%{x}, %{y})", - "textposition": "top center", - "xaxis": "x8", - "yaxis": "y8" - }, { - "type": "scatterpolar", - "mode": "markers+text", - "text": ["A", "B", "C", "D"], - "texttemplate": "%{text}: (%{r:0.2f},%{theta:0.2f})", - "textposition": "top center", - "r": [1, 0.5, 1, 1.5], - "theta": [0, 90, 180, 270], - "showgrid": false - }, { - "type": "scatterpolargl", - "mode": "markers+text", - "text": ["A", "B", "C", "D"], - "texttemplate": "%{text}: (%{r:0.2f},%{theta:0.2f})", - "textposition": "top center", - "r": [1, 0.5, 1, 1.5], - "theta": [0, 90, 180, 270], - "showgrid": false, - "subplot": "polar2" - }, { - "type": "scatterternary", - "a": [ - 3, - 2, - 5 - ], - "b": [ - 2, - 5, - 2 - ], - "c": [ - 5, - 2, - 2 - ], - "mode": "markers+text", - "text": ["A", "B", "C"], - "texttemplate": "%{text}
(%{a:.2f}, %{b:.2f}, %{c:.2f})", - "textposition": "bottom center" - } - ], - "layout": { - "showlegend": false, - "width": 1000, - "height": 500, - "margin": { - "t": 50, - "b": 50, - "l": 50, - "r": 50 - }, - "geo": { - "scope": "north america", - "domain": { - "row": 0, - "column": 2 - }, - "lonaxis": { - "range": [ - -130, - -55 - ] - }, - "lataxis": { - "range": [ - 40, - 70 - ] - }, - "center": { - "lat": 57 - } - }, - "mapbox": { - "domain": {"row": 1, "column": 0}, - "center": {"lon": -90, "lat": 45}, - "zoom": 0.7, - "style": "white-bg" - }, - "polar": { - "radialaxis": { - "showline": false, - "linewidth": 0, - "tickwidth": 2, - "gridcolor": "white", - "gridwidth": 0 - } - }, - "polar2": { - "domain": { - "row": 1, - "column": 2 - }, - "radialaxis": { - "showline": false, - "linewidth": 0, - "tickwidth": 2, - "gridcolor": "white", - "gridwidth": 0 - } - }, - "ternary": { - "sum": 10, - "domain": { - "row": 0, - "column": 3 - } - }, - "scene": { - "domain": {"row": 1, "column": 1} - }, - "scene1": { - "domain": {"row": 1, "column": 3} - }, - "grid": { - "rows": 2, - "columns": 4, - "pattern": "independent", - "xgap": 5, - "ygap": 5 - } - } -} From cbbcfcbe3635eb34a51ef2e8a8b35f0c885c7323 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 7 Aug 2019 12:05:33 -0400 Subject: [PATCH 16/37] texttemplate: use d3locale in GL traces, fix style --- src/lib/index.js | 2 +- src/traces/scatter/attributes.js | 2 +- src/traces/scatter3d/attributes.js | 2 +- src/traces/scatter3d/convert.js | 5 +++-- src/traces/scattergl/convert.js | 9 +++++---- 5 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/lib/index.js b/src/lib/index.js index 5c94bfb4062..720995e4de9 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -1067,7 +1067,7 @@ function templateFormatString(string, labels, d3locale) { if(format) { var fmt; - if(d3locale && d3locale.numberFormat) { + if(d3locale) { fmt = d3locale.numberFormat; } else { fmt = d3.format; diff --git a/src/traces/scatter/attributes.js b/src/traces/scatter/attributes.js index c93dfc85696..bf38e374826 100644 --- a/src/traces/scatter/attributes.js +++ b/src/traces/scatter/attributes.js @@ -168,7 +168,7 @@ module.exports = { ].join(' ') }, - texttemplate: texttemplateAttrs({arrayOk: true}, { + texttemplate: texttemplateAttrs({}, { }), hovertext: { diff --git a/src/traces/scatter3d/attributes.js b/src/traces/scatter3d/attributes.js index 9201f42f72a..6429da53fc8 100644 --- a/src/traces/scatter3d/attributes.js +++ b/src/traces/scatter3d/attributes.js @@ -86,7 +86,7 @@ var attrs = module.exports = overrideAll({ 'these elements will be seen in the hover labels.' ].join(' ') }), - texttemplate: texttemplateAttrs({arrayOk: true}, { + texttemplate: texttemplateAttrs({}, { }), hovertext: extendFlat({}, scatterAttrs.hovertext, { diff --git a/src/traces/scatter3d/convert.js b/src/traces/scatter3d/convert.js index f9a568e0bc4..475a4d74f20 100644 --- a/src/traces/scatter3d/convert.js +++ b/src/traces/scatter3d/convert.js @@ -243,13 +243,14 @@ function convertPlotlyOptions(scene, data) { // check texttemplate if(data.texttemplate) { + var d3locale = scene.fullLayout._d3locale; if(Array.isArray(data.texttemplate)) { text = new Array(data.texttemplate.length); for(i = 0; i < data.texttemplate.length; i++) { var pt = {}; pt.text = text[i]; appendArrayPointValue(pt, data, i); - text[i] = Lib.texttemplateString(data.texttemplate[i], pt, function() {}, pt); + text[i] = Lib.texttemplateString(data.texttemplate[i], pt, d3locale, pt); } } else { text = new Array(len); @@ -257,7 +258,7 @@ function convertPlotlyOptions(scene, data) { var pt1 = {}; pt1.text = text[i]; appendArrayPointValue(pt1, data, i); - text[i] = Lib.texttemplateString(data.texttemplate, pt1, function() {}, pt1); + text[i] = Lib.texttemplateString(data.texttemplate, pt1, d3locale, pt1); } } } diff --git a/src/traces/scattergl/convert.js b/src/traces/scattergl/convert.js index e4c93758a08..8c569aa7b63 100644 --- a/src/traces/scattergl/convert.js +++ b/src/traces/scattergl/convert.js @@ -49,7 +49,7 @@ function convertStyle(gd, trace) { if(trace.visible !== true) return opts; if(subTypes.hasText(trace)) { - opts.text = convertTextStyle(trace); + opts.text = convertTextStyle(trace, gd); opts.textSel = convertTextSelection(trace, trace.selected); opts.textUnsel = convertTextSelection(trace, trace.unselected); } @@ -102,7 +102,7 @@ function convertStyle(gd, trace) { return opts; } -function convertTextStyle(trace) { +function convertTextStyle(trace, gd) { var count = trace._length; var textfontIn = trace.textfont; var textpositionIn = trace.textposition; @@ -115,19 +115,20 @@ function convertTextStyle(trace) { var texttemplate = trace.texttemplate; if(texttemplate) { + var d3locale = gd._fullLayout._d3locale; optsOut.text = []; var pt; if(Array.isArray(texttemplate)) { for(i = 0; i < texttemplate.length; i++) { pt = {}; appendArrayPointValue(pt, trace, i); - optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, function() {}, pt)); + optsOut.text.push(Lib.texttemplateString(texttemplate[i], pt, d3locale, pt)); } } else { for(i = 0; i < count; i++) { pt = {}; appendArrayPointValue(pt, trace, i); - optsOut.text.push(Lib.texttemplateString(texttemplate, pt, function() {}, pt)); + optsOut.text.push(Lib.texttemplateString(texttemplate, pt, d3locale, pt)); } } } else { From 32498f89ae6fb014e8f7cb86152f558eebfe8af1 Mon Sep 17 00:00:00 2001 From: Antoine Roy-Gobeil Date: Wed, 7 Aug 2019 13:26:04 -0400 Subject: [PATCH 17/37] remove unused baseline `texttemplate_2` --- test/image/baselines/texttemplate_2.png | Bin 99575 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 test/image/baselines/texttemplate_2.png diff --git a/test/image/baselines/texttemplate_2.png b/test/image/baselines/texttemplate_2.png deleted file mode 100644 index 39b403c64e5d9bf80e2d74ec42681f8ceb81daa2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 99575 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