From c011555af4571222039fa2942a79af5953904ad6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikl=C3=B3s=20Tusz?= Date: Tue, 17 May 2016 15:59:28 -0400 Subject: [PATCH 1/3] Lib: Refactor `numSeparate` formatter out of axes.js into Lib --- src/lib/index.js | 44 ++++++++++++++++++++++++++++++++++ src/plots/cartesian/axes.js | 23 +----------------- test/jasmine/tests/lib_test.js | 31 ++++++++++++++++++++++++ 3 files changed, 76 insertions(+), 22 deletions(-) diff --git a/src/lib/index.js b/src/lib/index.js index eb4f17d844c..612dd2fa065 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -541,3 +541,47 @@ lib.objectFromPath = function(path, value) { return obj; }; + +/** + * Converts value to string separated by the provided separators. + * + * @example + * lib.numSeparate(2016, '.,'); + * // returns '2016' + * + * @example + * lib.numSeparate(1234.56, '|,') + * // returns '1,234|56' + * + * @param {string|number} value the value to be converted + * @param {string} separators string of decimal, then thousands separators + * + * @return {string} the value that has been separated + */ +lib.numSeparate = function(value, separators) { + + if(typeof separators !== 'string' || separators.length === 0) { + throw new Error('Separator string required for formatting!'); + } + + if(typeof value === 'number') { + value = String(value); + } + + var thousandsRe = /(\d+)(\d{3})/, + decimalSep = separators.charAt(0), + thouSep = separators.charAt(1); + + var x = value.split('.'), + x1 = x[0], + x2 = x.length > 1 ? decimalSep + x[1] : ''; + + // Years are ignored for thousands separators + if(thouSep && (x.length > 1 || x1.length>4)) { + while(thousandsRe.test(x1)) { + x1 = x1.replace(thousandsRe, '$1' + thouSep + '$2'); + } + } + + return x1 + x2; +}; diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 461bb077744..5c61c8b42ec 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1105,7 +1105,7 @@ function numFormat(v, ax, fmtoverride, hover) { if(dp) v = v.substr(0, dp + tickRound).replace(/\.?0+$/, ''); } // insert appropriate decimal point and thousands separator - v = numSeparate(v, ax._gd._fullLayout.separators); + v = Lib.numSeparate(v, ax._gd._fullLayout.separators); } // add exponent @@ -1141,27 +1141,6 @@ function numFormat(v, ax, fmtoverride, hover) { return v; } -// add arbitrary decimal point and thousands separator -var findThousands = /(\d+)(\d{3})/; -function numSeparate(nStr, separators) { - // separators - first char is decimal point, - // next char is thousands separator if there is one - - var dp = separators.charAt(0), - thou = separators.charAt(1), - x = nStr.split('.'), - x1 = x[0], - x2 = x.length > 1 ? dp + x[1] : ''; - // even if there is a thousands separator, don't use it on - // 4-digit integers (like years) - if(thou && (x.length > 1 || x1.length>4)) { - while(findThousands.test(x1)) { - x1 = x1.replace(findThousands, '$1' + thou + '$2'); - } - } - return x1 + x2; -} - axes.subplotMatch = /^x([0-9]*)y([0-9]*)$/; diff --git a/test/jasmine/tests/lib_test.js b/test/jasmine/tests/lib_test.js index d91328e1dc2..b87f45de5a3 100644 --- a/test/jasmine/tests/lib_test.js +++ b/test/jasmine/tests/lib_test.js @@ -930,4 +930,35 @@ describe('Test lib.js:', function() { }); }); + + describe('numSeparate', function() { + + it('should work on numbers and strings', function() { + expect(Lib.numSeparate(12345.67, '.,')).toBe('12,345.67'); + expect(Lib.numSeparate('12345.67', '.,')).toBe('12,345.67'); + }); + + it('should ignore years', function() { + expect(Lib.numSeparate(2016, '.,')).toBe('2016'); + }); + + it('should work for multiple thousands', function() { + expect(Lib.numSeparate(1000000000, '.,')).toBe('1,000,000,000'); + }); + + it('should work when there\'s only one separator', function() { + expect(Lib.numSeparate(12.34, '|')).toBe('12|34'); + expect(Lib.numSeparate(1234.56, '|')).toBe('1234|56'); + }); + + it('should throw an error when no separator is provided', function() { + expect(function() { + Lib.numSeparate(1234); + }).toThrowError('Separator string required for formatting!'); + + expect(function() { + Lib.numSeparate(1234, ''); + }).toThrowError('Separator string required for formatting!'); + }); + }); }); From 5f256435c4120cf2e209e8b926261a1a6176401f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikl=C3=B3s=20Tusz?= Date: Tue, 17 May 2016 16:00:00 -0400 Subject: [PATCH 2/3] Pie: Use numSeparate on hover and text labels for values --- src/traces/pie/calc.js | 5 +-- src/traces/pie/helpers.js | 18 ++++++---- src/traces/pie/plot.js | 6 ++-- test/jasmine/tests/hover_pie_test.js | 53 ++++++++++++++++++++++++++++ 4 files changed, 72 insertions(+), 10 deletions(-) diff --git a/src/traces/pie/calc.js b/src/traces/pie/calc.js index 032f89640d4..be1a2538405 100644 --- a/src/traces/pie/calc.js +++ b/src/traces/pie/calc.js @@ -107,14 +107,15 @@ module.exports = function calc(gd, trace) { hasText = trace.textinfo.indexOf('text') !== -1, hasValue = trace.textinfo.indexOf('value') !== -1, hasPercent = trace.textinfo.indexOf('percent') !== -1, + separators = fullLayout.separators, thisText; for(i = 0; i < cd.length; i++) { pt = cd[i]; thisText = hasLabel ? [pt.label] : []; if(hasText && trace.text[pt.i]) thisText.push(trace.text[pt.i]); - if(hasValue) thisText.push(helpers.formatPieValue(pt.v)); - if(hasPercent) thisText.push(helpers.formatPiePercent(pt.v / vTotal)); + if(hasValue) thisText.push(helpers.formatPieValue(pt.v, separators)); + if(hasPercent) thisText.push(helpers.formatPiePercent(pt.v / vTotal, separators)); pt.text = thisText.join('
'); } } diff --git a/src/traces/pie/helpers.js b/src/traces/pie/helpers.js index 653f6dfad8c..71323340346 100644 --- a/src/traces/pie/helpers.js +++ b/src/traces/pie/helpers.js @@ -8,14 +8,20 @@ 'use strict'; -exports.formatPiePercent = function formatPiePercent(v) { +var Lib = require('../../lib'); + +exports.formatPiePercent = function formatPiePercent(v, separators) { var vRounded = (v * 100).toPrecision(3); - if(vRounded.indexOf('.') !== -1) return vRounded.replace(/[.]?0+$/,'') + '%'; - return vRounded + '%'; + if(vRounded.lastIndexOf('.') !== -1) { + vRounded = vRounded.replace(/[.]?0+$/, ''); + } + return Lib.numSeparate(vRounded, separators) + '%'; }; -exports.formatPieValue = function formatPieValue(v) { +exports.formatPieValue = function formatPieValue(v, separators) { var vRounded = v.toPrecision(10); - if(vRounded.indexOf('.') !== -1) return vRounded.replace(/[.]?0+$/,''); - return vRounded; + if(vRounded.lastIndexOf('.') !== -1) { + vRounded = vRounded.replace(/[.]?0+$/, ''); + } + return Lib.numSeparate(vRounded, separators); }; diff --git a/src/traces/pie/plot.js b/src/traces/pie/plot.js index bea712eb9fb..44e48405376 100644 --- a/src/traces/pie/plot.js +++ b/src/traces/pie/plot.js @@ -103,13 +103,15 @@ module.exports = function plot(gd, cdpie) { var rInscribed = getInscribedRadiusFraction(pt, cd0), hoverCenterX = cx + pt.pxmid[0] * (1 - rInscribed), hoverCenterY = cy + pt.pxmid[1] * (1 - rInscribed), + separators = fullLayout.separators, thisText = []; + if(hoverinfo.indexOf('label') !== -1) thisText.push(pt.label); if(trace2.text && trace2.text[pt.i] && hoverinfo.indexOf('text') !== -1) { thisText.push(trace2.text[pt.i]); } - if(hoverinfo.indexOf('value') !== -1) thisText.push(helpers.formatPieValue(pt.v)); - if(hoverinfo.indexOf('percent') !== -1) thisText.push(helpers.formatPiePercent(pt.v / cd0.vTotal)); + if(hoverinfo.indexOf('value') !== -1) thisText.push(helpers.formatPieValue(pt.v, separators)); + if(hoverinfo.indexOf('percent') !== -1) thisText.push(helpers.formatPiePercent(pt.v / cd0.vTotal, separators)); Fx.loneHover({ x0: hoverCenterX - rInscribed * cd0.r, diff --git a/test/jasmine/tests/hover_pie_test.js b/test/jasmine/tests/hover_pie_test.js index 7d96d12daf1..e7472b33951 100644 --- a/test/jasmine/tests/hover_pie_test.js +++ b/test/jasmine/tests/hover_pie_test.js @@ -111,4 +111,57 @@ describe('pie hovering', function() { }, 100); }); }); + + describe('labels', function() { + + var gd, + mockCopy; + + beforeEach(function() { + gd = createGraphDiv(); + mockCopy = Lib.extendDeep({}, mock); + }); + + afterEach(destroyGraphDiv); + + it('should show the default selected values', function(done) { + + var expected = ['4', '5', '33.3%']; + + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + mouseEvent('mouseover', 230, 150); + + var labels = Plotly.d3.selectAll('.hovertext .nums .line'); + + expect(labels[0].length).toBe(3); + + labels.each(function(_, i) { + expect(Plotly.d3.select(this).text()).toBe(expected[i]); + }); + }).then(done); + }); + + it('should show the correct separators for values', function(done) { + + var expected = ['0', '12|345|678@91', '99@9%']; + + mockCopy.layout.separators = '@|'; + mockCopy.data[0].values[0] = 12345678.912; + mockCopy.data[0].values[1] = 10000; + + Plotly.plot(gd, mockCopy.data, mockCopy.layout).then(function() { + + mouseEvent('mouseover', 230, 150); + + var labels = Plotly.d3.selectAll('.hovertext .nums .line'); + + expect(labels[0].length).toBe(3); + + labels.each(function(_, i) { + expect(Plotly.d3.select(this).text()).toBe(expected[i]); + }); + }).then(done); + }); + }); }); From eeb10f712b505720ee979755a7ad6e32d9eecbd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikl=C3=B3s=20Tusz?= Date: Tue, 17 May 2016 17:10:22 -0400 Subject: [PATCH 3/3] Pie: Update image test for custom separators --- test/image/baselines/pie_fonts.png | Bin 33984 -> 37562 bytes test/image/mocks/pie_fonts.json | 19 ++++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/test/image/baselines/pie_fonts.png b/test/image/baselines/pie_fonts.png index 1a58140d2f7ce4e50c35a7991bdda307ede4db6c..ed8b084a10bbced321d5902f52b0c510a1ac7e07 100644 GIT binary patch literal 37562 zcmeFY^=*(!$U=fWQdSNP~i;f;31Y-5o8Yn0rC<@A>Q%rQ= zo4;zB<0vTfC<-!?TAz$|Q?U{UC&;^p!k(H_n9`U&4NI-Ch>Rt|>WwF3$RY?nFUXM{ zkzlVR38{|CWq?GNm|1j9n}e$;dCXtloJ(w|9N6fbwD2H4-Y;%!wcRW(8H!&B)E%UJ z-WO7td5ejL`Woe*&ubo#3IQ~!LPnY%1@zxf2IgznUs;q#1pj=(v0lTho{$Xqp73?uXdmLkGo+`OFW9fDp_59@3H>FqGxI< zVbOgfl_+Yy#Y7*^G9t(C|NI>vvd8bk2nN2`9F9nIbC$E%drM=Y8MvUDS20vApFv zq)4Y!ab#pft5Ad4Ud4ml$Z|e zJAX?OZ%bj8xgB`>XJ4_A-dqwYe_tK-<@ z-Z^`Ovc%nKjP?5U*$%I1*AuT81oD~_4Hfl!U7bKcK!EyGnPH)BxzY83^N?&;t>cOu z-;fXTD)1XVoyx~Wch(P!O+Q|}dbQaT#W-GJ+6`(_I_A$*|2J64w!Q~JDAR?U^Nz(v zvA|bK77JS=*@4&TEtkT<1O)G1xNeV&N=dQ8yTYDkcPI`d@v$>7NMYqOL*mtbeZ!q# zdd0(I1-PiaDrj55;r_ z$ZWBre2>!+dA3fdht< zAIn#r8d8ywYINH>hE}+MY?eEMJ#duV-1yJ-<`RrP{Y8uB&k2HGUamwcpa#zC$1+SZ z5Nb*wFS9En6bSv8U1>cwpLy)pZ^SY~O0+cdl+@!3vm(x`$)FoU>G@HN@*IxUE?XK! zZ|h%$Q@oT4mM08qH`yG{^x!Ajmn_k;nJSwIEdE~KQz}#8?|QIkI1yJLG)&^hO#UQ? zq^rNWoJ1ev--DIdn#5;AcD6gCi2yNRb`+hCLb$gi#<0Lb*TuT!X-H>6C}6DWN)H9X zsAoFqr3Q5z#gVaJG4P{LpCL6b=A9#rV8Lv?OLb-MoPme>i2azl6YE3$gP~2IDjK|| zb0Oq+x(ukm#M3S2h5eZ2Q%N~>v|QJIYL@sCk!2gy*~uQa+u;9`-(dP6GGgdentM!67)`{( zDM3XT$-vMl|KadYn@0s3nJ}SoLl!XB-i)KNl0LR+%I)P#y+3l{apkEBuKs}rK5rS|vtWn0AR8fDqUq073=@<~?^M>4Sc z`F`WUx7PL{uK(s%sL-QE0_bvjwdDxI8vXN#!v==ImF1Y+lm1bm`i2f1>z$az&c-#}!O$z&;AbF6%I?loxhfDYim-j?k;>7gYBqk%d!(+R zYAJs(o={{QRKBPPVw4KJ6YA=a{10T5g!%TO#$O64%(G)<(tE2BnZGs>QJ@AJhOuFZ z(Er8m5N52qE7B^IGU1B8?{L34{QHaJZ`FKA4As{LHB_6)67|0{t7K`<#kJnPO$qtR z9I@hLqqb}!cKPS4R<;~&!0nL4eU7pBRe(yWaIW2<*kS8qj=|Wn9^9r|)3MzCC<~_8 zuk*aIjy<13I6hzOYgbgcIFs!B01kv8G~gxsZh=M@dr1eSE|j{YeVvGuG`9<3+Ktz6 zkGz?fmqqQv?Qj32H}g5@?|(CquOT52dn-8=6QBH#btoiJK>e7|0_=bG90l}^z_<04 zKhgHT3C!1*5S1Pt<{MD-KhT0MNmtU|{jB7nOirj=w)@9QeAIHJ$hJs+}X=O(}Pq8vpA*FbGZY9l!z8v?;`}j9i^; zgp)xVHqzbKpJHQUkIKNT_*g;_G!*~*v+wI*01fW~aY4m02l%w0e_{liKME=tDw+3- zf72l^3yL3_U+xiS!1}-6mFUBA^Yh2*mb@X|5j5F(%E{3Pgaj@Xe;9{W!E2xUJAvHX z+>xDfM48T!n>ZBM#BwJS`_Y`>3M18jlgu0wYyxC6m?Bhd zF+|Ip<#Dzx3t)x#-PK0=10%4_GPJCoXJDpgb%crD0|$6Cl)L4P*Y#;8kaR~LGT>OA zayIhrW=B_<72ed;q~*h zB5ox__US%IAt4cwojL#3$^km;Fv|a?2SrG$HQHnxr>^DvPe*I-{seATV`F3H0-aKQ z*&3UvysmI6O(&;HB0~*qVxGdn!c!nQ6d&Sp>XtFl(b0v3hHC1-o!0sa&pEVXc;c?%J9W#z>HJ8~|(hSC^NwXx%q617pu1ND?|uc43@J(@3$rh})do!(aHPK;kb#>_jlQdW9G# zUixVlY6R$%8fMLG6Spz1Yrv~dm}U25ln2=^ZnUFz8k4` z-mu)CukVxZBLP7o@MUe+$f3ys_ADPievCHl#uvZzji41%H1;|p4IYZ8CJaHt0rlrC zdOacg@8&AWwHBep3w{qJWq`y<)EXTaN}hEME?Zglb5H;)L)6vPx6j}01FW4D!6+swdP*0H zrYbmIs2TXy&`|lDA>$q3?I#3p6om&9%q9=HZO9ANvvJqAs(XwoKl$7x+AF1Jhmam* z7irVg9DW)W!<@!{R7?sb(wB_bSnbNVd<#&9Hh_MMv6O4|rL0S&EO4gZUqtQ0Vj2a< zLN%L7Qezq~t%4Epu^Z_=X&?}26M1uxpJ42*=M`@NOBMIh56>-lxzOaUxuzHv5ur19 zE^IRsDS<4wCUs<1IX8J4bKFH`KP+*7n~l1jB^%n)+uQ5CDE=E2l{)OTn;S=9vK2t2 z$Xm#y$?u(pS7F@!#E_k4G8Q|2!2XUrOut_-7w+T3} zD_Kv&Gm*v1?YuolSwUHVBMv9qw-ox1`aXJmI@JF%C#V28PDP&I8eZT!F|i?ygxj)l zNS{e5i6cC(UMZ)E>Rp8>Boj$Mq@+lg;XstgCbxOz?Kqpj5OETSPp9LP@PY^^33PpY z4%;vkmi-iF;P0eqcjCpGgA#Et1wnrP{tHbOVYxb`UwD7mDfT@@<`z>gg|yU=Q;r?h zJ6{|Iw?dKSE?E2FTg0xCt?CaB9_@gg?sfjO_oeZ>&Y_`5@w-#a2DiPW26Z-ZjpMM6 zyzSYVVsV{#QBE>?A%G>%G?H$Q|uH~QIl#@SZ{LW@7Ly>ygV5~m$Jo2wE``kiSMq4w#r zao1EYG;*h`g0JXhV6J;0_aKvo!=WV-$!3t4mf`P@n9=3xiw6cg-5Pj})Jvp}Xa|?Ga6@jyJc$JL<*2yC0g-I5~G%QiUgi z?i792SMK+z_nBh`)ArgD3~9{~1-hGE;jW&&Ywp%#ELt_pU)VUT3z1i*-J+K>;Q{*a z5F3M85ik9Y`8haD?-)&L$?YK##LutByiN-ca)n%?*Xyx*L)ad|GK>p#bo6-z%)0dp zTMCzk&{mC8!YzpN`Mv-)Hl^g=+|syiXwapviKzg*@t4FsR*BWTQP8!xIPzoJJsZwX z=-I&>R>|@#P?5&hp|8MoK{}jpxBdCv^#e{`k5kJ#E-5|KqkR3!_rVQ+Sp~4wA98nV zH0tW~a}H}lgA&n+inRIPJX$bA1d`OC+Pvtxfr#`BO;)B!wba0vE3TEJ>;onk(!#en zNBEz(eHs1S0w@S~KYl-6vbR6lWmSU&m$jR`6KenRE&^E4q-^UFf;rG2aS(ABzJkNu zr4O%#%UWOhkd>qmfEmhwg;b#Js1>5>yq({h1EyVeftg()0n*`u@8S!XqXHJOM^#BF z=!)1#uc8|>z3u;_*Ag@~55t+{k|=cD{pvd9BM$voNqo!5A*U08uQMX=-yNyD=GzI; zy1UK&S&Ksq4GzYb8L|uq;zEcXEW$NL(1y9_;j@n>e; zm%lu-?eT7GC)N!7qdY6}u|(2_)>pbn$aFPll4{b>hIF@UVV0Z4U=JO~&BTLgLT~sr zvMZeKsu82mNK7d2_YTxpYfeR_Y<^HzH0>#P*W(yUtE)b5YBI?|IFZ%)j?@5R$G+Hf zC4eC(R=U1?aL`@H^trG_4cIGAkHNb`g%|Tmw_B9hnCu3`iG(a`)P%O2%uL%3Qk)7J-DQFcfB#l8 z3)e?@HxoVQZa&q>EG8f&m1UHV$gxOs|JHK3jH9xsAKY?}{OsiD$nG{FLn3y6d*Xt; zb)Ri=cYfrzc5t9d=X3kA6j~uw!|YRTj1UKyR%yu%D0vhgpZ0NeQq6@o5b&LovkNJ^!&81&gbm6 zHb=5~?H5Hob}PCCH;tY&U#%y*Oc{P8ZT#}81&FTd*4EaUAR9o7Q1omD@VSVK&@LML z&Gl%Us`!-*mMAxOxyg+*+P@sU!wlmAK?2oEG#M0uYMR#bP|~$&3gP1u*Qlmze&S!4;CM|Y7}4M_I0Yr$2q5+qF1vMO6600l z!*hq#^Q8NlI9ZFK#m@Wlzo)#kw-9}}qO4}kb`QwQut_jTb1Ee>o=dgDwdHM;DHgs@ z-~wZWMz$Q4b}Ephv}8V6Y=jg=Hn@@>=L^;22Ul(_cfPxw>E@^u#m4mY zV%+SZt=BIORIPKgghq{S;YQw9X8H{-h1SMhf|kSd+vA1A`B^^|01<)d=sucJnFO%$ z4a4^zPrH!`bWUY$Byl?V%E=DRt$l-ou>RYzCgW0#7!?I9Eq1FU0g2YSAB~%mL5J9Q z-eE+<_v(dCMOshQ*>YA_iAgA?!@b0A*!-A{4Yh>HnL^fkmTiH#*8g6KAToD~4oA+{qRUlJ)9Hn@x!ggaH;16bTU zFrXaFWa$1kfIQaBdUv{FyXS>Z)XHl@S%wtA;ecvTnPc<|^H2zdi09>t`*>*lN$kW( zq;dp#ARbL$ve5?|1l}eskQ`!BqhnMxU%%b~^=6EXN$WXGjC}OE{baU?znDkKm$xN> zgY!9=n5$0n3xIe5NxU=au!5PHE!%L)KJV$0QHLI5-BSj`|~g4-G#AAfrl&>*s(GpyZx0}-yz{^ z$l@ub;3_0o;j3>m5t|}xEv+0{9YN!48ahcC=PQ)|zDm0YhmLE1Wu?V_Yc#jQHVT`= zA%~UW_pfXbIt;tzxt?c=u;3uZ*On!xfc%Z=tC^J(7FuGGTb*65Rzdun~?f*-D5tUDFypjJYgv zwp%rH+@)35bC&wb4Et<*0wUD4!Oh@XYqy|J-}I}vyrrmJAc$f#4p6{3e2U5p8#$Ir z0U4D8M_1kKXt`7Iv{!xo8!pxOQRZN#k!Q{5=;)iSheQjbLj|fkJ-y!D!^PCnbvih{ zw((sKw;|=PWs6rhSt{FAkOaA^&FdK1X=Y?X6_NaM!D2>RT@$M|P;lmWI~^<3e&=4x zmbIvLID6l(YuFOrtS>Z%fgu4D6#3dT6_z#Du6{dfHOF%pUcW)8zag!5Xp?PUF|>OE zj#j!igot8?ICRT?t7PGlT2)8|qr@0^6J2ol5JvHTnB`qdXU01WKqHtCGYvz7*pc*c zNu}B+T)qP|F-Px&ws*stT;|C+@FV+Z*^x z>9wt2`tGa59iAR>|+*s7SK|_O*O0ux)7=ZO^&{#i9F@^X$LZ%+Qt0Q>3e;6`v;EDpp$E=Fo5&SB+3_V zL*G-K(EmchXa_et86J{AFkK83eoQx{;E~k)`C_!ebw}%!MeyNsGNvQvXw!x)#n-QW zD_w$DuD+n*gp}kHLzDSGEYFFrg_f`~0C=*$vP4g{wez;YMPb1%_R@f;ND?)@<78B5 z*kE;!%_^V#o?aLc(`@zegyzsUx;86~M-E0h8D;!Im8gwx7mqF)k?rftj77o%fAy-2 zv)kGJfLw2SzLGllJ}xvgp;GJW+IyheL)`rvEg3%~z}s?+CAL$mfk>-?VJSC1(785< z`$UwSye{CEDE0V_T`z)>VZG?*+ow;}ZTalG_5$Fc(jzyzg;(!<*!ZM)VN|HLa8(AF_02xczk~s@iEM!X=3?{bwDYwdbfAjU`0r^J?(#uRtn3{!kt9 zx^OlavHG8Kp>9vgxKZqq`Cs1|We5$t3?_4K?wa^0pCvu=TgH0-UZ!ej3|l#!JfpORyDtKeCDo2wX?3I5(<66j`6W>kvp$z4&Sp~=lgsNH=1Q*?>kO@_^s zz_?5<+d%()AN)nvNPt>fnMx0F6MR$G%6B zUt%8iC}!~>VppxQ(_Y54_K5|(qw#!$B;FwdxZ*WC7R-l@`L(DWH-OE%W+Gn$J^r~1 zz&!9W(sw`xgS=|&`jPW#-t~*X)=_0S)XC~aW%}yhwGEp+WtcD@c=1}tdqsfLi%*~I zAp%Zzjn6Jv%}I5H3)V@X1p4Rq9H!q`=zZ_nP}N3q!~ki!GEkd$f|@~va4#)+<)>Yy z36@`+f#m?*BH2+5xcYo^vJaRO{Vu)^GD82;Cjuy$5lZo%_r{#e=NW6Wza|QP%$f;; z`lgKnYVv^(W#v6#D>CCX%%@egWACB$f7b(fU8ZTjVR<|?q=)tt0_el2!I@|4C=!p&5Za&~u{ZJ>i;IN7 zK@hNNh@sOiekX%d0X6{?uV!9WiT@ULgnKNgJwl%b*M=AhdgEl&lZD`` zUf1dP<(htFd}Q+p@&Y}EpcScRT{2CFE&qvwHv-+eb_&)~x}%k4oVTj{#qRJ|fL3g^ zTU1okDWL1d=lw8A4`}5ei=xpXu$gG6kU>(Fcsor#hoff5_$BPjveCoHQQ;Dn4Pn55 z%hfrpfU2GaG9aXE?Py4|M_&D zxg7+A!_c2+#Px)q{LwD{x;qVhrIVmE?8kOlHi9k{Wo^%DWGn- zkWwt*O;qj`FOX$;@DeKGrSf!A#PhW>uN(54~yGw4oZjo2v^YaA{x#%osm zFgM@Z$@j1-$WO@WpW_Q!WFm1w5NBP9n`)}T4np&^Z$|rMjXE+HA>Q5w| z;CIEN#s8KCMLnmQXe)YZ>Jaf@(Y2`s^$QG4a6jTRg(N#Bc-lRJY**B0jx4FMdo-^v z9p2O6)vWO(dpvTsp_K?_%tPSsy)8GkV<9;{E|d#c>0}je#7~LWFukFhz$gj@SfdZB zGSsUhBVWIva~PdW&&-sYQfp~GZdVe9#ZzJOtTdv2iS|^N;^EN?Bf(iDil3R+0lnON z6u<9Oy{CWL5em1QPq+*@J4a`aPkOGtodr0+$^Dq?dzlCdFAXz%eRCfI1-|g*Vo45G^dIvFM1DK|C6V)wZ*x*P0*(l1! z#Jp})fZy33oV6lhpKWxegPy@{J!#f-)FSae{&-J@Kk-v8-5k!$$==7bM>Sf|j1B&A zv#7hzoX)ZT4fdLbfQ=A%FLS#&DgHYjc!(L>1U)@mF<|HzAJW7bY-3vV>Zcs)9e1j% zj#G7E!_NJX;JE7q`^(QEM{ zM~=cPrHg@c?OX3n-;$pg4*18;1#yGM)VGP>gQPUG62QA_5naIiKjQ-P{&XkvwwJ{^ z;#IXA+kom1X%(xZ^-Yzfz-AmUp>Abxmap&RL;O)5zukN1^FqRz>$89BXmsAwxmQ#6 z`StmyK~vh-FT!PYww0>}#uw4ZN}%SS=*Rs3yV)2b>3rO=(=%W{?5w4{2dm|Z(Y7j(qUC>_M{(TXI(@uKI>EB*%G9d zh5haNu3*d zmlf(mQ3tzdGJosES%B+jh87CjBv`y+_SM;cxS62JV+DLk_a{Rx)_Xj>Vsavo_-rgN_2a~Ki*7>wP9*HU*jC`? zD;nw~Amhm!)Y@hOwLnyUK5K4X-Y92zlN8X#%MK=HO1 z#bSAs%0j-`TWoJVS_zEmXD-l$ zCq@yN-H~+p2}T~l>%V_U8#Y>}S3Uvt%XzPtEZnBkt)#GQSdCBADJoA9qQx&zKaTY{ z8}ZEqJeoqW?|f$ln6$YcpUos#_|qZ%9iVDx)mUraLB2;tNj^q@k|7sP$=)A7i3Wn$ zWU*MQmgpWE6mi8}P-2V{Kcfz-Cg}tQ1*qJtQ|i$p>4zv38@o4E6?)ee2DJDz@okH+0b3SPcgT;BNK}WRVPK5;V-fev%_ReZp5`C3sBCE=DbM@6i$cwO zm82FW;3DTTud?Z+=iTi0r#{2e>9jcRL*I+gwgrn?uf3&oqnXOt=+&r!F*^w>5eFZ< zeO_d@3cGHTJScRYo}QL~?uTZCexQ%{7xh1Xwqo=ny-5@$7?*T? zIK3EkM%$adbz6O!mPe25Qb&u=Z{$q%ERJkTQ5$gtEbh=$^MBqAS&VqVB0!tNZk82v z`19I&IO7qQQ4{op982CmiE*M<(!dSI71Gg-8!D^j#~BF@LF3P~?b(FfARlJ}cVR0fuqF~I{-)^i!9 zB5*R<6(3x@vG0fXq&WRiXz>Fgm1K<#1#0?$>r(5&W=@gxpq+W06{CBNb%xj%Pk=jP znnz`#qM~eKVurF#2^3I3;o!FeqfdToeMJzPTU07SB*l$%Y1ddtu3l25yp{g?i+sKo zU!Dwl5?GfD)DB7w=$7-f59@#H7jV~hnZ6+Q`FuEnMx;O^SCNFATpkduvc2!FpOI%C zvF)v3eg65(r7;dV{D)qQx&_|D5dntVBJ;j`-D2vWf#DK@Wv%T<*n~uqwFA&Wx}prf zUw^TO8B~3&9&h(4{hBsIk}#cgHi!|Y1Sr6)u3~5)804yRd=Jja34ci0k^HFfaph6X zZ`+>ZomiY*jJEcCsS~8ugU#G(?=F+kEG0Z}WH%{vnojX<#q=1R97OH|UlD{{<$vqn%?x^}Clu_}wE=f6J1?TpG>8$mv`xj$F8-vS$}+_dU$lEc9?7 zW1fi5+*D1|0X5SdP2Jj+Brx;s8BGF7X>}j) zE;K*0g&pbX*N~Riapg4m)0BIPi@v0y!MNktWNjgVKqVJK-u*-x03P(7+)WUunB?&H z5gY$-v}T#Nt3c=EuFTUiQpLp}wDc0q&eZc}r*brT-?GwFzyLPJ&&I;>Z@z9#TTi?~ zjn`pP9*ta$Zf*XD zf12hTgX%4B__we-NyhIiw&eERScYOZPb#Xfl}uV2o} z!I@!|X<7n@pZng^l?=0dEw%sN8D^<}z`|SlQ8SrJ0Nqv`*xTRTv$Gz6(|_OuHsp>o z+TNe@9DPg#fj&L|bAS()zpGT_xrbWM`ZlxLDULl)1;5Y9ZRDdd`!>_W&tq0YJHBs- z^7m!$tVV~DAKzNqMxrNG2gvQl00zE!t1E2|97+Pk_|nHX@n%=#b2n`nmL4uMZ6-TH z`T?(=D#WfWtHd!zsCk~nQ`<9zZl~!%6w=PvM(fIH12xSl`9y0{mW%50cErU#V2}M5 z-fXRZQ{_-&1=QV0LUw9KB$KDzNt~hlO(8>;BfFW)kPd5Fh9A|ugb?^)hMxb{_WSq^- zu{~qXp7yBKe3oqe7Ws9#xP~cm8b^zN4LyL*yC>sssB8$7Vgd&$Z8jRimL+Lit3RPT zv|XZoWLp~2XI9FQ?3udleD|h|%D4utK4;;56sd}U-n5=g;pVzj{$h(+aMh%v$=i5V zm=92W{m{R`1meyO_F5P|s2_c@cd^VwH%th!X8%p&ee>rTiEaE^Ike$Uk+f`E($a06 zC@SCQ)ZL0woI%+h`x@-qu^#*-Bd--p=HJ}MRqAvG)ofe!4X%Z*IiJfr4fbUebJ1p3 zDyXlK%^zVTWa?Pptfo`WXX)DbGt#|ju5sE$`qR%83ueQ-3ig*7#VxdletiALvBXjP zMs{K+*Qb`cj&ri~&62q7vy(BO=iOh#H>NZjiZSl>|H?d54pe8kanQ4A!+mCB_;iOV zp?ME~Qhxec&i}6MdNK!2C<&Ws75;D$nSoUtIo;gi*&*wSZ`%jqOC%*gVhyN)BhM$wMk=mQd(R@ek=;meGt%hC>Q4v4u)VQGHQ9*9k^CiAN2VV>#R|IuzKU|l8sz@YaJ$E333fzkj zfxG2{&Okcka2@UUBicNdA5~80jjk+$UsTmN9hZu)ZrO=gdD(`Si-k`CJMdYbN^=11 z=4)Y(_1tsR_*zlrNqvOseIC!>BNm&bdE6VgtYX9oQ@C=IE~nx~MutXTw{f2EhQRQI zc_e(ZsFW@qq7UK|tdY{IkxIgw@Oj>%U0a;$9K)=UKX4>vu{op6=qa_*!SNJcBEt>gUN3>SF?)ddlO|3iy@KN=y%tlJU~fs6%3CMCV);> z;Gu`NFD@@=1&c~eNS$*$i@RY{mC@8D)4Z|=c{t4`hfoVZN{lp^JQ{BkMED{k>G=wn z-qFeoTP+AI&so9+@n-$ScJWF3SVjfD$_=0HrH`!%0+%Mmx5dJZX0O=M7A$2Z=F7*T zk)~Gb>2#wrn`FENGeg^mBScx&Z!me0@fOj-PUBadGz#NCT%Uf&YrSHSk@qRD4@f}w8 z@SpJnmtT#KWvBM@4i<{e{SAj!C`?HJnr3lTo*j z!)D|6X?dnkXWIhBY14>*(4wJ+J%a&gpaN6A^TINSbh0BXrxW)zn&V3!loimuH{#oT zNhZua{1-l`cnPLEWa7HqU>2ru$|sU+{Bn?Ad{j4&=ki3N=>Sc*6=c0KLrtf`ns0k; z*Q0iAxwPZLo5hH0+Ysd;FfBJ^fAd9O3qRxO!un|3&uiNsN!j9&DrIurKhsDEp@=jp z8IiBfUmguL+oSI_&uV&^_W>F~tV@kO6$tVlmBT-lB^nQv1K^oYbs8Jc{t&%nVYg;q9birhzv_IHk9 ze6|=lwWAwpx+^Db*z89S%S;E!!6ypSkvF7|p$pGfX5Yxh9v*bCKSYN$c`R#dThmVqJx!w9{k!Z`0Qs!Fzga%-C4p z(gS>ELa1^v+UVzIqb%-7<(%;+0<&KAhv}L4pR3Szwz+WPc?{r_c(hV<`##e4Ka$+1 z3`pFoSmIn2vSshZRquCBsC}mV?#f23m~Y&-LYPs>&I6;7TF`wVK)S5pRv-E=^u%uJ z*?1K!{;1(7k+O_w(-Qy7(Oqf{JIV~9gG$BaaoEb_ZlaL78j&YJoalAx-D1l&8rPt+ zk_e&J$gXqv?L0&TU({X*RNEpED+9yYySk82)t)!8T#he~)%18Ldj+e=zTFi&C@dG5 zL)9&~{FWiIQvrGP{A4Tpu4>a*{0sH)dqz5uvJ5?+LG8h_coLvs0ADz3 zkET6?D=H334F$l@iZBc+b_=!e7vz^)X@>+JF*hqG8IXpms79;mn)#8A97^)x*`L=r z^}f+yfP{!_sK*NHZ@ilCpX8*gHOcgSt$;OsjT}bwnp4i%J-zcZ7yKYB5W8Pgmz-vY z@b_Mu^OC?2m!h$`%SJYDC~{w~uR;}-`g_%9^Zy=b)s326Z%^~cX2lrzN7mfN)2wB) zu{VRtXS?F{CC@cY z9yw(&QnaEP6S<+CG_R0yNHrGC7{kur$$LZo|JWeMp%sLXk_d~w z`ftY!*++h(1n~U3HZ?qHgWFbd%>`^%JArCko3g;Wwj|yB%?bb{{xr;dz} zoQgQ&VzA)&MYvo()f{+2JUNW7;6%nRTAxyOjN3)xR+7Nbrn*vGr$NSF@w0Q%QXZ%} zdYJcE+&j`X3Qk8{Vj}s8?;$IuySIOutidnGxkG%jck#WAke*fWA5IQ*gGZ(DwC;m; z#@K*#R$om3t*y7?HJOnVCL#Hdon1E%U;Cu$L@76ZkPS9pE_wcCN256Z_({=VfO4#Q z9`zE5=W8z`E*I`xoq}F>0;*yQC+hhsA(sv}*JL&7qn(N>?_TR@5JGW zM0quGR69s3;d$T@kM9H<2aY`43xMT z0RL-^;i`DaMk5YQ<}6O;NnDh}nbVzjgeJA=6#xD-Fw#Y4u%$OT%gp#Zqs&oJCNt1Y zUPEOm`LsgqZoH__2A&M7KMPt?sWCFE1`O@J2-MBBjX*c0w$Tl4^0eN~Ovu4X?7n=f zoksIaHAI%PSV>RO^@3wKiJDZW!COCfFY40Z$MdzgiK6vf8pTg>W`5d3K743(sjq+7 z?nQqmY5`AYd3iYOmXV={;~`Qh{juT{U$+vLK$%-jG$R4kzi^G?1r(4zjU;a4J#3Dc zxHB?&B>rc6*U~Ju#Ae%0Iyn(qwwxc;f0B8+-cn%bk@9x(h;M(#_NfN z*v=NcmnojJ-@h!W;AZ*@Gd}}VOs4UY9e`0LYiPS7fQk-kqNB4!X#Zr*2vqTELI~m4 z_nt}fP1WC6qcW!`&R9k`f5pl5N?+kZsy&WQi<^{Q)@sk8T{$yWlx}%UHQ$hB zDM6x#5D=<3D?aZue&boxE;zll=R~6uBAhG5$Mks|SsrTJqW#l&Oc^XOY#Vg0hHbcuBnBU8Iw*u% z$e)pN^fmY^y>Tus0_z0`{RoZJ$~Fy+4N#DYmN6k$XOZpDzVqd~O`$Th7Ru{Md^;f| zu^gU6gFNYO;9Gn}9W?$UMr&u5(~bq`BV}4OCzI*oE`5Dnh$VOov>HE=Spz+pfL5D% zu7@9Cb4{d_ZqReG3y_O5kVq78dNUUC(~3YPq~dP%|*Mm2zr z%|ymlN_ApT$p?%l)1OM(s78+ZfGaAEcF!M`t}qQ5JbwaKGj12HE_6&;))Xt$>3lIu zdrH4o?}>kO7F`<^GI5ZwKTw?|O_x18&)-v>??E^b#YxTQmOZaQwY3s&7}mKl z!m>!ayT=xbKgLvPl6jrC@>Fl_5|ByW#kL9)Ek>2GE;QVUAS1XfCxY|!f+j{a-OI*6 zaeaABHVn#Zrvml;C}g?|JNubG8aFh|<8da+D5O#aB{EN6Zlvj2ozw>k(Y@2996N`^ z@mrkrra;}pi{564hu4mh2j)|}S^8-WK*@^PK+Q9FiMwkU^_&O-bvVSUO-|fw`iCgx zKX(DVCe{kdHBPNm6rA;GZWN+S5$zgdf);t2*(;%JKL?aY!aisyx z4m|FtBO1|3A6pDMh`%&eaB(w?QZmK8!c<4qDY>8t_!4E{|I~~#o`O>8o>?vs1ESCx ze;%l4S5a;9=Z%Ni2CK_oIbyz(A0L}#qij3%y=@sLjxlo&lj}6JCr&Z*yY)*mRqlnxrFcHKC@iIUXkg_DxOwHMPVct6V`68htQycAD zQddsZh{FzJMLSeQskPl#Wz^mr5IXE<7nV6jE7>^gKhL0K;zBH*!M}}eZio6~E~A?&5R?qL!T>K;9TOQ13vzs6J$hSkva= zpEoP0))=Y;wl}E19xpZi9cJXuKnq-?AXV70!T|MqOiIN>q55|^ql`Z0|5!X6mpb7! zqh}bgZ&$g-K3L3Ukg;9t1Ian#APk(?L$oW#Fs6^L>16A@Sil~kHz_?22v;mncoXnu z=|p&}CE*O}pTlkd5l1ilzZCNau>Wu}KgZln!| zI8W`$6ZClbG8@towk&1xr6Sjg>W%Y*X(aML-g}GSN7e18Dd6C>ym2gyi{qY>Ru&lk zX{@8E_)Wz1WG3IU3aExu&o~XUitI*6Vl$U#=xX9H&n)5%f~^8(Xm#Y@@HDaUQ-@Jb61k5y)nD8}LNvot8wVc?OlDBmWDYtIF~QD_qCB}L ztkr*pA=U7Ms_n}c&vRdS4Swhw$)skE&jaoS;fn2ekpaFim8Zp6)m1!Ww<}|mCL1o8 zm;Yw@J(Hvx@5abwD7WrKjgh!!?7iSLreQqNald{=cJ_ zS(0d`Os5gRO+-%J+TEOb@Y~!k=?CvFwJjBhKUhh&QeFhkpEQhFa4TA+ zCli&I)TQ(zRC6!&f;DefsJz#cL+VNvju&E8(udbizV=S&dBPWUI@qVwItlPW*0xevAz+R?)lkXNUX-a6uE;zbuUGv^X_9 z!&Oyuu`;=~Pt#HrTm==cUBx~6KfH@p!*)tmJ-%Ex+;^Dkomjs0`x_p**vf<#FIc&O zFxyNc$Vyq~JXU{pB*=tmMSb(ObCRGf=0ZSgWsB?{HAN@X!k;pp5k`6=O*mHGSqCDA zYc~4pd>4djbXah(H-8CHV3v(IGGDr*Z2sw-84{k$3CJxYhG%Y7(w>ViuVrnrJ_4K!G=1eXL41RW#cXxO@=bn4tk9eB4hf2;U=rD`@$9q$*ydP``ok&VpeOn^S~1s$#cN$Wj1 zRpr6>nD&zIuG=hAA~*JkSKQRmHX2?E<#{rt4qr#{)Vq0}iTEmI!iiBw6zT8ZxJ%ea z3uE+9R953Ka4C06k8dPH|7_oN1(t2@4RcW_3BjaMAs)UBqy+Y2gwVL|+F}T^|2Ug2 z&+rs?)7{F?!$IKDYWb z8iC&WCbKxBAzRaMez`()Zeh2!4f2(s;oPCM2KesSq3$tOph+l|eY7tdx2>{O9jmuXpFN-4-8E%MacI&W?oDd{ z!raN-Mo%Y|2I@_xro|YcC~^dX|LTThpCkUrnURQhSsGoir{h~_W%^OyAPH31MP4v6Cq?!$miL#2Ca1pED1tY7{$GSiL$x-}5W2vQrj ziNu1;SJvDoGTM_+NcvqNs8?gEa^|~D=E&|;ZOUqjX{K1&H)TKOC@(>)^(RRO_T$^* z<)YO`WCqeeKDnxPqmTI*ea*3)-CwEK2pH8W+_l2_@29@|Q3JQ>wFX%O-bq5jxJ~+h zZWETsSQ#dr97L4lQmFl19KZ6bt_@F>ABT)rF_C?lFlsdgYBKu8R_w{&wHlvhq~2|F z+;YL!ns4A_fJ|fs9guA`Oh6w7rUhfOA(^MV2nqYN4BG2dp@bu;l@k=SI93obqMZz*(Uo9N}}{wH+W_U&na zXfp@n>t00*_(Z@m37COw0L+cg5*-%u+TZvqY+Y?ny-4}s@Gc=AzkcCGW1tmX5{{^0&?4ugQzsDzO=H(G(JaoM zE&FyZY0lXqB&7J> zC2Ek52dju{<&~9gr)KgA>sbNh`J3c<(Yj5W{1`3@B-D@R8W~+~=;IPld4Z~)W`zeo zNRu?g9>96@Q;2hF#||B5P&xGRj_)L2ld<{ZO9nI(c#ImWE(rMz(iYGTg!Q)~{gAis?)tCczXV0kQZmn(0633Nt9NmUmMbQ$7f5e`_FVJ(wHAX;dJvq4StBPRp; z0Dmu%TSWn8Ut62?BAO6>u%*Sim@Dj<5#y8({-fCU4g5yECy|rir?n0(`F)XZfg)PC zhXAU~tc?vDupQxhoDtWUS z#6V%d2*enAaYVg6sem-CEyyDKZr8_h>6qN`yzrDdBPX=D&4)wn(isAkmc}0O_dEMn z5i{~eVHOOuC@$!WLeu=MelI*x?Y(+2AJ{z&meqMIZsI5@CYfHVu|Z*-goB&F0hEwd zo7s{FQ17cbqBXnq<)cZoRUzEk8Dqm&Sr1&Luj988UkYM6}yYR6p{{J!mpO_!mZ$x#6 zNppuA3+J@_KffmiQx(E z=tt07_eG!3yQ~=0+eDxXHEs|}-@r|rL?c4Lt zNXfnsQ!h#Oub~*_E`Lk+{b7mLgUTJwPt`W=Vns@Ce|`Sn?ph%-cuuMcF>djP^4}ib z1W9J7rQ!w&E@XFEBg3-!e)!f!TemPA`~G3s++T7rimh!jKp~767UqA6$Nca$E0l9a z6c6v@RLdNwq}$(1bMVUN)&ycTT`rgv&s}kx7dp}g9r|dJ>bkq8%C8|W=jVk|skUCJ zsOI0-rN5K6@E3LrD$$gfL%CH6UQ*GY z4;I;y@|LGEROr~YUf*Frx@0rI9V{T8U$(ZxF1Tjz@v1C&?=J6?`_3T4+!)?sHflr{ ziwK1lgS3;$;Y9V9^y?GN6X>dK>ZZktP+TAR|LZ)KmV$jHC}Gog&HGK|qWHd^!O473 zMYVJ)j#0~FEWvt2dCQ~=B76D!-3v#&!v_4+@mU>?%=*H|L;`vZS9!IZ5}mDJr>EP` z#mhF|@A>VVH7wY_Q8gx(XFpbIfsYjAjR$~^xSuBhpmz=yl`GDT-M=##g?E3vi%H-2;U8cxroa1pw|4`b}h(807yg9~gy}Zagx=a}^3;sh5>8RE( z2}D;K)?2<{5LM7{iB&tA;Nt)1tjYrm->~V18u$@CHtXM^ch%O=uJ>pYkxI5=A6jAp$Hif8w5i-YUAoiET z_Z&-mkO7p9fl3=(<0C@ z@^lf?|3CfY$)SE~=!})J`DgYzKInFOc_WZK2QLB z`(6nl#NiUsdgMl3Af2>_Tl>xxuCaRue+!fLdp{M?Hr_^~FE`(D#a^NB1_tJDO~(;;l6u{rNlU zU{Y1CH&>E@jM0xtT(s?#w3_VkDp?UhvWSVHSPCm()%-cdt$J#8stmueHU2wyxwaHn zRRQR{At(V-JN`8Q4WFUt@otOBXbL-flCQClvodGCr-K((MChS|Ph$d;Lr%jFhS(UIdFOmVzm7gb}cDUr&&uY8a06WXUVZDInyRx<1 zKNMTqKojS+7zH0&oKMy#|9kJNgpP^(yR{JWKfUPyv0q~BW!leJ5$)c{?2xvXHkjgz z&xM?eerUD?!fVAYWU@~d4Ak!yF6?fn2MPR)q28&Q-7j00R5Q#ff2964^Jd^nm{MPe)S)6v^bWX{ zP_g^@Mst-^Su(JHM!qU&&%ExFHT4aV_1^p%63<2$=GsQ9`{A#)R0fX2qyqEzM#t`< z4d_d3aap!q6H)~Xav=;mE|tH+{*=H-hP@`ldDcBI#tdm<1a2-I7~PE@J`!XO7AbG| z7qi&c5w6t4o7p>%_e36mXm4_QnGDIr8q_QWBu);DcTNO;Bg5BI8_?S;#roLNR&c%{ zl@6FGXBo3d`o>7TkAms%mw{7}469PfOeO%@-4n3?4E*_}FBz>$kXfoAD7SpH0D=zJ z0?d(o+HNgc^)xS2(7p9UrcI@0&Z+&ylwq%%j4A{1EFRImM8-AkMzz~sdy-n;M3yyn z3$ZjZ_dtsp%f5Cz<1-fKwaKHanf_{@Cy@gU>uK3)A73LGH4YnvZ6^T=zkA;&j=OSA zQAzMq{CrhH*~SIWbDA>zbXoq>Nt?`&dr1bsot4Hv96)}~qMyJ})aaDOArsYD!P$jD zmUo0pt6aU-RdfI?A1_J(-F1$=ZKF8qE_+v7$m9q#!(ufE{3GG`0O&XuIf{DN{qeHr zUYi0qo5*@W*~x$+W7DXMk47%1)waE~J3KzLD*WSlh-A3K)s|eFw1nQN%f`e zA)KFbk=yE>K#NUA>WsqE{TKzAktQZ4^(S%2+vht|hLRzPrw3@`ZnV_aiL%Ca#J^VN zcYwHE+}ZyYBnsybQ-uS1^yDn${vto=OShPV6MOA@E_p#wY&^<_wu31dO+P1bvAL%# zU-|ZGB-;9si6(ypa|-QPH0VlF&=1I{lZYhLXQcX-tb%ObZ?89yc+5nbwy%}*XN!*P zeoW3yRXwr126#P zw~eAQ0dvYIwCVzHITOKBoLeQR=O(OKoUW_0I}gzKxL#WkRT(0blCy`B5umF#I!Np2 z+}spcFlmiSgULvqPTEOO<}z@oD9u0-)rRd)>So?N-~X~4O3#-c7pi;;e<$7S9+z5~ zP|WR5eKk}00}nmX^6nfUBn+yZi$yZDL031iDE|6u-Z13Ou>IM>KS3;s!ay7FldLRT zKWPC@0~IPBZNoBOYQh~_n9%MP0mwV`)9W_l z`~hb%y7kl17I!4Cig1ey%tx2RyX@e>z@*{+05(!+Twm9N{ygk49u~c5T=rgsD z`pg-*$rzuk&Ncj80-q>try{j6aTwOFHY|p^L}5rZ;83B`A49kH{vW+cNgP1S>|BN} zfdoG-0i!`m6q-bOVOKSf`dbR%R(fG7YOj~({gZ7h$aq$0lZ{x}tcONO6B{TSVQk>t=YCr2~R(#ZI6-&3}v=B5tJ6oL+ z{0%ibh~1Ywr+oc#jyQFAA3mVq=6=BK0G*F~d15$6TsI~Bul!blesX{z{~~qVB9o4w zSR#0=S30N6k?x&#&G2ZdURMAh59K=y+by~lU<>Sd5WRU!RM|gNze74$uKxwAlClx& zXM&WE5bo2lFz>non2d1veM8hso0hWG@qmV)|3kJPj0;h4ZMg*OO#a6oMC1y-_OV8$8XC{< zqp77xCw?iA$F8Q~e5=lhiP;w>6uM06BQL-!qa|QO6=IM|5a6bFAgXuli>GIJwHJj> zSop*?GMdHGUNX;kuqTCoFsXF+)cxJr@WLcEo*m~8n*e>-aXOF6ldi^Q^Xk!pnqK$q zVA38~{`7EtTivY6L?il>zN%opSU?}Zoc89UK{e2xG~6w$^Hm$*%2lV72zPK$Xc}I_ zP`>+9QRLu|gyVdOF5S=~LwXfP7sm}T=4KRG(j!;dY=6nUmEqI$E8UhWZzIbX?$;%m z?yr?e;sv-FK;uvUdqGv>sw;clq-pjlmv+-nv@lU(=kOclxGsajTb3_i5y%eWCb13 zAk*j;Ab$AA66B8h<$T+){W0g{@{ehjlCz*-6O8AUcO+Q}_B}z{K*|SZ#Ms-NqgE$^ zw14_|f#-7i3kSlQ&e(*YUBkd-kvBh0x};_?>i5Wl?Kl)odgcAw&LYzjeE($-t9to= zYXM$P3RMce1g37{$fBSsHNrJlB{2CG6HC1!9d^e-KLC=)EhpF>j#hxRQLlS;SWNCT zBw4hqF&xy8^j>5J5z_=C0Qkq?VYA-}`Gq!zp&serc06CT-PN{uqLjEtzfnZ6ddvLp zPpWurgDv?;FZUVdt?uKg-%&Uan*K6oMtp~X0`SS+etEi@w@lZ9T18_LJU{?4IE}Ex3@iWQ`IbiMS4@-#$CzNn zuwTB!0;ygem%n%cmY(c~>z^QUvszJ(>4(0sSe+*L2N$Uf0PpSjfF&3iG#w3}7VmnAH``6# zhV}f-b+Jw;)Os#i%8%$tF?#inGY)7wvKD702N1^pd?IiGT7_F21K<>g{{|(mC4ivh zvO3-c06YI@R0TJH<|0_&UjOfqe-|PF_;=^78Sm`C!lr~=PxC-nY1J=Na<1`;@`doP zeK|p8m&FmkC5wH-$5hX!Hkk-7+V7l#(pSeXIz9Wbl=ihb3cf@1MH#9N<}=|uT!9}Y zk~WFsQ7-;pf3Z#hW{9NTxh2RgbwShQvdLy4NOhM8TW9B>bZa?IE>Y+Db~8xA&;El5 zb1B`l7D2-`x4S}gazEvQM3tTPx7;x$YTk(VjLg=@Nz{^4gp;2ICr`!Y$!vm(8JQ68$X77*Z9(kNa05ZOSdi6b9D7GM=L{YW@N(&=xuIe(ee8J_Yw> z^2onMek#=GyIXE%>#O6b|0zCMFnK>G!$AJ4OpH`J#{vFziCLVafmAVBj+HZBa!M+U zr-z?=SYDjrWNCSR89fpiQRo*Q;zzWHu=2K?Xp$aX2V`mf5-N1U;!6&kuHwGKIfi$1 z#->nJt|7@t#m>Fu7(wPy=q4#1E47F$d=O1wu=4Kn)8wf?@}HLl+oB0{miVuEZg>D} zR0Tvv!-nwA?uB8$*q-pistc=Le7{h9gv0sr1qDmm?-!o1FkZeU7Kl^Gsw5ok(L{9RsV})>HfApTDhlQaAZZf%Ux3XQdj&vc= zu`)I@!DP!oOWWKhI;SdhU!AY%et_b2b1h)T4+(n>m_%|ah)>X2YFJg@s;*@b86m- z^_}zk^rHE1^}ofZEU^tS<1H7(b2b#F5fnx67s9%|?j_!{?E}N6Q zTUsxv{!+Hr>5Eg|nrIS5Bu-l16y8+f7E1%tx^VB2j&5tbk5ecX_@3@On*r+MTCK*g zUcw@`Is(6Ga{Dz{(xUyfFK9ynKzTG|nZaZIWPnL2vPlR#M#cg9)H3 zN^*(Fm1(L|WEV+>^G`)p#fL1oLqBcYtn7Ia$lzN~0j8IoDT+CnyYf-8g$Z2iXxg+^ zkQG@9OEk^0{#fqo`*4&1FEb2!6BYeC^ww>@Yav2FBIdWaSKF!(fr%DZH*)DxKu3xw ztQH=`a;Gt{RPU!u@Z=lbeu}hQM%*1zc+E;z?p=hPfWM=GlZ1no5j>I;-xEWu?NRll zQA^4K+D;EAo7{@7?Ty)D>S}q4h@4`i?-^}iDmSPFuiWY?4eOOv)=tl2u$OJ6Y9pnj zx${v>VVPHbHA!;`y(paa{tE-IBlmwYo@GE%pMndYC0cHN8+ANGwh;Q;ZMap!*wS{5 zDrWSU$FYzUJx}juQB(#XQy*+(&wstP_B#1G0GYUxPB37w;qi>^&b=dBbTUn&Z1V_a z5*F55+pKBl+v#y6?}BPCxq&K68j=&E$Za>Bg2coWXVPrOF}c?Re83%{jMS@I z{>Jpi1#TcG$CvF7VXTAFbL@2uwt1`nQvESSm*t?Mz8qg3p zfXr)RqgRHpZr!V-_716oK}Jtz5TbfdS17E>*N!qU(Rf*0G85~^6r)t=Oxp*r*$L&F zQ7z!rnLe*GwbeGoWy(-~=KR$&B<+usZCvR%mcfQX0p{+CaYNezbaXtG^N)_nD=~DQ z9jgOOIL|^Ml#*hRgC1-FC4G>=vSgnYu8>M`y%H)EQnTf-+IT8PoP;(8iA{pr)v{RNw`w< zah3rJ6FZh2DO`65uWt0MA}ytc?koQ-2G^{0LlqyY`(q#QK(J#OyJZt9V+YlWdO{nb0lEM#UFBcjCJeIZ!mQ;b!X2Xf4XZ_BH$eK|x3A7R@Ji;1 zgJ9#!;%Lapt!cX(*kTSSP`OlHL;|ryIU2lRcZ+``hcQAKRn9ETfr4|H`a*J5d12O| zHha#X%|j*IMX?AM90-;sjXYv9XTq!XfFd_gl;}6jF3lu8iVCN*z_5)UtL_^MgGCge z1e3lNk?i-xa))xI=FR`;k7}PoI4)2rz{w*G7MNI?)8`o9Y_TBzdA7nU_#JHY)P1|9 zMi4S@a*iMowm8P!r5ENyx(bS_#~VIIh$tXG(J<{b{7?LM$Lcp|{>B{k=ns6XZt6}M z?-FHJIMQUZHMJQ@qHJ~N)C`2b-EG@08Ut&Md;po5#1&IFxYHivLrlbvN0{srWt*NL zw8WU4eK0qa++FysQfPQR{VHm>+UAI{ViPqVYj0AiRlpOXg9J~2Q^*Ep_e>$Oc&2`H z*3pR?P}Tw**s#U%*>mxe@iJ%X=kn`%Bn3=9*%kJTzmzg7^=Lll{Y0N8m@>hBx=3tb#J z?fnOaNn<9Ai37^2=);+9)Qpc6hz#dUH7QzU#3<_l&&-luqbrijky!A9#9Bo9Am_4g zmZK{!?h#fVrH4Fd19E3G@v#pXG!=;9C0`Apiv5><*qFfW+)$(g2C>N5?Y`%H5Hg^L ze{aS{S;i0^cF&gx(*8E)tNCqeQ0{6be&vQw$-ocmv!Vv+Phq44U_ z6*ZuLO@!i@+2U|?)DYZDmZLGytJ2!SZfmRN(TaT-s1{4et77F6_>(na zLBtBwB|g#FB3)(OR?{okJ0A*rGzMx^owLbSo`fkCpaF-|P{-(qoeg#JclcQf!DxZk z1Z+65PScIdw75D0uo^vf65gieFDFdavO;wU(nX1JJATV0Tw0+ho7*Fp;%-KZ}>D+D!@lv~bxbe+cV`m&v@E zVD&Bnu+m^-j_3}cNh{i8u*naPMF0I#p*sOl2{d0Z`^}@$j${fnP?^&_08VGF5Yv&u z5=VfW0u-YvZtXJJdcf6RwQCgr{Mg??btU&MT30`9Lgy54BOu>M2dfXIGMFm>ex^B9 z2Q|r1%wc;j^~%Eo85G8}`{4oG0yXTY$T=C@=zeMSHtNkqpfZPPDz<2|SRRW!eZ!_3 z`QaW1pk``A@2;OHPPU0O{+aN?t|XPccL@wdqzp$-1t;iC2*Wl4yih?xUWzG>~r|-s*Woacy^>7D8#-< zQMFFm|I1sukY<}-aPCGu7`RR2Pp!7JrOiNuaw`p}A`OT8m5|$C?J@EsAAnveFM{38 zsd>evF)ucO6fSulIWB{zGqfTAkMJM<+5cD5Hl z^n{?lr^-L7t+T;r^E)lhd!*kX7vTHxq|w=9vd}qE2Ht{WNB;Ey0WS<-tl-|`eJ$lG7@W0<*v#Q9W9TLf<7d&nEs`#C<@ODH49zc_KUOAOi>eqv~;j4j-adg^_ZN z|Ji(T^M-085fpQJ3aIILBCH2I=)~L_U}gbah%g1J0_Fnz=Firj#^*zBz51@4M9;;_ zGrLOR4|Mce?;|xTM}>Yd1L8PiJ1n07uh!Z>?yTFQr}nn`4mttib#&6{vC#M(f#&3L z2PiBYaMXx1N!D3ub$0dsJ;a5;|2#x~W7c6h%!8pO4#y|gu!zM&Y`GL(W;GNRD-`}3 zz5sZDPfN9N2xr2+Gol9O$5hR<6`5!!GN{nK`^lvJyb}}uAhBuQf{+6iV5gVEM7%~{ zHZcA38)Moaj(%jRm3kLS_na;LsGz;3N&4F5Llgh2_0UZA7S|SAJNqOM03jMQ3_gH& zU$6n@%tc9gH_<}QZWWxwiQ1y_^m808bjB9?yt@#UfVB_*Gt%r7uEYohpi+9+J;qd@ zSj=-8k_7tD^=#TB%cMMOC8%r&AW2Tv!nQA4RxhjTHj;qy`LAHPZ~qCFevam%o2+kL z9~k_*-Dlhw81IJPT&5YYLiNA0-2F!u8`NLx!7p{%vKsmAN<%=WLt#+SN( z7}_qP*iJ2uA8g#~`|KH(hVPHIX&Y?alxLHCR1`)OM&IqYi4$>Ppu;^${l$eaFn0p9 z_}G_tSHwpIqg#8n#7WJX2K^TsiW&;0QGDg1|0^Whe`as-olp<8ZQWA}Gv6%+;&dR0 zBP;uz9tB`-gba`zp0iKp|DE{>7F{F~>R~!@h6vT4G$}e_rttBX7^Do&98Y5dHt-M} zlELo-@F2AwY`-dQv}AlwhL}j5Y`uWG9$>9o@NE@9W1muiGZqHfYb@SS`4z93X@F3E zxm=}lY)E)j1Xq`}0@idt<=kG_VDE@rdJ~p0PMF7c2M~sJfv%Q zcdA%4=df9KfOXd4!mPq+(2Zv!K10_@sDDX0lPb90?nr*O7QLpK$SP-?L^V+cdziMd7<>x%>)b5 zNlmogsER;@k{%AIBhQ`J032xp_TY-7Q?H7kl8s^5TZ!-w#gwBTYrxiC`^swD27MiX zkt8`>RN*K3KW((8W<|^`b%u3@R`>N624~3as=-d?`WUbg)*SyS2UJ_MIha&Y+4Dc$FSHC|jt*fR4kRs#Sef4tNJfGMbFSB$+SPwOEKH>lt zzjE`ChxPfxK_m^j;za2vOZ=Tlb7&WEfD3b1%c=NuP^Ft#e_rBo=M9a9a`?^6p9nQ|_(!gcR+aXamFhUG!&bVc9x5_4@AiOSDsyKWsxh{Ovy_qM<3BQ6>-etB$&IZ@hvlRT z`r7Z7V(VK06@M`Yn2@mYSY?OZa1DZmZ#CO*tA`R5=<_#5RnQps8j;XT7Jp~(<3Jp| zoz8K12?%ndVE1cna6m98&>hQg&K@xxhkPG-D%aqdt;LnNDNccvn-%%Mme4t;GJtoy zo4kHBWbm3OD^An*Kw+l!8dNH1H+y;z-pBl#&}Uv+zg+J3@3jw?*ZRZ1V-im|>frN{ zrl68|` zxtEi!X@x$DSOS7AAs;$>wSIsiZVdn?dc;I;uOJV|A*cYIak9R03|YB4o41H;I?8)~ zG})ij5)Z6>Edas#!OqHl+1#BDU<;0 z)gc9cuU522q-rvDf3R~6>BWI)8S^KGFZ;t^OSk8TAF+z#W6pmuYP96Tf8rN3ZH+MM`BU-9k`)$6NZxKQ?GUE#19W z=_9jXRjYj~uvxo2`X=(Q1u_ox_|v2i)A7hHa3KgdM!UiFiE7I6UOfsLM+G;&OGb~f z7+>0xG@3Z6$+LqPt3H|>4-N>1-4`KF2Z+k&>RG3aGo6$awn(ZMes|xJd6(7D1DQHa zXc?>sb0z+35sGQ@lcNt{zfhO!+Knw^GP6s901;Hj`-48q zNdBVYBUSi=4+IeJc`oR5Umo$T3}%5{7!1e%=6M$!e|s{gdM~M$q=pN4u?*uD_kbVT zHTD_wbgR?(4V*RF&&1%2L~1$~PwGh{o?n{x`T1ro`CKg{oJmBA+q(JAXnx8l^6bLI z97@-a=ZDdQ$vDyxF1w0fjEJ^_Ur`vp6`UNKP(HN)u7I>`N}3Jtw^Jq|~5d!BnZYUMWqZ}^sVw|>Hiob~vK1{dPgM*NMIw@^c&ZQ|OhVn9A9EZBnTZ-Kj!eRq+z^-xM+b~lYP<}xl5Y}K(| zZ7UdDuM-HA-bCbm|KlQNY#hJPlIG=pDR01W^hfIW2#DZ)E_bS(KYMFj#~Twal1uM% zU^E?(i1nHB7uk~o z)zGs*RPeQ#IOYX$&;?h422G_W#d09-Oh>DKNE{XTSiHsH3F6|ke=dqeFreBwVgSSoF^P2`tYg14+jAJv3RS+Cs zA2PN)`I56uR1C8|gE;>*b;YKM)OT{W3WOfVsq2BXpQF~lIvM| zKg6DZfTbca!9vA&iE78q9lI^V1NBYPj1;UNI20trbruPTDmc>tir?FG(%gQZAu(!c zeQNaVXcDB;FpCZVEj`%yC2%&P9O=dyz$wX(n7?6sn^>Hy(L#(1T&oXV!&4r>dXDN% zdSSP}pr-u9goufz={2orwr|W2QhAYsxdQgZ0?{8o0=_9N?A3DgEtb%2cvCP;8S%5C zN#60$77I(xVy7U85ZQvU?V4D}Ym#nIaq$=Sj@}lLEtd2WgL&*JS&wsNab1S#a@W)n zvFdZ7VaErHwiiO_BRA*TtU;uXp1aA*RbJ*UMZJLzx;cZ%8APT5yjQPql%&LjRe6V} zRy0&lZ#0R<1JCb5NzKO|J0l*eq0c{`XL00>5G2^3?tMyZd={Q=lyhc0cH zXC1@K4~{_l6vpWW09wrkT8`?xaf&K3mydB6tg&qP1Mm=sRs%A`AH~kFxg~R&9Y~>A z8?JJV66)$YR~|~N4}{8yS(?dX+akGO^(mS z1GAxY0aVj5fyk7c>}~@>#^%2)$UR2)E%Y_K2`->lu(Ho~w{&;Ef>jiwVN&ZG7SC*+ zY^6)CvoM#1yQ955DAad*Ye%`~={$*0BPSu(>K}mF!o!=WUa~I8bBvg!=^u|tseE~XSPfjw(4K!_nfoxgfyagVryt(4hjC*djA#VE>1G9DknB& zq=eTO!ky$$IriiG8?fVP@PK7hLMcK79nYDE(GbJoADay?5%Z|Km8%%iwe>tx2e@&T zC`-yJPDiB)L}pH+;zdEVx9hU3DrcQ;ZxIiP$Z0SRgh{^=RaR)qgj_`IVSuGA7&XiV zeLF`a60Yw%t_lt9>}qK<`KxHHWkzxdcdSYu?-ERFKJvtUDz-<7^0MT4%Jj-Rcl~NK z{1mX8Wc~i~czkKH&7CUsGXRc!$xE|qsDdt8HIm40JK>w4zQ`8XW20DR|8i6Zp0&R# z$;*_$D_G?5RBw}oQA+%>H5Mu}aJ7tXhIZHxFi!_m$r;QhW1-b2pX$!#t)i;yRX%8Z zO-d*YpXRm%AtfXzD!IL>o#S8PMw1MWm5!S#`|o zdRAQeT3$D_TM23&J>~Mr2jK8}LJh&?Njc~EjMwrSfMkAMri*MjzC9D>8TWf12t#}4 zaYZWFWojt5VQb)GDa`1ib(qlyQcUS>^q*t$P*Oke@!gb85RBSX7XN0OYegWUrY)n_ zD*a-FUST~h*^4&yp-n@}5sX1g$rgrjy02;v!K;znN>=;yz{#-01X!d1SuZZqWSGs!_Ynspn{{_Re z%qNH5Inw_8F*!Tu@I>7UfW;J?LkrfH^X_ASYCg}Xo!1Ii3P5q3->jn-kDY> zvJmY#!8h*q)>}|Mt4|rhwm3&Xrf74E1T_!nvhZLze3@tiY2+ zHcy7;MMSe@N~2b;y_uz7eHU~AZ9ipu=@4!yt}Srrk&2yet`GmE^wK=upo^ht`xo_+ ztF^UdeDR?E^7GeSDmE_F=MrH%EblJufRUG)pyRJU@v-Oqmi6mGOv-pxLnH@mfrK7$ zb|S#hT;mks8*u+!@Dy_ha*~COeiFTM&y(-c)C=K>CFr6i%##&0%ssD0?mCYJ5aS!^ zV<#qCxVjgkZ+%4^?H}j_q4Vo5PcYi#r1z9E>Us00b!%w} z>S7bmrIp1Ww${-1O7&gFo%H02%>b-rHr0+ik&vENOU+b&z7s1-%_HZXnP%ETN>^$m zYXo?Z{*$(y@EcJ=npfdAlcQfO%FSN3TcGllQG3y@8fwpn{xZD83!y+lW7qYW5(L%# zoOnU|x8N~H@S@f0jAcE5W%9Be8D7Sh{El6OuQioaIa&NC@{FU6YW#<2vDHn94E4Lk z*k8*g7X`s)v0~2Vl#yE2Y35dYYPMB8kQkRU&g_;1y08O>(sWD6K>rz!&UtoDKTpU{ z9p8gfa^v^kWzeD=FjZMX9nzeC164WTO2IRlO*Og>6e={-*$?0^=0QxsFfH+jdQ(;K z)92-NPv_@o3wX=!IqO}x;h(Yf=+L^enJi&B9@b}H?hvR&TteZUHU<$?*O#Z9^y%um zd`s;uTSApzEDcoa{Po(#iXH!I;-9YvTf`$dmU`OKO(; zhos%eS!3qDREUY!%;(;Ih3kiWd}^*38){Ig7LTCU@J-kiqF%`^p5#Uk@&oMOwg|`m zfUN=5+rT`Xr%$(K=PtltUX?KW`E&ec3WJtefPs;kjM(@HG^tkhd1AKjlXDtE>L=YT_smaS5qL=}w0t*3)k zwa#XHCS4!Bc&{ZpTk63QUZ;u4tz`fWcT#%`Q7PV39D@E);^py_sD&46tU8AaMz9Iq z(xd>G9Ub$-Tp95!PjIK`ck{jue$m}O`$|*S+oi2{OkI>7mxBOt{qbTB>X5sEL22gk z*(FIp*ZWecD3Lr}9xfU6vX5)t*W^fIl4ocdJF_%X>eYIyEOO_-9>;2Mt$$yWECXNLO)UXTc*kU)4ZU#0vN99$^582`yQ(v!+^6pQ zp-q(8OD>sRewIMk@t2Dp1-Nj_oYoQx;&Pt24z!Y-YV@Eya)wa)`%neK$pI1N+mmmT9I3C3#jo6P}aTvkBUi068(@N4V|=QQ!xfhoc( z6rf;2a0hN30gPLV?FZ|8Zx(;7Jb2 z#b-|x#`=+0n3?)@NHiA~)8V-C6*sHu+IkK)A!Y>XVUtNO5(scug}|C4n4q9c0%z@_ zvvnE4%VXwYsgwOb^Jk6WU{V(ZE&^G?(D(|t%EUl0+~t8ACJ!Z+je8q?dbMT*ZMnF0mok_B&QzU z*{=B7A2=OfFQ3@*3^?gvG<|*cn(&(Jxtle8Z?F2Gv`X)-RC-AK@vN!Y%hcpTn1O*M zWx?pY0eG^(w5KQL-e1Ua*>d)!Ov(SUFJ66^6kZzFuA!VL>-qZJ{OSs)zo0qu_sTs1 zyuj73rZS07MOc=k^|4%8az#cgCUV)nP7Tw{UE8`^797f9VVn(`f$m&v;4>e%a_eUc zulY}Bho)5=dX|rMmT#D0CRsmSLd`#vYmt*p=ojgONvov8L;Lf^@}2~gKK;z7d`Rkt zvCbWCCWQrzz*zxa;I)<-iVTfQS(JN#I~1Vkzf6mHeerB t0J_(CG#o(5WHcNgxnVRMhI2SH{%6i}XEZPs|C_=91fH&bF6*2Ung9XjPtpJY literal 33984 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 VU`Fhf3L5aEte`Gm`4aN+{{nZ0X@>v+ diff --git a/test/image/mocks/pie_fonts.json b/test/image/mocks/pie_fonts.json index 6a88b272e27..2961f3ed035 100644 --- a/test/image/mocks/pie_fonts.json +++ b/test/image/mocks/pie_fonts.json @@ -2,8 +2,8 @@ "data": [ { "values": [ - 1, - 9 + 1.151, + 8.134 ], "text": [ "inherit from
global...", @@ -17,8 +17,8 @@ }, { "values": [ - 1, - 9 + 1.151, + 8.134 ], "text": [ "a font of...", @@ -37,8 +37,8 @@ }, { "values": [ - 1, - 9 + 1.151, + 8.134 ], "text": [ "outside and textfont
both modify...", @@ -58,8 +58,8 @@ }, { "values": [ - 1, - 9 + 1.151, + 8.134 ], "text": [ "independent fonts
outside and...", @@ -89,6 +89,7 @@ "family": "Old Standard TT, serif", "size": 20 }, - "showlegend": true + "showlegend": true, + "separators": "∆|" } }