From f3a973adba40b5efa36f59994cc1a503e4983b41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?fran=C3=A7ois=20GUILLEM?= Date: Mon, 19 Jun 2017 11:20:10 +0200 Subject: [PATCH] Improve README --- README.Rmd | 14 ++++++++++---- README.md | 14 ++++++++------ .../figure-markdown_github/kmeans-1.png | Bin 24441 -> 24493 bytes 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/README.Rmd b/README.Rmd index 6651bac..a3197ba 100644 --- a/README.Rmd +++ b/README.Rmd @@ -11,6 +11,12 @@ library(manipulateWidget) [![CRAN Status Badge](http://www.r-pkg.org/badges/version/manipulateWidget)](http://cran.r-project.org/package=manipulateWidget) [![CRAN Downloads Badge](https://cranlogs.r-pkg.org/badges/manipulateWidget)](http://cran.r-project.org/package=manipulateWidget) +[![Travis-CI Build Status](https://travis-ci.org/rte-antares-rpackage/manipulateWidget.svg?branch=master)](https://travis-ci.org/rte-antares-rpackage/manipulateWidget) +[![Appveyor Build Status](https://ci.appveyor.com/api/projects/status/6y3tdofl0nk7oc4g/branch/master?svg=true)](https://ci.appveyor.com/project/rte-antares-rpackage/manipulatewidget/branch/master) + +`manipulateWidget` lets you create in just a few lines of R code a nice user interface to modify the data or the graphical parameters of one or multiple interactive charts. It is useful to quickly explore visually some data or for package developers to generate user interfaces easy to maintain. + +![Combining widgets and some html content](vignettes/fancy-example.gif) This R package is largely inspired by the `manipulate` package from Rstudio. It provides the function `manipulateWidget` that can be used to create in a very easy way a graphical interface that let the user modify the data or the parameters of an interactive chart. Technically, the function generates a Shiny gadget, but the user does not even have to know what is Shiny. @@ -47,7 +53,7 @@ devtools::install_github("rte-antares-rpackage/manipulateWidget", ref="develop") The hard part for the user is to write a code that generates an interactive chart. Once this is done, he only has to describe what parameter of the code should be modified by what input control. For instance, consider the following code that identifies clusters in the iris data set and uses package `plotly` to generate an interactive scatter plot. -```{r kmeans, message=FALSE} +```{r kmeans, message=FALSE, out.width=600, out.height=400} library(plotly) data(iris) @@ -79,7 +85,7 @@ manipulateWidget( ![An example of output of manipulateWidget](vignettes/example-kmeans.gif) -The package also provides the `combineWidgets` function to easily combine multiple interactive charts in a single view. Of course both functions can be used together: here is a more complex example that uses packages `dygraphs` and `plot_ly`. +The package also provides the `combineWidgets` function to easily combine multiple interactive charts in a single view. Of course both functions can be used together. Here is the code to generate the UI in the first animation. ```{r eval = FALSE} myPlotFun <- function(distribution, range, title) { @@ -112,6 +118,6 @@ manipulateWidget( ``` -![Combining widgets and some html content](vignettes/fancy-example.gif) -For more information take a look at the package vignettes. + +For more information take a look at the [package vignette](https://cran.r-project.org/web/packages/manipulateWidget/vignettes/manipulateWidgets.html). diff --git a/README.md b/README.md index 3fec593..08dd4fd 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,11 @@ Add more interactivity to interactive charts ================ -[![CRAN Status Badge](http://www.r-pkg.org/badges/version/manipulateWidget)](http://cran.r-project.org/package=manipulateWidget) [![CRAN Downloads Badge](https://cranlogs.r-pkg.org/badges/manipulateWidget)](http://cran.r-project.org/package=manipulateWidget) +[![CRAN Status Badge](http://www.r-pkg.org/badges/version/manipulateWidget)](http://cran.r-project.org/package=manipulateWidget) [![CRAN Downloads Badge](https://cranlogs.r-pkg.org/badges/manipulateWidget)](http://cran.r-project.org/package=manipulateWidget) [![Travis-CI Build Status](https://travis-ci.org/rte-antares-rpackage/manipulateWidget.svg?branch=master)](https://travis-ci.org/rte-antares-rpackage/manipulateWidget) [![Appveyor Build Status](https://ci.appveyor.com/api/projects/status/6y3tdofl0nk7oc4g/branch/master?svg=true)](https://ci.appveyor.com/project/rte-antares-rpackage/manipulatewidget/branch/master) + +`manipulateWidget` lets you create in just a few lines of R code a nice user interface to modify the data or the graphical parameters of one or multiple interactive charts. It is useful to quickly explore visually some data or for package developers to generate user interfaces easy to maintain. + +![Combining widgets and some html content](vignettes/fancy-example.gif) This R package is largely inspired by the `manipulate` package from Rstudio. It provides the function `manipulateWidget` that can be used to create in a very easy way a graphical interface that let the user modify the data or the parameters of an interactive chart. Technically, the function generates a Shiny gadget, but the user does not even have to know what is Shiny. @@ -54,7 +58,7 @@ plotClusters <- function(xvar, yvar, nclusters) { plotClusters("Sepal.Width", "Sepal.Length", 3) ``` -![](README_files/figure-markdown_github/kmeans-1.png) + Once this code has been written, it is very easy to produce a UI that lets the user change the values of the three parameters of the function `plotClusters`: @@ -71,7 +75,7 @@ manipulateWidget( ![An example of output of manipulateWidget](vignettes/example-kmeans.gif) -The package also provides the `combineWidgets` function to easily combine multiple interactive charts in a single view. Of course both functions can be used together: here is a more complex example that uses packages `dygraphs` and `plot_ly`. +The package also provides the `combineWidgets` function to easily combine multiple interactive charts in a single view. Of course both functions can be used together. Here is the code to generate the UI in the first animation. ``` r myPlotFun <- function(distribution, range, title) { @@ -103,6 +107,4 @@ manipulateWidget( ) ``` -![Combining widgets and some html content](vignettes/fancy-example.gif) - -For more information take a look at the package vignettes. +For more information take a look at the [package vignette](https://cran.r-project.org/web/packages/manipulateWidget/vignettes/manipulateWidgets.html). diff --git a/README_files/figure-markdown_github/kmeans-1.png b/README_files/figure-markdown_github/kmeans-1.png index 354596d3dfdc64d5b584dadcafe24c59589a3552..b34c521eaab0f5082b6a16c84b9f5b2632a66b07 100644 GIT binary patch literal 24493 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 Q*+XR2yJd8<47?EOAM^#r&Hw-a literal 24441 zcmeFZXIN8Rw>BE&0Tcv$L{z#8h;*d)sEBlsUP2KO5JHjOn*~IA@1W8Ny-G)s-lT-k zK{|vEp#%cojL-Y-^X|RBf9KEnakwsAGS^y}Yt1?4825dTF%$e;RgRpLmJ|YkkSoYP z)qp@Q?SNmt%fz5%PSvCz9Im{P*LQ+ID1PF93F0^@=pc|g5QV3YwcJxTroEg;EPYo_ z)U?+E-(S0|V3>6&c;3$D>e%gD?ZVX@)2_M03C=Zj3LPoxmHKIED*YA~Zk6?2S2CfZ z72-~=;7@+J3WU1rYM~b*#+5BCYj~QKuHGtPmw|7Y=h_W7XM!tNrq_=qq3;#1vl2q{ zwVJWojV3DxVn&qNawbx-A!<^dJUqjKDg@w3-~3fGO$3e*cjv#{!J*~xW$-o-|998s z@TW=cwh)2?#S?!LaG-w=p#%rf%LI(z@aEbjNpP6E^Z(!Y|B=D*4n(i5mDRrwZ4qT7 zS&%%sy|DNqHRhc|pyuEIuV$0){&g*%&&JxXssFG@On*ISYL_ee)k1=&7l4pp==`FB+DH+cqql!J{(4FIbox(c zdOM95_9+E)GNdY`ccNZ29uhI{N!*KlkGwI45LSp*a}m}xBe~=~6#C(aupUNjeHdQ# z7g`&}qy={hYY^52gRaq9Qk;%NTS8;mHKQv9%O71>@7w3y;k1mGlDjcAd*8$eLAyn^ zK9g)A6d`3kH2kihMC$W&QD4EX?_(HC9(Lkp+wy%M7i-%?&IbF!qDJA*@p`9vGr^!6 zx|F_yd^<%GlFIsGMQ(0e?0m3lGwqYRLQ`J8_wTi^>BqU<`>sxQ#vmqYw-sN+nL5UEX^#osG&IIAaH0_XH!rw$_6Wymm1t&4$ z4Bwzf8{Bul|%3k|h&w2xKW6cL6k)LUYsR*R48uqpi^UdvJT&KOF z0x7GzYU*9OH@wu;)P^`K7Q8I(wTp?}Ua9T44JJO7K0>@d!#hET%y$c>~^jVe(9Rb8&`RJ@1i5)H~ zS(QLkuOFdKFu5>eg%)BRg}s91D(kA6k%F}*0cPg!p2%50#!M8VV3(Eu=)FlsrKz^5 z5R!z=u?Dn}co!|A(#7-5P2O1RM7*cIPp1Fls&~12W5LjfT4U6lZ&kix*je{w2t-*! zz4SS?Q<+Ws?C0mNQDb5|F_V7`ZAOHQvH59EU9qY(!$;gnae==zAr;w6unLYWP`C-r z70u0KRCvY{&EY~Fq}oYxnZ5@n{O|ir%pTiWDGIq$uP!B6B`>#T1pZ9KzE%3*G^go+ zGZBA@U*_pvp$=e9y1t9H<|hWI6?m=0PZ;5&5`75p+nuk|-nls!o_;EyW|S)X_TlaHY6R_7&Ts zu&Zlf`$4vamm!Sd_)nE*ex@a|b=X#A!YGfV<0W`;6$FRKD9}kcR;NT-+Bq( zTGq7Ur8sVAsfE{RNSC z=mimo-#}r;yYZV%m@Cij-!lPVjRbfSF;n_+Y_whlG3e2=+6xPJ_TM$Fa&P}@h2Jk2 z-YrIJPYy}vx1FbK#)RQxSLDmyl!UC#E9`y&hKL$@eX-y*(W$JK8DVXaz#GZ2?qL2m z$(}8$o!p>TKYkQPE7Moj!gysAQ7xS}x=hP@T=As)9zG&wUE5!k;Ga1Qc$I8M-qy2t zvUS0+MBQ7y^6~BIle`4ecPZC=T@PeM~K zZ%2>#Xt$F#-b#50XJsPgi6`pwI{b)z z)n2FXmhbm0q3xpzM`!bI3IUBP+9+DZV|EeM7BM`IVgHHwN#^KxVbX(}cU$tsP%fUF zXRy8?M6h^h?;BK2z^sus(y?qH_^fY3&!*AZ$m8otUO!6ICQ1uRlh@x-)lPyo!X}+P zxLVpsIj^V?Lhc7CjAC2E?7^;_mN=2XpI+Lv4erMEe=n!;d-vpvku~XGHxj3|5Ss9c zqbB{GV^)5oi_6~Hqm2PKZ6YnYM7?X8)1uPMTfmcKSa&qLp4~`Jwx}xb?M8+6bwk%_ z6HAj1!?i0!_)b_(NqRSO?$zL3_)hUjiOa&>WWbVzOP|Yem+|{3$i5}7dxjbB@G9o8rWMv=_7P_1ijWv}k_}WLF;LMR zu$1gkh)~^6zT~e3Fs+8+V;xmPSU8)KU4qob$+DWJS~{B&PeM`;r4ZTFi|w?hYST+)^h1tcGU;H+=!dl&~>-h`4G?$1qzO?Jt`r|Vag z1*C_=Xx=~*42PT36FO=L9&wl^P(;pGCunm_ZVr}|RKb6SuIER`O;q(-!lcewrI+d| zZZ!F-st^Ct%;v;Q4I!(M74UJ|zMgLNW2_iCB_-VQgjTBlRh%uRMZc+T&w;x$DOXLL zmt%5i&`HT>LL>UFuGpnvd@S^OR4=fqqsa!`6GdtE&lLVIKUmlDhvGa7oU^C1L z5)eGxztc9gQH$tA8ZWJw!!g|-y7yRKBc1R|&bGkrD!U;2?z6X;iCdwa8GG!aUv~)d zi-m5SzPR>ZzB9XB3pE8M3;52+%v}5RKABsBzTb3r2PJ)u;xOGkX|^^Y556_4G}Y+{ zP2C!46za2P^y<#aRTBvD_4_wgYyDqXttDOj-InHbY!k(6H={TMg9$-gZ=J4CU!NxI ztbPf;_WbD|e|@L+*)#G++~cP)YRj8VQhAi&M#KA)92O`KmO{c!q-T+s`a_ZbJ3dRa zxT3DU^Aw3Ndd-_eG(&+ZS7JD~!t8D;CmUuw=8BL$%k+=DQl zAzCPLtNajD$#fIpr=J$*J_VEe4}fC@c-q?LUb8{imtK8oW`N~Ir=W(%$`?0IBoDuB z?kOk?)#%z*Ay^=ZWgp1)VwW5`J{(8O?%NcsK0dR4U8wWI{!aDXQC(EQGRc;Kt!~e8 zd9p$QcZuI_L5^4!t(A?D-)Htr;qvR?gD1Ywtt?E;G&>m28dSygq(VehUE^WAc1Nm4 zgeI}Mn~y^*-DaOjFE$U&8};{}YYv>y@UD;{9=m^6;U&(1u3UVMO1&Wv8Iz zEiu3+vm)6>!stcqJ~-0aK3`kYeLdspTTB7vOv2|z zW9=~Bs9Lr&Y!*3!6p=428dVS4q~_qP&4(ij+^26fD?C{WcbJ2YPMdPGJMKmAV4P@$zIwXmtC_$~{z}nXxm>dJZypAmU&~;* zp`A~oV?~p3ZIWLo0fZ(%=>JB!f6yM&kRjMhMXEWyeh|7o!9$xg@3SG9bUX*23W7k* ze1+aWNp>`S16JX?dPe&8jtKSS$$4-#GDq)84By{GM;W@)jLSn{o!GT}1Mw39p$MR-x3C zH2VLB_HSE?QY*c_e&_mBN%cC4>w}xZ-gbUWNu$|%Q5)#Jh49*(B{#qcKPTM4pDaWK zzVVELr;K)_51unMh_o`Qmo_Q<4ldDpV-hlfU~;r32Uqc3>5%V##**j5t!;f(O7X9w zZWuDBF+hQ>LsvxFeV7wm@`g#c%tBOnhXqe@z+jt&0?-TS2aReQK!H6xQ){DN&@0qJ z_`oY>8O=cRMFrnw;b(U3`h1~$)LOQS7yd-+j zrN&Di_Tk9E59KhDV+~p*0S<~kxJv%BYMPeuBN+w)d0_`c5xw%9Ji+3=n$KEx_%QMB z3%wE6h;Fi*?TiVFeW)W{`A2;fO$MmHf4 zns*S&mU6BH7=l!3gNG12?9c18_yPR42vho=*x%MOh{Pr9H2UiB2vysXL2Qb>n*vx# zk^mFJ4A-{@nz zVkV@82EZ&EhuRAr@5vT!J7*%u++BRj!xR2IJ=pn^|EFcQNE@aV8As)ny3(Z+W}gD^ zI%Mw8aD{w&D~m-<`fAG6^Kx3#rULlU!VFw(Y2VvaNvWCNI$^a zg^O6z*8M^i%>)?t@fv&vj&a8Gs?4n|XN72;ev?8j5hvD|u-ob`2QFO;j&NDivU0;v zN{Akq#ktqhGB_+{$INJ4z+`k*IU)m1$>gPOzE5hKpX;;}evT`valzS@uvm395MeV_ zcnetUo47Gq$q2$mY(z$LQU7;|==N|bTx*B%D?$N?UP~njMDFxr0vZl1xXz(Q4f+RX z_>P^c<9R%$zOi~V#`=7=g6ZdvdO_DOsM*wupY5L@EgoRB=r?;e>4vMvT{6()lOjy{ z+*C9<`G+&dWumRe5Pw!+JmET$eM2GhQ{MP%oRuEyG4i)>I$D`hED%B}WbyA~f|%k$ zWqsSKLs`J2I5QIWet&lz0G?RkI19acDbF?8Xsdro0XezeB*d&r)^5&O)JAu;3Zol?V z3k_)TfRE6Z*8`0MB1!|0A&V?4?sR}+Re4*e%h^grJ^y@lH({x4EP{RQ7sko+;u)~V zj%W^GdaPTfMEIV;J-F>4zb_#^3%7WZ#68e;hdyT!*a};dvXOxR&fFU|7ovy9Ka1eB zw;4v2dQhyT29QVh7w+poBJY1Vx{^R*2iscd>&a!zCx`ea0jJYK_>^1P?}hVm)C72H zcHkN1lUKUJ;XRmF`o@G8?z?;6s@Xo(c3y!*iUQk;Jm^S4#4V+}EA={h96)V7#~qVRom5fr?|^o5dT`dqx&Cj+#FR;?A*|(8E9&4q+P}le`CTxP0l2N zVp_E1`X0uO^vr3N6 zV$QW&?-|gx%H(|r?)btAXY&L*A=EFuo@R;a0lfoNO=(YSO6*OYQVdrTjADwtBFToK;>_M z0ae0c7woAwnQjM@VY-H-1o>=Jq>%DbfFl`!+=c*fXD<{^1kuw834IAYOXXi^fhCMr z+8$~#7x8>D@q_-?Rb6Cix_Pe#8^#vC{xH;r)(=&CHlZhTmQG~LI+T{F*S(r@Z4fKq z-^y1rZ^st0PsnVFNFb5EhB-#fN6!>j*VYEV%7$$4FmGm0ipr5|iqsLmx}6gryU5vN zwr$vwXSMp$q{j2qv&u?8yL?I*Wp=ynO)f0D($TkU6T_lW*BGx!jfW2csh>1oL-dv% z>MIK?TekRL0#sIH@ce6f9vkZq$M{KZCONrFkmZlK3p{*+xW58ZjGt2AM0&qSFw2M! z`6$$!Vk>=&s}=W_Cyg`=>Zbf)&EL*y1BrtU6i2BFxKhWnHCF5nR(0igy3OkjrYuUl zl{Sp%yvmxDzI0mEPUT!$qFdyCQN#oBS1F{4AeVGn!A=|FCYfykZ;xd$ua_#A{ic+1 zle?z2{J?SbS2^VI+zl;Lt>?=>-DS0|71si)d@IQ_-*heEQ zG4CpvlsP)GXJJQ$uCe2q1EMnm(f>wE*J)pbH#nTX!AH4|f8+J@%CfHq2d$^=BeD6- z(nnECzS8Fh%Ok{^;@-#02WqNs=V~KzC56q~afJ~7ULf%-cP^d79Bhr=;b=dFPdrz_ z((*r>p9l=gyNX~)8aBke`esu*i2OA+@CIru0f7WVD0`EDF6>|%vQHX|HbpDk1Jrk6 z!f}cbZEsg>^|fxYa_O0FO}lU4>Fxvp1gxhQ{oWPp3e*-WZH$)nQWF(eD>_a^wb>L4 z<>tn2Y+vqVb*!rG8wE9KeQ{h&%$x+Grb}pT_?=R*m7fme(XuHOJkX4AU@F;>RHe;Y z^-B^nRqn6Q)wlu`D`!%bh$m4o>@K9_+cbC&O0sY@_g;&o=uE>uBjmC5u>Ifd|0C{+ z4nh2FzXs;h8R7V^S}7~z?>L=t;$~Mi12~21 zci`@-^SF42(o1Z91t0Rrl53(7pR}8PVpXaT4P=-`U6IwFwLIh$6ju9Ka|7e{uo{T} z0ed7&Jk>YQ_?*p3bY!Q^(m)6q!b4E-^KSqc-LCW+&oQ(oEB$o-1Y3pT z%kpgRWHR|xtc;DV8^R2MlO1?ea+BNOl^c6>)_K%j1&znTw-gB=*ExmGm(mD-=QLU) z?6mSsi_Nejl%&Y8yFR~bLV*A>`Sp-J%sbJ);wrfuCd6$3z0n4X&Z6!i#dH^Ib0j9% zDoG`59jwmMpMQ9!A``v1=5BH^zw58Vt7oGmg=3bnmIA;9V;IF^Yfx!eg-&PfB!pbQ zuR`dpM>6SM08d-c^X84z6$-rJIby#Av^|i6ax%Eh=SJb{$c~q?=8@8k9;;t{;WY#C zp68o`)%eNEGhH2k!iW9F^v#r{zB@5>{HSMPK-Yd{N;`deVKZG(JwgbPhg#9j#W0^? z_1x7KS^PjsXI@Q1lcPr{J46ELRKdfEW7QkT}~|6b9{1^KmYn|L)~qI*iER+$ z?%E^8vC5pM z&!u~ydk_d7tO^p{1qaIdKxPB0M2(in{ZFQk1wH8jGCKis6zE6d`nvjsE^+x~uiBZ{ zB7_?sunYMzYz^tXo_+k91kxKNX!L|iM-${o*G6;Rr`(Y5ET?XE)viI9&ptK5=Y>vO zd$t)abON^SCR+Ww7C>Q^^Xm)T;*t;`>Q#A-p10)WK`wDF3jfy3dpg~y^h9&c^T0^j zluJ}S&W!F)vvg+)gg42R4Hjc!oz_8Eid5z2X_5OuGO{(9R;tYlu6<%sYS%G)O=I=% z3^K6rBtIRH?i|fJ8_+#JyQ!10Zcri?1-H;PaDaxd+z`r~(5cgyE%er?WrW)k zwzlV;pN&n5yPf7JCvouVWkG#k)+}2t=_5M$Ff&n{*fX2ltF0qg?GVh=sH3^ZhWvmn!Rr=!NE@6VA3Hiruz8zIgNqWm7XU(0sbVomS^! zt2nuLc5id~kXi{xFYYM&yHz)*(sulL&h(_N-nwP^c6( z0p+&$`8xCQVYY1ms;DlZ5EE0N@w+PZ%Iy^(%KX-{stZPz1YY~ikZ5zJ*V-lhZTxQQ zyyfxX44s3mF0oxtTJ6)v@6?JE+wy_v&{KF9x+ihQl;dS8M ziLn#(@B2iDy3%tShX)Hp|i|Cw;)wqV4srw!)w=Jvax$BxMhw9RmO=8D+WWugxy z88N1`6JVMyG%}VnP3|k@qAJ+ewxLq_6)W~#OVOiR+(WwQhL#@Q$_l^Xn|P9K$dhnp zjyQ1EUkdFIOKTU6d-zY{b?D$mvR8wUH3f3ah$woo_X8siH%Y~W;xXFRoNXxuEX!0$ zYTMggorx*q+rjGM2_t4kEPuPHZYJI{yvA*9r8)gu;RDAaHNtny6J;K?*}mavYa_g^ z44S7jv`B#n-ii^mW6%1-3}5Ks@nR9WPCz`1SKFp?M6Hgr=_si1 zI>+92_Emm{iLrRGNIz4!l=PsJicEW+E4NYF*joaKLQIa*>&RefF$byQ&7EMnczarv z*v#Aod)h|F{qU=;6JgoGdtJN7yGg~HUvSC-{Q_%v-Zeil!IM_$y>C@l=j?l@xG1x6 z))6`!wx5!q)}MDD^2l0#f##URXjuy%;q??^i~|ER9c(kzWd`%u-E{U62EEmvGcgLq zCd8Z#^bdy(bmrY{&j^u$JaTgA!R>n)v{4vf`~Jv;k^_ zX4s=vzq_Yw1zKP5=^lf$hneDJ_uf6F-#!f)z?f965L~?F^mRtO`}G#AC~0Tnv&gs#bnq$C}70Adrd#Fn&M8$Cg0?^oQ5|aWGw@ zB^=>W#ya9ACKLMRFe#G~Dy|B)FA1k(Zl(r~G#cwcKKM76Z+t^xAM zLvK&S48FZ^{lXsQ=pihRc&f5G?zfq9$Bdu_+C0W;m_axtDgg!59nu(MZBRF*0qJQWgG8dI_=$u5KTq(X0?Yw+Q?&G}w z7OY|5q4Ue%lufe|KrBG_lBtUZmd$UW(EQiVHc-squn1<}wWQikK1?Mev0!1(7Pr_} zK|6clyEvlab5hG;d!SGDVHY>`3o%eKge{m4@@6eOo&!v+C;!dH?xb%2Y6kT1EhBHW zDyK=IV0#YM?oPOKM)s2lOVaX2I`F-4+ z;s$L@P4txp;GA(|n}i=T)HQrQcXPg!nc%r66C7vQ4 zjxe~1k(Pyw5XAqf!Z73l5``}!Xv3-Io2`sGa`UE)HHbo?FcaV6p{BPxk9Z}GzJR>c z%ZLzCCvB;BbVl3TmZqk~#xtgkOp;^i$VqKs`}x)(5aWRaql1^Kdv%gk9k5locFopD zL`(MR-g>Wq28OS&U?mp=91TBjvy!o z8EGNdd1%P|zY`zY$^9*}3--?+{ItSnZRDAfj=VSyNL=h&>n*l8Cb`KG5q=g0Y?*}8#aY=(mG5s2*t(cc z6YRo$$9tpUFlNQ;;K#7B?d0pt<*AfuLM+-OeRS?u9?P1pzMW5nXHj=TuV1IGs>{4# zjj!)cYP-mOrHOR@Is@my&${CUDnPwSl4{-)ze!}uxWH%Vt;TL6DJP-jMd{Ttx4>)T z#<1iC+uqK2%3}qBFpSBta%un;#Pix(C}-w;HG0VxBx*=6Nk-1|U}itT>xF+I@~p<5 zhY1Q^_mkPmGwtLnL=JnP?Yviph;G;m9`r0WXqHLqp5|*o|5~&2&#n0kt^s~?#;vbfe$z?Nhs%;;nOtT9n*!A%B z>SsLJ-z|gF(lQPnvT=%ju%OsYkNPK92DDf2z=b|eP?ZP3(h8#)(46oUb8k3C@kww9 zMYJh_G`@(E0IzUE{AIGo?~exUBJSSMcsFf+C*1V5IC8Kk;Cr5Mp+VtU!&NV<`@yD( zb-=IXnZCAC2q>34^bL%l&9QUF^zdb|vYrSOvsr`l<0UgqkEwb1Y%Xdw`d*Lx!t@i= z8V*HAU-Fn5RmBoOvTkZ<45>)5=l(%eMMUFUhiRs`x!er+@yy9Q3G~yd(tx&gYr*vt zP9Ygjt#48?3+wy^Nh}gf z4)7Zhm}AWcxpZPy35g&Rdv&CY#gvz)XS8l)*sN1I%x71`@mXddk8xePPQ`oI2&YAB zd&5a&irWYh$z4OP#Bop8zN5;h&Q)%DdODuRsm_`Ee5KC0Xy9;Hl_-bZsL7YDSjw@; zO=qEX?Eb%sF;jKkX+=LHkVc|vf?P`ba`#sVNjDhm_w$RZ^o3@EEm=>=?@@>U>h9WI z-I^XeH83jBGqyf)9ngv+T`<&gH^RB)2G+jy7&mD6HkRXAyteiHBDVU+TYBnSFofmz zGtRnkr=zB7!^sW_?Oxu_!A%8$ouQ3(HfrOZB>#Uhq;ZUEomc)v%kRezRE{ceSEYX3 zKN~%U3Fww^DW>eCbEHo<7;c?fR0BQ8_nr0E;|xPak>MsM1jf_Vjva-gI&?iZ%wIk) zdsEAD5d)HPqWZLbEwgN3;%q}Ea&ar$hW*y1ORbSCs`y#o%t&EJJ*pfv=oU)!3O0qACn$SrS>_i8GC%r;SfLrD2wfjjX?)DBj^cel$Qv80|KW-hsjVa64e?f!ZNemG4um30k@U{Qzaa zsC&pNjzvm@Z^i*zpU|EnsR)ttn*{RTpxP^r;+41F#XaDA0c$9)53SU#7Bw*s+27=0 zw&@nnk#`)b9)PX=HM z0wl3PJFT~ib>mSAUTvOJ&sw|Mpc~iZ%5YguP(Be6 zfV0XcPWrs7n})u0qj?BKG+O$)3ujh9Ne9f6bFAF{cCz22+1-^BvEUE?rAX24v2`#* zGm3^vdI;Fa{? z{!>#76mt%lOOj2O?TvvrI*>M+K|fqH^PSz6jMP!|- ziE$0Jue%0+3WPzbQ9GIE3qd5i9frKU3N!I7cKIwDNXRSqc0od~SIhHE^@t2#_+gvm zeOBV;Lno7rtVf8qDs>ns&Q znDtIKy+p$tVf5jXn!mPZc>e}C&M!jCdl zmX$vx`bCObJ#IMlKzfbdz2!=dgqk<5pv_U=kSZnRR`XKZf&(XK&xB6m+WL5DK_Y8i zi;YM5qQQ}~VFkRkLih&Zow)3^`=cZuo%5!3yI57b5@pN&g2)mIn#WB42wSwK!)-lSO>=+~_*@p$Inykx&i`W6&1yhaQKU5714PD=@QkSasw7}gVOv>rawC|C` zeOc^^NAKQRG^jvs73|1fm08Zcn`B9;RJ*@8u~%-$$y8C#ac6Cax5cee2^mK9+X#qB zQYCexk=6}=w6aC=`~a7oM6+CpIt=A@YKTG}8ue|h`$`K8yoZ7V3Bmfy5 zx^}Lw--s62(k1AvlO%PyZ*RY1#Ga0sRV*YKJ6}jqg~<0DSEudYgJPNY;5zuy;$xzsT>KphEvl26g2l8x;cBM z&>8r0=Xqu;e+2zUxG*&ALgKF>qhum?g}r>oA=0EB&~LYdgAL0qvAYU^fpQBI0Q-Cm ztb#!C&X$fw=#}0Eo4PV{Q=hqF;KM#9$(CP&P}I(wkv)>s?^f*|bxi@H&$MW1KEZ{9 zh;1GaQwm8wP&qp1>zuvCuSQFJ?B1j}+Q59Gqs%C_j&IyKdAueNd`PpcqI2D&Y` zQB!(Ri^t^i^gvd6!dp^<{XvK;ke2IfH`N=i+El!-sDZ&a?M!C6R zKduNmvD?lH5PPz!#pCP4SfhvBQ>n5qs$A8B^wm%pJWG9l5R>pZgOgW;)70lK;Sz6Y{Uts1 z7Jji;)s-m$K|;OKEdQ$pFU|sv-(=>05bvt=+F#4DVx>4dV{;@epx)EFNRBgp{1lF* zGa?k9naKtW<{zkMIWmALCSb7Njx|j*(A6&d#9FZ_XJDdTxW~E=&aGHVV7h|Qv?zWy4>|4W|Y+d`xv?RxVY=W!K zdKq$5*vHkdsVJkt!&MOqWC%qN$t|Y`{-`wyY)6uxc5)M3R#%biwv)mokxAE{{BThEYzUBOi&$*4O*DMZinkN4Z2MD5G`0w+y;*3wMqo-XN z2@I(Cgq}l2$RjM!2b>mbi>M9C-RCtD0Wa{eA{HsT-@QNCz`>oK2N=Q>&Gahv$1pXA zz98@6w>&;wq2k5|T=&-IwQ&&@u~1sT_Hl^lY|-8*wG(VTq$- zVoD-sgXKT=0*WqX1qhuwK|})-)={dpI>=4IvEIl)M}rUTD`}SyAD5#F71Ot~HP9>o z^=>~TAa^!*c^UAK_}|-1^`5+|w4C;1mkanDM#9!IIupN??M6r}G7lZX7i}@!eS@+-~qJ;8Xm(FZX)<-4`Gv&_N zde`@NJ7;iIE6RxAZ38*$uy9&WG%f_&SYls3Ldi$B3@cG$mZ2hlhvT0;i87qUCLB_K5VPoZ z-zNc4IC|@#)BT9N)&xg*+I{JfznYMgloZXb)XI;lVhIOZVE1*tnMz{g5lz!(b6c+s zQ>+r}JR6lfZmNocsu3pCsF$U@h(vwdlE*>Mr((DEqhTMf=SD`;@w}$pf359#s~up&F!S2WyktTo8T(n?wfA;H5a3? z)kOPF+6Edn`5CONY2t2H>(H-lvK|HvV+PQqJ88xP`Rxzb6Fda?v->pH%^OzatsCNR zaTq*jnZ7kIrKFSd$Tm2NcHydC2fJX!Z;$|gkoBwaLP)2^%HHRB)Ke*@_>C!pVnFT7 zI`kQ9jMKl9e*u{T_5}EP?_qdf57$uz9R6W%|GqS{rN@+~M+YeyXM_0F(1m+diy0Ca zJteSc#SAgBdkx*+Xt-2sd>rmWboYv(WAj;kwB?ZD?3t`1^ho7Y@zR~(6g?_Vy!8ed zdyS~%>tsMlhHMW_-@M+ajE@=|2SV045V9B*=GX<{2@a%v^hz}-r|vbh&PCZ#>;Su< z6Hm5rPmP^&>XQX8{vy>c3i%GiTraMW4=Ebk#WTXBPKW>gbaQb{Ns zVc8C>VRfrb=AUx#u82Q5a9tZ=si_;! z?^His{yhLlGlVga=9p&xpJMRp;GFemA84B%gu{HK!MSS@LOV3!7(YB8EdqH>Ps?Uc zP?A;W7+fxS=IHS0I{^*bY|Ip6EowW`anE8(Td^@-F38*%9Vw~r$gR&_D|I+3;4ar5 zEThpcS&NclHt+Ke=gMvu3wsE3ItzTwsmVp@%xj6vVwfANLP)sl8XaD<3J}{gJT@H6 zIIDg2lvSZUfT`PP_zt&`xsz#ynX6IMZVWWRQ-W2YSfgZW_LvE%nYQ^IqPT$G4BTwA zX{eMhx@2)?KX(YGIdB64VWPr+FTlJbY@Hx-CNbyI+-v(rzlT6x&ChjvZqHcv!b~=w z6&rCO2AaA;!#S|S&81~ufAYy(0G0uY^=P7Y5lrK{zXmS&@qg3PsD?NYM<)L%Q3lmP zRul8~OMUWzcgfpl7ZDP>HE?l7XRT%A;Wvx@JsP@CQG&lXot#CR8f!RDsvw=0@wK-) zde{8!pF7*qbZw@)8hzvB^h#!v_{gTj@!%8Om3qQi!r|Ooq4@aFCf6D+iCdBbi@#4Zm=d<}E&J`VNmnICjkIW=CdEldl5mIbNZ?7liLTM#FSY(>iT}cF z+f)3mwO)Y?yu-t9NL#!M${zpF(=Rni=Gq^aWQiZ-0pT?k>elm zzGuGD+2~PYsMdV1*3ea#_zuBk(9iMCm=FjbtcS-tU38ylb1n@OSC(<~3N6gdcAg#d zjhXGg%jkOJwRq?^Z2)b?!jpn#huqHuW-myR7$XcNd^rP<_tZnHnL>SD$7DV3I>tmS z_4h}?m8u#)5XfK7neo5s@U@Y%cyqCqCn?8DMo6AQb2<2E9+qq6^+sg)$ShSF0dKy|)uT#jH*~ah7jAM%t|oC4@PTfT zOIR4(Ue?g5HiTz{!(Dfeh_c9mI!`mdrlMs2RE0reIDb$fMK5Y*s=kS}b%_y1x#=2V z`_gAwr08h>tj7GC6u&BcbWaQ`%1mNu;yg|)?{@H9@wpMrg`d|EExoSCipQCoYEQLy z>&KK5@|)z#^AN@$@|>`{Z?{Z&3@_Ew5DDC^H$d79WLvYrsehd1epe?R+} zc%OOy&^W2)NHKhIik6}N)5lrD&d#%WllxP_7)CJ>zwA))^oEQxChiL)UAI_qDr_ry z@_?MEn&MSxFO0XRVL$msLCk)(t)uYNTC*w-8}G^NE9ukc(agEK6txlO4#-I&e`^45 z1s12z7qEjp+Y!+7#nm8jm*v#0@dn|R;umBUCAu?87th_#zE3*J1ujhuE|&Dec{?X@ zxFPYH*%d_i(bPq(*qP36)k6D*2lk7FQzRE@CF01J#<(vH2m2p7aLtjYunXhDUi`jqdA~w!M&LqbtNC0_8%+%<2;&xPxq5OknGqM-=&*CyO}eep9eUB6ZFZ`0 zj#l0kJ4d_o2o{|XD zs%CNIeBff?g+^EDHmb@!X)#c-BY}&z1U%8-(SPyDY|T_Y6A?0gc<#R0ZI10*#m>>b z)t)-7>9K0CJu7pRAO82nLfCX-N3eoTUTC&2n0%$^*c>{uv<=J=vq78 zB`7j>(f(D`>*2KLem?Jf{`MiJhojI*(Q#`2nsHzZE~xVBZ)>ZzxHya^x6C_@JXM3r zta5RtW@c^!4x_4KaUbp1s*F7q*Y>Z%9H?nu1aceP*1&ybKUbzy?wBWicj}(DZbP=K zQy8n$`?aNFv3z|*-)lHK18l$f3-+fjHRPXfxd|!#kP~07z-mwz$4(oX&y2k9SHqY; z)zW3!h?!9*PiGuzr!y2PhN&-5ShNpPnXD#kGazf#)kKU@pV6aQYXj&+WN&VeImMPX zZl|=D;iy~RNv0I%9UUch{E4Nj);uH?8P&Zm8lIX`)2Z*{qwmsyynE(lEDAuQ;Z&*Jw@wfZe=Dy z|2Jgvcw;Q`{C7u?VDf%@#};l+eEK9?o4{4O*2K@%VD_|2V(-48CGNbw7@3n&a-|d@ zsT!Lswu~d(OTR#z2@S9+gii%s2P=<88M?h0bJW_b{`z!pos;%iUl=f-SQWQnaEk(_0iW-8_s-c6aq%^dpeHuhbBVtx!9!n5&CyJQGEYuWY z2x6=u-}SWbyWaO*?_b{^-#_14cdfH-R_?v$?6c2r|Moe1?>!Q1(+{RW74P*DBt-4L zN&F`2;8&BfUrXFi;fYkT6+#O<%UD&m6-EX2Yt>QXDmGgJ(*iY5LYABvx6JK%ywxYw z(tm*py)*C8Gczu-$i-Slf8UtnecE#eUhrsd2<-O+q?gdP0JHi!=5p>)N9ptRNnDEg zihUGuAg)6>Fj=zDIl_?7kC-5hIbOFvDNC)fP~IvH-muS_3UpS*u5kqQgOZ7myn>IN zvohG-rJB!eV4pvK&iBY^++}W*Ro5q3UCrCjfVx;~)AHtHceQvjsCxADrm|G2tuafF zmD;4JSPmhSoE!0&P=7;%SI*SA>+3#5%I4Vp?eUcuW%9U8(wcb_-4_daT45pgwB132 zoGnGKiE)xso+v`D_zuo-ihL%ZboXitVJ|i#hT@h~OUpyO!$;$<*KRLSw4EV}m-^%(M}uqK_YGBi zYWx(NT{d_l3G)isY2OiSK|1U|ly+w_;15^#_BQ(-yxkthaQ8Qpq|vWBxHzP2zt^|F z7wI0=AN=Sx1y#9^QSs9TJk*Z`k%yjy+B~KOo3*1oSee)*rq!2s z4sDd$yT?6NZ|2UUJHzL{)ZMnDw8(oWBrk*TP|djR%@%yyN7Ij0ZMA8CUiDp^h3j)o zj-8^(#^e|)JNs-OQq_m0%WMFhPppI))av&*2b13(bMre#sB7$pA%!&31Oy;$2uV@W zIA3}Pl6`I@JIfLxnIvBnZkfy%D}df!U`pZ_?7gcv5?e3l+PNnd||;e;gxOQp{pWx#smZmNGMQdzJj@YTgp;s(x(K`J<*V4dAj#+lv%my0-QAMku~1 zkWH)PIBw|0Uo_Cn7IPn}d-eXoMeu$JjQ#}_Kw4=2hq_9x!?OU*bS0BW56JzmtJ-%- z+Y<}fvck!o<2gM;m5y($E=d#}m-`zQ*S*jC(_ePC zc;pR>ts0-kz!=x|jq{_8x=$^|9RuKxPtB_~v8dvhnP0Eh@{+r-((QUNRLw%6hlp&i zMb=oT}hS&>xdC+&B%>*h2a)dBRiSIU_|3S0%_%STJ?)_2$gq3P|wT_|sIRI(WY; zAON$fNO-z}=Gf~W+yrlnGLB2N*R1)T1*6Bl6&sHA?6cLbl_6+BPvOT%ESh&skRaDZmv!g(V!3fTxx9m5$YzKRFXERppv z`j^&%m*GBjKSC|)GcFfDE=iPKvd%41PkY}=n{v9-TUlbs3~XOp7;*N2zk|>*wr0rTglpXEVm_)8Indg zPfqYSP}|>^>4J}-_>Zdn%yd%8rL})EM8DqMV0LDJz8(EM4;V-8plkn ztAQCzMmB!W8X^w?Enj)~0jpLuM!k!7Iw!LZdgm5~rVJhH2?Jv_m{M8-S7^DNPQ~7g zwfd&d)#tGz+1`w;{zFfW0NGq%`pW1l<5(nnO7xgYc6`*B1NXAC6aeC2o84$^ELPl6-()eu8bx~mKT$d)y}19D+y z*bPD!qxy=kI3u9hJ1lui&h2Z9;|>@p$Cuy0bd7tuj=_5%Nv*7Rfiu!CJbni*Q$UiF z8qcgDeOg87>mLAc7v$5|4j|^802;IZ zoH*>J7vs}9>Rq8O8WvP%G@~=U2s54;C$~^7T4(>N35HqCbmqlOejBW`TpEpH9`0Cj zUEK@S^j09B+g#E;ugGPn0j`mQw9eHHb!qxgRFiN*zr$NsRl=tHPF^WR3ES^*q3~RD z?dCkmo#dcVT`x^<3=f0DH#$~F-j2-nznG&;)0zcmCD!QFC>PDMAbnxU5C)1*f;8|N zzk`f4e_&wId2?9O#YXqf#6mc+cQ4?m14}9&P|ORu-5^RIlstSlmIsx6GCvxV*fMV@ zVSdL2nw|B3T9}R`R2ubX^8!Hm8?=$g5&c0ESG^aO?G> zie`!mfS1w5zzaNd2e{3TKL^5xW5uU@4N$I;^` z;EHw?@&PsFz+Efm{&(v7i@`oV<$-oVvEY3T3e@b~k2@^u>6iIRm|ywBTsPOK3;W0m zdKtSX`>5`Gl0dZ2n^AY`ldZJ5Zh4rTt;tfEM2N*WODxG=$hxuX$J4#$6>T7+ZZ#+1*2$$SD#K&mo`4u_qLPfMRxl{Y;_Z7oa> zF{WWZq+DzSfD4?5gsz>*9HK4d51&!mC&y;ymu~3j850UDU8wMu;b9J-!Q$Zg@8teV zlw7~C=dDH2I}M6^{RD=d5~T3ru`BuSb{c4qw9l)Rn~yO3R@}^m)=9$PXZ0&1rc|3m z%0Ql17c!DfbQRVoXD6Z~%|>6aQiD>>U%sqbcr~11+CZUDbnYV83}O<|^Dk*xh^w*x zK<0QA4NG7^%tFj{ecdvb^Hw3;@k!{ksr@+S!x4aJ@0kW_0dVQ(4%{VKw*9_i0JpM_ znP{m4+w1n50<_rJ(kyPU3=4>_)@_2@*T{0gQtTW#P_w1=;Fz7Qiouu1fw)r8Xg9de z;IeSv(>^u)&45129|0PU9i(%{EB&}NH&7DAJ&<%zCBX^Y<+75f;_KZmk?0rC2JJg= zxd#+a{!Gw1OAcJm$?^LgkZK(1KLO@vN1(t$ByG20Nt$CniezcRot;=Yn<_6h2-t0+ z8~COT+bT^E@!eepxB7zZ**MF1jjJ z;M(Hd0~mA_jrh_V?QVXh7`ZSLs9yTZxt|I&l|oXe->s9?R>#!?; zlYBg98#+{O<97H-(Nz9mtrk&EcfIqZ9?~Va@s{OGkd6(OmitY7R1Ck7(HMNeM-`Jt zBurTs)_Iz#>}1^Rd`9GkAG{{kk*%$U)5-_3;;wmhDC1_P!(hYH4}5gK{Nng(1f(~P z;VpwH)%q6{JxLUs5k0J$;aM*my`F#7qSbdsuBRY2z;5N>%Id~b9|+wHu1J_9=x54f z1Y0f9OP(0zfe*JN>nOiI7=$qr?;__}>mnM=*?X`Zk4vk}+9o-AlDzO@eRS7hgbUiR z>_YuBl}sd;&uw*KpXL%f%Rv{->b}iv3Go%zsFv+y6QrwkDEHR3=R#;wBl6vl^-_)< zmd-ayZczwBgpo$jX5whGTrGFk>HNdf9U@KMzx~A0u_Uht>5B02G3O)$t;>FNR)V5ot^nmE<5V}#-Eo1|Ao}?rvWU^gy@vt(4jkL{B;J+1CaQbf!*!VE3vOP`*SXt^Y0rge zrq7Mm#$*@zFmaq$f$9nGr)a`c#k0|py4>U^kelr{EN8UMsEp%8#F_iy%`J1 z96J=e)=mGgs;NcGf+$77K+e4fnmB;lCW30-zgWB>x zyvA8y$|RFV^((ZSJaGP-`X$KSNl&vkvFh?hvx*6Z**F#RU6DH|jlROIZMgGkeLT0a z}&O5IK?5S>%Q(8OQ6vN+XUyDk03#fhVsR}eEKpaGGunY12W#Zk#(19Iw%hYyJ ze4gU_zC}(=Pv2^rbDUbG8P>0d5Xs%SH)(|{wUn;%LKcZVCwUF|i*FtD%dTd-_B?C( zQhrgnTsioviq*wh+gil^y>|u^ZqF)I(yg0(A^TaTYs#My3fk}H3``h)V6ZNGc_&b8 z67Xq%`9M?;@n5P%^rHKO{N!IZZJ=D=xxL8??9OVM(zR;75svUL+{$^&2*18LK;HEX z)`>28Cj`~td7qGgTX4GAoiS^1NIik%q}}@k&I^QqFzu;$mPo0<20`X#=n^FOMxKdC zL3=>;Q&9MRk(PS?;^d{g>)Hu_QkTdDz6oX3itjU%O90^qW*OBcbDkE|)(hQbFV*IN z5Q78Pq%{Lw(?DK)T^gw+)GOov_dR!+odBb#3oL@GQCsTwP9gQPm_B zFSMGVrTO{veP5er*uUa4?cn`eB+tx}MPcAF2e@#ov+Aq0SGF=xw?KRz3d9YR?;-*# zZ<~D0Aa6`i?xNm=+exSwv~NJQZ7QNj)+rq1!HFn`&Vlt&18UT7>q|?}92r$7v|7FL z*zl6w2H zSNKLOqa4>;s-6}b5HwNR8y&w~?EmR5ue=jS?fI|-d^+Ala&l+ZnL7JdPJcfSzgv)i zk*K*h8oTSjE*s{cDs^V4FTL+Z>lQRv+lIuClKpC8rh5q*htb1CgPedJDbsjl^ayao zX;&5%Y6qUH{D({a%febeKRD<92X*+xApSo$tBgZrAA`qbwTcI|>;OG&;~RyVjxYWP D4^&iu