From c39b05c9feb8f89f21c43e5e85d7e4db51770bb2 Mon Sep 17 00:00:00 2001 From: Johan Larsson Date: Fri, 31 May 2024 10:32:45 +0200 Subject: [PATCH] refactor: manually supply date-modified dates instead This might just be the right thing to do generally anyway. --- .../index/execute-results/html.json | 4 ++-- .../index/execute-results/html.json | 4 ++-- .../index/figure-html/eulerr_plot-1.png | Bin 36211 -> 36211 bytes .../index/figure-html/eulerr_plot-2.png | Bin 32589 -> 32589 bytes .../index/figure-html/residual_plot-1.png | Bin 20150 -> 20150 bytes .../index/figure-html/unnamed-chunk-2-1.png | Bin 3511 -> 3511 bytes .../index/execute-results/html.json | 4 ++-- .../index/execute-results/html.json | 4 ++-- .../index/figure-html/unnamed-chunk-2-1.png | Bin 10117 -> 10117 bytes .../index/figure-html/unnamed-chunk-3-1.png | Bin 2962 -> 2962 bytes .../index/figure-html/unnamed-chunk-4-1.png | Bin 51563 -> 51521 bytes .../index/execute-results/html.json | 4 ++-- .../index/figure-html/unnamed-chunk-3-1.png | Bin 97055 -> 97055 bytes .../index/figure-html/unnamed-chunk-5-1.png | Bin 44937 -> 43993 bytes .../2016-10-15-introducing-qualpalr/index.qmd | 1 + blog/2016-10-19-introducing-eulerr/index.qmd | 1 + blog/2016-10-30-farthest-points/index.qmd | 1 + .../index.qmd | 1 + blog/2020-04-14-slope-0-2-0/index.qmd | 3 ++- blog/2024-05-13-projectroot-jl-new/index.qmd | 1 + blog/2024-05-22-phd-thesis/index.md | 2 +- 21 files changed, 18 insertions(+), 12 deletions(-) diff --git a/_freeze/blog/2016-10-15-introducing-qualpalr/index/execute-results/html.json b/_freeze/blog/2016-10-15-introducing-qualpalr/index/execute-results/html.json index 449dc47..c631559 100644 --- a/_freeze/blog/2016-10-15-introducing-qualpalr/index/execute-results/html.json +++ b/_freeze/blog/2016-10-15-introducing-qualpalr/index/execute-results/html.json @@ -1,8 +1,8 @@ { - "hash": "e75a7794f76146f813b05634c39febb6", + "hash": "ea209c0b37af13678a38497448dbea96", "result": { "engine": "knitr", - "markdown": "---\ntitle: \"Introducing qualpalr\"\nauthor: \"Johan Larsson\"\ndate: \"2016-10-15\"\ndescription: |\n Let me introduce qualpalr: an R package that generates qualitative color\n palettes with distinct colors using color difference algorithms.\ncategories:\n - r\n - data visualization\n - qualpalr\nimage: qualpalr.png\nexecute:\n echo: true\n warning: false\nformat:\n html:\n fig-width: 5\n fig-height: 5\n---\n\n\n## Introduction\n\nWith the advent of [colorbrewer](http://colorbrewer2.org/) there now exists good options to generate color palettes for sequential, diverging, and qualitative data. In R, these palettes can be accessed via the popular [RColorBrewer](https://cran.r-project.org/package=RColorBrewer) package. Those palettes, however, are limited to a fixed number of colors. This isn't much of a problem for sequential of diverging data since we can interpolate colors to any range we desire:\n\n\n::: {.cell}\n\n```{.r .cell-code}\npal <- RColorBrewer::brewer.pal(4, \"PuBuGn\")\ncolor_ramp <- colorRampPalette(pal, space = \"Lab\") \n```\n:::\n\n\nThere is not, however, an analogue for qualitative color palettes that will get you beyond the limits of 8--12 colors of colorbrewer's qualitative color palettes. There is also no customization in colorbrewer. Other R packages, such as [colorspace](https://cran.r-project.org/package=colorspace) offer this, but they are primarily adapted to sequential and diverging data -- not qualitative data.\n\nThis is where qualpalr comes in. qualpalr provides the user with a convenient way of generating distinct qualitative color palettes, primarily for use in R graphics. Given `n` (the number of colors to generate), along with a subset in the [hsl color space](https://en.wikipedia.org/wiki/HSL_and_HSV) (a cylindrical representation of the RGB color space) `qualpalr` attempts to find the `n` colors in the provided color subspace that *maximize the smallest pairwise color difference*. This is done by projecting the color subset from the HSL color space to the DIN99d space. DIN99d is (approximately) perceptually uniform, that is, the euclidean distance between two colors in the space is proportional to their perceived difference.\n\n## Examples\n\n`qualpalr` relies on one basic function, `qualpal()`, which takes as its input `n` (the number of colors to generate) and `colorspace`, which can be either\n\n* a list of numeric vectors `h` (hue from -360 to 360), `s` (saturation from 0 to 1), and `l` (lightness from 0 to 1), all of length 2, specifying a min and max, or\n* a character vector specifying one of the predefined color subspaces, which at the time of writing are *pretty*, *pretty_dark*, *rainbow*, and *pastels*.\n\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(qualpalr)\npal <- qualpal(\n n = 5,\n list(\n h = c(0, 360),\n s = c(0.4, 0.6),\n l = c(0.5, 0.85)\n )\n)\n\n# Adapt the color space to deuteranopia\npal <- qualpal(n = 5, colorspace = \"pretty\", cvd = \"deutan\")\n```\n:::\n\n\nThe resulting object, `pal`, is a list with several color tables and a distance\nmatrix based on the din99d color difference formula.\n\n\n::: {.cell}\n\n```{.r .cell-code}\npal\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n---------------------------------------- \nColors in the HSL color space \n\n Hue Saturation Lightness\n#73CA6F 117 0.46 0.61\n#D37DAD 327 0.50 0.66\n#C6DBE8 203 0.42 0.84\n#6C7DCC 229 0.48 0.61\n#D0A373 31 0.50 0.63\n\n ---------------------------------------- \nDIN99d color difference distance matrix \n\n #73CA6F #D37DAD #C6DBE8 #6C7DCC\n#D37DAD 28 \n#C6DBE8 19 21 \n#6C7DCC 27 19 19 \n#D0A373 19 18 20 25\n```\n\n\n:::\n:::\n\n\nMethods for `pairs` and `plot` have been written for `qualpal` objects to help\nvisualize the results.\n\n\n::: {.cell}\n\n```{.r .cell-code}\nplot(pal)\n```\n\n::: {.cell-output-display}\n![Multidimensional scaling plot](index_files/figure-html/fig-multidim-1.png){#fig-multidim width=480}\n:::\n:::\n\n::: {.cell}\n\n```{.r .cell-code}\npairs(pal, colorspace = \"DIN99d\", asp = 1)\n```\n\n::: {.cell-output-display}\n![Pairs plot in the din99d color space](index_files/figure-html/fig-pairs-1.png){#fig-pairs width=480}\n:::\n:::\n\n\nThe colors are normally used in R by fetching the `hex` attribute of the palette.\nAnd so it is straightforward to use the output to, say, color the \nprovinces of France (@fig-france).\n\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(maps)\nmap(\"france\", fill = TRUE, col = pal$hex, mar = c(0, 0, 0, 0))\n```\n\n::: {.cell-output-display}\n![A map of France colored via qualpalr](index_files/figure-html/fig-france-1.png){#fig-france width=480}\n:::\n:::\n\n\n## Details\n\n`qualpal` begins by generating a point cloud out of the HSL color subspace\nprovided by the user, using a quasi-random torus sequence from\n[randtoolbox](https://cran.r-project.org/package=randtoolbox). Here is the\ncolor subset in HSL with settings `h = c(-200, 120), s = c(0.3, 0.8), l =\nc(0.4, 0.9)`.\n\n\n::: {.cell}\n::: {#fig-hsl-space .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nPoints in the HSL space\n:::\n:::\n\n\nThe function then proceeds by projecting these colors into the sRGB space\n(@fig-rgb-space).\n\n\n::: {.cell}\n::: {#fig-rgb-space .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nThe colors in the RGB space\n:::\n:::\n\n\nIt then continues by projecting the colors, first into the XYZ space, then\nCIELab (not shown here), and then finally the DIN99d space (@fig-din99d-space).\n\n\n::: {.cell}\n::: {#fig-din99d-space .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nColors in DIN99d space\n:::\n:::\n\n\nThe DIN99d color space [@cui2002] is a euclidean, perceptually uniform color space. This means that the difference between two colors is equal to the euclidean distance between them. We take advantage of this by computing a distance matrix on all the colors in the subset, finding their pairwise color differences. We then apply a power transformation [@huang2015] to fine tune these differences.\n\nTo select the `n` colors that the user wanted, we proceed greedily: first, we find the two most distant points, then we find the third point that maximizes the minimum distance to the previously selected points. This is repeated until `n` points are selected. These points are then returned to the user; below is an example using `n = 5.`\n\n\n::: {.cell}\n::: {#fig-selected .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nFinal selected colors using the qualpalr algorithm\n:::\n:::\n\n\n### Color specifications\n\nAt the time of writing, qualpalr only works in the sRGB color space with the CIE Standard Illuminant D65 reference white. \n\n## Future directions\n\nThe greedy search to find distinct colors is crude. Particularly when searching\nfor few colors, the greedy algorithm will lead to sub-optimal results. Other\nsolutions to finding points that maximize the smallest pairwise distance \namong them are welcome.\n\n## Thanks\n\n[Bruce Lindbloom's webpage](http://www.brucelindbloom.com/) has\nbeen instrumental in making qualpalr. Also thanks to\n[i want hue](http://tools.medialab.sciences-po.fr/iwanthue/), which inspired me\nto make qualpalr.\n\n## References\n", + "markdown": "---\ntitle: \"Introducing qualpalr\"\nauthor: \"Johan Larsson\"\ndate: \"2016-10-15\"\ndate-modified: \"2023-01-19\"\ndescription: |\n Let me introduce qualpalr: an R package that generates qualitative color\n palettes with distinct colors using color difference algorithms.\ncategories:\n - r\n - data visualization\n - qualpalr\nimage: qualpalr.png\nexecute:\n echo: true\n warning: false\nformat:\n html:\n fig-width: 5\n fig-height: 5\n---\n\n\n## Introduction\n\nWith the advent of [colorbrewer](http://colorbrewer2.org/) there now exists good options to generate color palettes for sequential, diverging, and qualitative data. In R, these palettes can be accessed via the popular [RColorBrewer](https://cran.r-project.org/package=RColorBrewer) package. Those palettes, however, are limited to a fixed number of colors. This isn't much of a problem for sequential of diverging data since we can interpolate colors to any range we desire:\n\n\n::: {.cell}\n\n```{.r .cell-code}\npal <- RColorBrewer::brewer.pal(4, \"PuBuGn\")\ncolor_ramp <- colorRampPalette(pal, space = \"Lab\") \n```\n:::\n\n\nThere is not, however, an analogue for qualitative color palettes that will get you beyond the limits of 8--12 colors of colorbrewer's qualitative color palettes. There is also no customization in colorbrewer. Other R packages, such as [colorspace](https://cran.r-project.org/package=colorspace) offer this, but they are primarily adapted to sequential and diverging data -- not qualitative data.\n\nThis is where qualpalr comes in. qualpalr provides the user with a convenient way of generating distinct qualitative color palettes, primarily for use in R graphics. Given `n` (the number of colors to generate), along with a subset in the [hsl color space](https://en.wikipedia.org/wiki/HSL_and_HSV) (a cylindrical representation of the RGB color space) `qualpalr` attempts to find the `n` colors in the provided color subspace that *maximize the smallest pairwise color difference*. This is done by projecting the color subset from the HSL color space to the DIN99d space. DIN99d is (approximately) perceptually uniform, that is, the euclidean distance between two colors in the space is proportional to their perceived difference.\n\n## Examples\n\n`qualpalr` relies on one basic function, `qualpal()`, which takes as its input `n` (the number of colors to generate) and `colorspace`, which can be either\n\n* a list of numeric vectors `h` (hue from -360 to 360), `s` (saturation from 0 to 1), and `l` (lightness from 0 to 1), all of length 2, specifying a min and max, or\n* a character vector specifying one of the predefined color subspaces, which at the time of writing are *pretty*, *pretty_dark*, *rainbow*, and *pastels*.\n\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(qualpalr)\npal <- qualpal(\n n = 5,\n list(\n h = c(0, 360),\n s = c(0.4, 0.6),\n l = c(0.5, 0.85)\n )\n)\n\n# Adapt the color space to deuteranopia\npal <- qualpal(n = 5, colorspace = \"pretty\", cvd = \"deutan\")\n```\n:::\n\n\nThe resulting object, `pal`, is a list with several color tables and a distance\nmatrix based on the din99d color difference formula.\n\n\n::: {.cell}\n\n```{.r .cell-code}\npal\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n---------------------------------------- \nColors in the HSL color space \n\n Hue Saturation Lightness\n#73CA6F 117 0.46 0.61\n#D37DAD 327 0.50 0.66\n#C6DBE8 203 0.42 0.84\n#6C7DCC 229 0.48 0.61\n#D0A373 31 0.50 0.63\n\n ---------------------------------------- \nDIN99d color difference distance matrix \n\n #73CA6F #D37DAD #C6DBE8 #6C7DCC\n#D37DAD 28 \n#C6DBE8 19 21 \n#6C7DCC 27 19 19 \n#D0A373 19 18 20 25\n```\n\n\n:::\n:::\n\n\nMethods for `pairs` and `plot` have been written for `qualpal` objects to help\nvisualize the results.\n\n\n::: {.cell}\n\n```{.r .cell-code}\nplot(pal)\n```\n\n::: {.cell-output-display}\n![Multidimensional scaling plot](index_files/figure-html/fig-multidim-1.png){#fig-multidim width=480}\n:::\n:::\n\n::: {.cell}\n\n```{.r .cell-code}\npairs(pal, colorspace = \"DIN99d\", asp = 1)\n```\n\n::: {.cell-output-display}\n![Pairs plot in the din99d color space](index_files/figure-html/fig-pairs-1.png){#fig-pairs width=480}\n:::\n:::\n\n\nThe colors are normally used in R by fetching the `hex` attribute of the palette.\nAnd so it is straightforward to use the output to, say, color the \nprovinces of France (@fig-france).\n\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(maps)\nmap(\"france\", fill = TRUE, col = pal$hex, mar = c(0, 0, 0, 0))\n```\n\n::: {.cell-output-display}\n![A map of France colored via qualpalr](index_files/figure-html/fig-france-1.png){#fig-france width=480}\n:::\n:::\n\n\n## Details\n\n`qualpal` begins by generating a point cloud out of the HSL color subspace\nprovided by the user, using a quasi-random torus sequence from\n[randtoolbox](https://cran.r-project.org/package=randtoolbox). Here is the\ncolor subset in HSL with settings `h = c(-200, 120), s = c(0.3, 0.8), l =\nc(0.4, 0.9)`.\n\n\n::: {.cell}\n::: {#fig-hsl-space .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nPoints in the HSL space\n:::\n:::\n\n\nThe function then proceeds by projecting these colors into the sRGB space\n(@fig-rgb-space).\n\n\n::: {.cell}\n::: {#fig-rgb-space .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nThe colors in the RGB space\n:::\n:::\n\n\nIt then continues by projecting the colors, first into the XYZ space, then\nCIELab (not shown here), and then finally the DIN99d space (@fig-din99d-space).\n\n\n::: {.cell}\n::: {#fig-din99d-space .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nColors in DIN99d space\n:::\n:::\n\n\nThe DIN99d color space [@cui2002] is a euclidean, perceptually uniform color space. This means that the difference between two colors is equal to the euclidean distance between them. We take advantage of this by computing a distance matrix on all the colors in the subset, finding their pairwise color differences. We then apply a power transformation [@huang2015] to fine tune these differences.\n\nTo select the `n` colors that the user wanted, we proceed greedily: first, we find the two most distant points, then we find the third point that maximizes the minimum distance to the previously selected points. This is repeated until `n` points are selected. These points are then returned to the user; below is an example using `n = 5.`\n\n\n::: {.cell}\n::: {#fig-selected .cell-output-display}\n\n```{=html}\n
\n\n```\n\n\nFinal selected colors using the qualpalr algorithm\n:::\n:::\n\n\n### Color specifications\n\nAt the time of writing, qualpalr only works in the sRGB color space with the CIE Standard Illuminant D65 reference white. \n\n## Future directions\n\nThe greedy search to find distinct colors is crude. Particularly when searching\nfor few colors, the greedy algorithm will lead to sub-optimal results. Other\nsolutions to finding points that maximize the smallest pairwise distance \namong them are welcome.\n\n## Thanks\n\n[Bruce Lindbloom's webpage](http://www.brucelindbloom.com/) has\nbeen instrumental in making qualpalr. Also thanks to\n[i want hue](http://tools.medialab.sciences-po.fr/iwanthue/), which inspired me\nto make qualpalr.\n\n## References\n", "supporting": [ "index_files" ], diff --git a/_freeze/blog/2016-10-19-introducing-eulerr/index/execute-results/html.json b/_freeze/blog/2016-10-19-introducing-eulerr/index/execute-results/html.json index c964a7d..2665328 100644 --- a/_freeze/blog/2016-10-19-introducing-eulerr/index/execute-results/html.json +++ b/_freeze/blog/2016-10-19-introducing-eulerr/index/execute-results/html.json @@ -1,8 +1,8 @@ { - "hash": "5413aae9fd2d6c2a1221670b83d3631b", + "hash": "d6843746bd163154915c5d34a2055a97", "result": { "engine": "knitr", - "markdown": "---\ntitle: \"Introducing eulerr\"\nauthor: \"Johan Larsson\"\ndate: \"2016-10-19\"\ndescription: |\n This is an introduction to my new package, eulerr, an R package that computes\n and plots eulerr diagrams of set relationships.\ncategories:\n - r\n - eulerr\n - euler diagrams\n - data visualization\nimage: eulerr.svg\n---\n\n\n\n\n**eulerr** is an [R](https://www.r-project.org) package that generates\narea-proportional euler diagrams to display set\nrelationships (intersections, unions, and disjoints) with circles.\n[Euler diagrams](https://en.wikipedia.org/wiki/Euler_diagram) are Venn\ndiagrams without the requirement that all set interactions be present (whether\nthey are empty or not). That is, depending on input, eulerr will sometimes\nproduce Venn diagrams but sometimes not.\n\n## Background\n\nR features a number of packages that produce Euler and/or Venn diagrams;\nsome of the more prominent ones (on CRAN) are\n\n* [eVenn](https://cran.r-project.org/package=eVenn),\n* [VennDiagram](https://cran.r-project.org/package=VennDiagram),\n* [venn](https://cran.r-project.org/package=venn),\n* [colorfulVennPlot](https://cran.r-project.org/package=colorfulVennPlot), and\n* [venneuler](https://cran.r-project.org/package=venneuler).\n\nThe last of these (venneuler) serves as the primary inspiration for this package,\nalong with the refinements that Ben Fredrickson has presented on his\n[blog](http://www.benfrederickson.com/) and made available in his javascript\n[venn.js](https://github.com/benfred/venn.js).\n\nvenneuler, however, is written in java, preventing R users from \nbrowsing the source code (unless they are also literate in java) or\ncontributing. Furthermore, venneuler is known to produce imperfect output for\nset configurations that have perfect solutions. Consider,\nfor instance, the following example in which the intersection between `A` and\n`B` is unwanted.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(venneuler, quietly = TRUE)\nvenn_fit <- venneuler(c(A = 75, B = 50, \"A&B\" = 0))\nplot(venn_fit)\n```\n\n::: {.cell-output-display}\n![venneuler plot with unwanted overlap.](index_files/figure-html/unnamed-chunk-2-1.png){fig-align='center' width=384}\n:::\n:::\n\n\n## Enter eulerr\n\neulerr is based on the improvements to **venneuler** that Ben Fredrickson\nintrocued with **venn.js** but has been coded from scratch, uses different\noptimizers, and returns the residuals and stress statistic that venneuler\nfeatures. \n\n### Input\n\nCurrently, it is possible to provide input to `eulerr` as either\n\n* a named numeric vector or\n* a matrix of logicals with columns representing sets and rows the set\nrelationships for each observation.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(eulerr)\n\n# Input in the form of a named numeric vector\nfit1 <- euler(c(\"A\" = 25, \"B\" = 5, \"C\" = 5,\n \"A&B\" = 5, \"A&C\" = 5, \"B&C\" = 3,\n \"A&B&C\" = 3))\n\n# Input as a matrix of logicals\nset.seed(1)\nmat <-\n cbind(\n A = sample(c(TRUE, TRUE, FALSE), size = 50, replace = TRUE),\n B = sample(c(TRUE, FALSE), size = 50, replace = TRUE),\n C = sample(c(TRUE, FALSE, FALSE, FALSE), size = 50, replace = TRUE)\n )\nfit2 <- euler(mat)\n```\n:::\n\n\n### Fit\n\nWe inspect our results by printing the eulerr object\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nfit2\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n original fitted residuals regionError\nA 13 13 0 0.008\nB 4 4 0 0.002\nC 0 0 0 0.000\nA&B 17 17 0 0.010\nA&C 5 5 0 0.003\nB&C 1 0 1 0.024\nA&B&C 2 2 0 0.001\n\ndiagError: 0.024 \nstress: 0.002 \n```\n\n\n:::\n:::\n\n\nor directly access and plot the residuals.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\n# Cleveland dot plot of the residuals\ndotchart(resid(fit2))\n\nabline(v = 0, lty = 3)\n```\n\n::: {.cell-output-display}\n![Residuals for the eulerr fit.](index_files/figure-html/residual_plot-1.png){fig-align='center' width=384}\n:::\n:::\n\n\nThis shows us that the `A&B&C` intersection is somewhat overrepresented in\n`fit2`. Given that these residuals are on the scale of the original\nvalues, however, the residuals are arguably of little concern.\n\nFor an overall measure of the fit of the solution, we use the same stress\nstatistic that Leland Wilkinson presented in his academic paper on venneuler \n[@wilkinson2012], which is given by the sums of squared residuals divided\nby the total sums of squares:\n\n$$\\frac{\\sum_{i=1}^n (f_i - y_i)^2}{\\sum_{i=1}^n (y_i - \\bar{y})^2}.$$\n\nWe fetch it from the `stress` attribute of the `eulerr` object.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nfit2$stress\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n[1] 0.00198\n```\n\n\n:::\n:::\n\n\nWe can now be confident that eulerr provides a reasonable representation of\nour input. Were it otherwise, we would do best to stop here and look for another\nway to visualize our data. (I suggest the excellent\n[UpSetR](https://cran.r-project.org/package=UpSetR) package.)\n\n### Plotting\n\nNo we get to the fun part: plotting our diagram. This is easy, as well as\nhighly customizable, with eulerr.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nplot(fit2)\n\n# Change fill colors, border type (remove) and fontface.\nplot(\n fit2,\n fills = c(\"dodgerblue4\", \"plum2\", \"seashell2\"),\n edges = list(lty = 1:3),\n labels = list(font = 2)\n)\n```\n\n::: {.cell-output-display}\n![eulerr plots can be modified in many ways.](index_files/figure-html/eulerr_plot-1.png){fig-align='center' width=240}\n:::\n\n::: {.cell-output-display}\n![eulerr plots can be modified in many ways.](index_files/figure-html/eulerr_plot-2.png){fig-align='center' width=240}\n:::\n:::\n\n\neulerr's default color palette is taken from\n[qualpalr](https://cran.r-project.org/package=qualpalr) -- another\npackage that I have developed -- which uses color difference algorithms to \ngenerate distinct qualitative color palettes.\n\n## Details\n\nDetails of the implementation will be left for a future vignette but almost\ncompletely resemble the approach documented\n[here](http://www.benfrederickson.com/better-venn-diagrams/).\n\n## Thanks\n\neulerr would not be possible without Ben Fredrickson's work on\n[venn.js](http://www.benfrederickson.com) or Leland Wilkinson's\n[venneuler](https://cran.r-project.org/package=venneuler).\n\n## References\n\n", + "markdown": "---\ntitle: \"Introducing eulerr\"\nauthor: \"Johan Larsson\"\ndate: \"2016-10-19\"\ndate-modified: \"2023-01-17\"\ndescription: |\n This is an introduction to my new package, eulerr, an R package that computes\n and plots eulerr diagrams of set relationships.\ncategories:\n - r\n - eulerr\n - euler diagrams\n - data visualization\nimage: eulerr.svg\n---\n\n\n\n\n**eulerr** is an [R](https://www.r-project.org) package that generates\narea-proportional euler diagrams to display set\nrelationships (intersections, unions, and disjoints) with circles.\n[Euler diagrams](https://en.wikipedia.org/wiki/Euler_diagram) are Venn\ndiagrams without the requirement that all set interactions be present (whether\nthey are empty or not). That is, depending on input, eulerr will sometimes\nproduce Venn diagrams but sometimes not.\n\n## Background\n\nR features a number of packages that produce Euler and/or Venn diagrams;\nsome of the more prominent ones (on CRAN) are\n\n* [eVenn](https://cran.r-project.org/package=eVenn),\n* [VennDiagram](https://cran.r-project.org/package=VennDiagram),\n* [venn](https://cran.r-project.org/package=venn),\n* [colorfulVennPlot](https://cran.r-project.org/package=colorfulVennPlot), and\n* [venneuler](https://cran.r-project.org/package=venneuler).\n\nThe last of these (venneuler) serves as the primary inspiration for this package,\nalong with the refinements that Ben Fredrickson has presented on his\n[blog](http://www.benfrederickson.com/) and made available in his javascript\n[venn.js](https://github.com/benfred/venn.js).\n\nvenneuler, however, is written in java, preventing R users from \nbrowsing the source code (unless they are also literate in java) or\ncontributing. Furthermore, venneuler is known to produce imperfect output for\nset configurations that have perfect solutions. Consider,\nfor instance, the following example in which the intersection between `A` and\n`B` is unwanted.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(venneuler, quietly = TRUE)\nvenn_fit <- venneuler(c(A = 75, B = 50, \"A&B\" = 0))\nplot(venn_fit)\n```\n\n::: {.cell-output-display}\n![venneuler plot with unwanted overlap.](index_files/figure-html/unnamed-chunk-2-1.png){fig-align='center' width=384}\n:::\n:::\n\n\n## Enter eulerr\n\neulerr is based on the improvements to **venneuler** that Ben Fredrickson\nintrocued with **venn.js** but has been coded from scratch, uses different\noptimizers, and returns the residuals and stress statistic that venneuler\nfeatures. \n\n### Input\n\nCurrently, it is possible to provide input to `eulerr` as either\n\n* a named numeric vector or\n* a matrix of logicals with columns representing sets and rows the set\nrelationships for each observation.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(eulerr)\n\n# Input in the form of a named numeric vector\nfit1 <- euler(c(\"A\" = 25, \"B\" = 5, \"C\" = 5,\n \"A&B\" = 5, \"A&C\" = 5, \"B&C\" = 3,\n \"A&B&C\" = 3))\n\n# Input as a matrix of logicals\nset.seed(1)\nmat <-\n cbind(\n A = sample(c(TRUE, TRUE, FALSE), size = 50, replace = TRUE),\n B = sample(c(TRUE, FALSE), size = 50, replace = TRUE),\n C = sample(c(TRUE, FALSE, FALSE, FALSE), size = 50, replace = TRUE)\n )\nfit2 <- euler(mat)\n```\n:::\n\n\n### Fit\n\nWe inspect our results by printing the eulerr object\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nfit2\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n original fitted residuals regionError\nA 13 13 0 0.008\nB 4 4 0 0.002\nC 0 0 0 0.000\nA&B 17 17 0 0.010\nA&C 5 5 0 0.003\nB&C 1 0 1 0.024\nA&B&C 2 2 0 0.001\n\ndiagError: 0.024 \nstress: 0.002 \n```\n\n\n:::\n:::\n\n\nor directly access and plot the residuals.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\n# Cleveland dot plot of the residuals\ndotchart(resid(fit2))\n\nabline(v = 0, lty = 3)\n```\n\n::: {.cell-output-display}\n![Residuals for the eulerr fit.](index_files/figure-html/residual_plot-1.png){fig-align='center' width=384}\n:::\n:::\n\n\nThis shows us that the `A&B&C` intersection is somewhat overrepresented in\n`fit2`. Given that these residuals are on the scale of the original\nvalues, however, the residuals are arguably of little concern.\n\nFor an overall measure of the fit of the solution, we use the same stress\nstatistic that Leland Wilkinson presented in his academic paper on venneuler \n[@wilkinson2012], which is given by the sums of squared residuals divided\nby the total sums of squares:\n\n$$\\frac{\\sum_{i=1}^n (f_i - y_i)^2}{\\sum_{i=1}^n (y_i - \\bar{y})^2}.$$\n\nWe fetch it from the `stress` attribute of the `eulerr` object.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nfit2$stress\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n[1] 0.00198\n```\n\n\n:::\n:::\n\n\nWe can now be confident that eulerr provides a reasonable representation of\nour input. Were it otherwise, we would do best to stop here and look for another\nway to visualize our data. (I suggest the excellent\n[UpSetR](https://cran.r-project.org/package=UpSetR) package.)\n\n### Plotting\n\nNo we get to the fun part: plotting our diagram. This is easy, as well as\nhighly customizable, with eulerr.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nplot(fit2)\n\n# Change fill colors, border type (remove) and fontface.\nplot(\n fit2,\n fills = c(\"dodgerblue4\", \"plum2\", \"seashell2\"),\n edges = list(lty = 1:3),\n labels = list(font = 2)\n)\n```\n\n::: {.cell-output-display}\n![eulerr plots can be modified in many ways.](index_files/figure-html/eulerr_plot-1.png){fig-align='center' width=240}\n:::\n\n::: {.cell-output-display}\n![eulerr plots can be modified in many ways.](index_files/figure-html/eulerr_plot-2.png){fig-align='center' width=240}\n:::\n:::\n\n\neulerr's default color palette is taken from\n[qualpalr](https://cran.r-project.org/package=qualpalr) -- another\npackage that I have developed -- which uses color difference algorithms to \ngenerate distinct qualitative color palettes.\n\n## Details\n\nDetails of the implementation will be left for a future vignette but almost\ncompletely resemble the approach documented\n[here](http://www.benfrederickson.com/better-venn-diagrams/).\n\n## Thanks\n\neulerr would not be possible without Ben Fredrickson's work on\n[venn.js](http://www.benfrederickson.com) or Leland Wilkinson's\n[venneuler](https://cran.r-project.org/package=venneuler).\n\n## References\n\n", "supporting": [ "index_files" ], diff --git a/_freeze/blog/2016-10-19-introducing-eulerr/index/figure-html/eulerr_plot-1.png b/_freeze/blog/2016-10-19-introducing-eulerr/index/figure-html/eulerr_plot-1.png index 70c76ff8b61c2eeeed32ef2250e65156af05618b..620dfd0fceb357c33a786551428cba89942ce198 100644 GIT binary patch delta 157 zcmex7i|O+$rU~^N@*MKK-V1N!ZfsBMsW&zZF|e>QHncJ{);2J(GB9vbDdS;aU{Eb_ zjVMV;EJ?M>%}>cpt7I@TFf!3KFxAD-U|e}_15kqoTti7_ZfbE!Vr~I$Jt;Zw^MQI8 OJlS3ST-G@yGywo=MJ$j2 delta 157 zcmex7i|O+$rU~^NV!}%7Yo1qK+t{AgQ*UGxVrXe)Y+_|#u5DmoWnfSwf3KZ^fkCyz zHKHUXu_VQHncJ{);2J(GB9vbDdU-Zr%nb_ f#<=p_hRMA3@`@OGQgYtsGXR07tDnm{r-UW|7b+id delta 107 zcmX^6kMZn3#tHQtV!}%7Yo1qK+t}_&d+J@`@OGLc-mjFaUw4tDnm{r-UW|X>=c~ diff --git a/_freeze/blog/2016-10-19-introducing-eulerr/index/figure-html/residual_plot-1.png b/_freeze/blog/2016-10-19-introducing-eulerr/index/figure-html/residual_plot-1.png index 32cb4d384820d8e82907bfde4b1cf4c2d4cead6d..13f11a7f91d9d2b075171be01547090c1a98fc6e 100644 GIT binary patch delta 130 zcmdlsmvP%%#tHQt@*MKK-V1N!Zfsxa>t<{iVqjrqY-nX@tZiUmWnkc>QpUr;z@S>< z8c~vxSdwa$o1c=IR>@#wU}U0eV5*Cu!MO6=hRJ1q@`@NTDLL=+fkrWSy85}Sb4q9e E0Jd}_l>h($ delta 130 zcmdlsmvP%%#tHQtV!}%7Yo1qK+t|L+*UiW%#L&{p*u=`fT-(6F%D|vV{$4u+1A}Ub zYeY#(Vo9o1ZhlH;S|x*#fsu)>fvGNr24<%;>&az)@`@NTA>r;%fJQNRy85}Sb4q9e E05Ps4&;S4c diff --git a/_freeze/blog/2016-10-19-introducing-eulerr/index/figure-html/unnamed-chunk-2-1.png b/_freeze/blog/2016-10-19-introducing-eulerr/index/figure-html/unnamed-chunk-2-1.png index 30552a6120b6de6171716b4ad01a50b6ea244381..235651e6b37e56475b96e8a58fd0bd19539d30e7 100644 GIT binary patch delta 130 zcmdlky8xF3@ogS4Xq4~wG9lc3=Eu9%6J$U7*tDK zBT7;dOH!?J^HVa@DjAFnj7)S5Om#6d7+0R#Fu9ypUJ*kkCFgxU&?p8^S3j3^P6OEODvxfvOS7+P8xn^+l`Ya19?85k7F-)m=JU{Eb_ zjVMV;EJ?M>%}>cpt7I@TFf!3KFxAD-!0eP}J-M7$UJ*kkB;5T8&?p8^S3j3^P6 and\nis documented at .\n\n## Euler diagrams\n\nTo come back around to where we started at, **polylabelr** has now been\nemployed in the development branch \nof **eulerr** where it is used to quickly and appropriately \nfigure out locations for the labels of the diagram.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(eulerr)\n\nplot(euler(s))\n```\n\n::: {.cell-output-display}\n![An Euler diagram with appropriate label placement.](index_files/figure-html/unnamed-chunk-4-1.png){fig-align='center' width=336}\n:::\n:::\n\n\n## References\n", + "markdown": "---\ntitle: Polygon Labeling with polylabelr\nauthor: Johan Larsson\ndate: \"2018-10-29\"\ndate-modified: \"2024-05-25\"\ndescription: A new package polylabelr can be used find visual centers of\n polygons and label Euler diagrams.\ncategories:\n - r\n - geometry\n - polylabelr\nimage: polylabelr.png\nbibliography: bibliography.bib\n---\n\n\n\n\n## Labeling Euler diagram overlaps\n\nThe purpose of my R package [eulerr](https://github.com/jolars/eulerr)\nis to fit and *visualize* Euler diagrams. Besides the various intricacies \ninvolved in fitting the diagrams, there are many interesting\nproblems involved in their visualization. One of these is the labeling of the \noverlaps.\n\nNaturally, simply positioning the labels at the shapes' centers\nfails more often than not. Nevertheless, this stategy is employed by\n**venneuler**, for instance, and the plots usually demand\nmanual tuning.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\n# an example set combination\ns <- c(\n \"SE\" = 13,\n \"Treat\" = 28,\n \"Anti-CCP\" = 101,\n \"DAS28\" = 91,\n \"SE&Treat\" = 1,\n \"SE&DAS28\" = 14,\n \"Treat&Anti-CCP\" = 6,\n \"SE&Anti-CCP&DAS28\" = 1\n)\n\nlibrary(venneuler, quietly = TRUE)\nfit_venneuler <- venneuler(s)\nplot(fit_venneuler)\n```\n\n::: {.cell-output-display}\n![A plot from venneuler with suboptimal label placements.](index_files/figure-html/unnamed-chunk-2-1.png){fig-align='center' width=336}\n:::\n:::\n\n\nUp til now, I solved this in **eulerr** by, for each overlap,\nfilling one of the involved shapes (circles or ellipses) with points\nand then numerically optimizing the location of the point using a\nNelder--Mead optimizer. However, given that the solution to\nfinding the distance between a point and an ellipse---at least one that\nis rotated---itself requires a numerical solution [@eberly2013], this procedure\nturned out to be quite inefficient.\n\n## The promise of polygons\n\nR has powerful functionality for plotting in general, but lacks \ncapabilities for drawing ellipses using curves. High-resolution \npolygons are thankfully a readily available remedy for this and have\nsince several version back been used also in **eulerr**. \n\nThe upside of using polygons, however, are that they are usually\nmuch easier, even if sometimes inefficient,\nto work with. For instance, they make constructing separate shapes\nfor each overlap a breeze using the polyclip package [@johnson2018].\n\nAnd because basically all shapes in digital maps are polygons,\nthere happens to exist a multitude of other useful tools to deal with\na wide variety of tasks related to polygons. One of these turned out\nto be precisely what I needed: polylabel [@mapbox2018] from the Mapbox suite.\nBecause the details of the library\n[have already been explained elsewhere](https://blog.mapbox.com/a-new-algorithm-for-finding-a-visual-center-of-a-polygon-7c77e6492fbc)\nI will spare you the details, but briefly put it uses quadtree\nbinning to divide the polygon into square bins, pruning away dead-ends.\nIt is inefficient and will, according to the authors, find\na point that is \"guaranteed to be a global optimum within the given precision\".\n\nBecause it appeared to be such a valuable tool for R users, I decided\nto create a wrapper for the c++ header for polylabel and bundle it as a package for R users.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\n# install.packages(\"polylabelr\")\nlibrary(polylabelr)\n\n# a concave polygon with a hole\nx <- c(0, 6, 3, 9, 10, 12, 4, 0, NA, 2, 5, 3)\ny <- c(0, 0, 1, 3, 1, 5, 3, 0, NA, 1, 2, 2)\n\n# locate the pole of inaccessibility\np <- poi(x, y, precision = 0.01)\n\nplot.new()\nplot.window(\n range(x, na.rm = TRUE),\n range(y, na.rm = TRUE),\n asp = 1\n)\npolypath(x, y, col = \"grey90\", rule = \"evenodd\")\npoints(p, cex = 2, pch = 16)\n```\n\n::: {.cell-output-display}\n![Locating poles of inaccessibility with polylabel.](index_files/figure-html/unnamed-chunk-3-1.png){fig-align='center' width=336}\n:::\n:::\n\n\nThe package [is availabe on cran](https://CRAN.R-project.org/package=polylabelr),\nthe source code is located at and\nis documented at .\n\n## Euler diagrams\n\nTo come back around to where we started at, **polylabelr** has now been\nemployed in the development branch \nof **eulerr** where it is used to quickly and appropriately \nfigure out locations for the labels of the diagram.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(eulerr)\n\nplot(euler(s))\n```\n\n::: {.cell-output-display}\n![An Euler diagram with appropriate label placement.](index_files/figure-html/unnamed-chunk-4-1.png){fig-align='center' width=336}\n:::\n:::\n\n\n## References\n", "supporting": [ "index_files" ], diff --git a/_freeze/blog/2018-10-29-polygon-labeling-with-polylabelr/index/figure-html/unnamed-chunk-2-1.png b/_freeze/blog/2018-10-29-polygon-labeling-with-polylabelr/index/figure-html/unnamed-chunk-2-1.png index 10ead7cc2bcf1bc586446562120ffe50fe8a3ecb..24645a0c358d0d62ffff3b92b1c651c9cc00baa9 100644 GIT binary patch delta 128 zcmZqmZ}p#0&mqqt$Gny4i1x@tD`NvI17mFiAZd{3BfExyfkCyzHKHUX zu_Vtfyu7w@`@NT?kp|mfkrWSy85}Sb4q9e0I(b& A^8f$< delta 128 zcmZqmZ}p#0&mktPq&(rtJob(46>4rqMj?ilR>me)#-`c^237_J+59Jb85kH;OI#yL zQW8s2t#b2IGSey->Fs0TEP!PC{xWt~$(696Uq BA~FB~ diff --git a/_freeze/blog/2018-10-29-polygon-labeling-with-polylabelr/index/figure-html/unnamed-chunk-3-1.png b/_freeze/blog/2018-10-29-polygon-labeling-with-polylabelr/index/figure-html/unnamed-chunk-3-1.png index 8c3c54ecceee6c22d2d3037d0f94cb58b42b4784..474aa326bcdb250d848c16a148f9225e9d786f01 100644 GIT binary patch delta 131 zcmbOvK1qB+HHSQh9P?JDBib9AJGn%S4MPkptc(q;42-o6fTTg9kL;Ssirg}x7%~Ea zO9dDh7&J;;BT7;dOH!>$GILXlOA>Pn7>o>zOmq!Qbusj~v$UKC>S6G7^>bP0l+XkK Dy+0wD delta 131 zcmbOvK1qB+HHVn6lJbNn^Vl~wcXEju8HE^HS{a*I8JlVw7+4t?Wb>c!ovg?$6N(`t z6;$w%fq_Az#5JNMC9x#csw6WvwYVfPw}8ROz{o_`z*HAQkFR^69#9X1r>mdKI;Vst E08fb`*Z=?k diff --git a/_freeze/blog/2018-10-29-polygon-labeling-with-polylabelr/index/figure-html/unnamed-chunk-4-1.png b/_freeze/blog/2018-10-29-polygon-labeling-with-polylabelr/index/figure-html/unnamed-chunk-4-1.png index 143df6b1401d1527c472f4357d57a7a5ceee1316..1ba7281bb3e6894fc4d8edbead38180062478704 100644 GIT binary patch literal 51521 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

A5S4cUky4;6w2JWVi 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 V diff --git a/_freeze/blog/2020-04-14-slope-0-2-0/index/execute-results/html.json b/_freeze/blog/2020-04-14-slope-0-2-0/index/execute-results/html.json index 867b5d7..bf214f0 100644 --- a/_freeze/blog/2020-04-14-slope-0-2-0/index/execute-results/html.json +++ b/_freeze/blog/2020-04-14-slope-0-2-0/index/execute-results/html.json @@ -1,8 +1,8 @@ { - "hash": "e083f5e1da4abc3d4edf54eb61515908", + "hash": "cb80b0da44faa2a147fd94f48b1d60ba", "result": { "engine": "knitr", - "markdown": "---\ntitle: \"SLOPE 0.2.0\"\nauthor: Johan Larsson\ndate: \"2020-04-14\"\ndescription: A new update to the SLOPE package with many exciting features.\ncategories:\n - r\n - SLOPE\n - statistics\nimage: slope.svg\n---\n\n\n\n\n## Introduction to SLOPE\n\nSLOPE [@bogdan2015] stands for sorted L1 penalized estimation and\nis a generalization of OSCAR [@bondell2008]. As the name \nsuggests, SLOPE\nis a type of $\\ell_1$-regularization. More specifically, SLOPE fits \ngeneralized linear models regularized with the sorted $\\ell_1$ norm. The\nobjective in SLOPE is\n\n$$\n\\operatorname{minimize}\\left\\{ f(\\beta) + J(\\beta \\mid \\lambda)\\right\\},\n$$\n\nwhere $f(\\beta)$ is typically the log-likelihood of some model in the \nfamily of generalized linear models and \n\n$$J(\\beta\\mid \\lambda) = \\sum_{i=1}^p \\lambda_i|\\beta|_{(i)}$$\n\nis the\nsorted $\\ell_1$ norm.\n\nSome people will note that this penalty is a generalization\nof the standard $\\ell_1$ norm penalty[^1]. As such,\nSLOPE is a type of sparse regression---just like the lasso. Unlike the lasso,\nhowever, SLOPE gracefully handles correlated features.\nWhereas the lasso often discards all but a few among a set of \ncorrelated features [@jia2010], \nSLOPE instead *clusters* such features together by setting such clusters to\nhave the same coefficient in absolut value.\n\n[^1]: Simply set $\\lambda_i = \\lambda_j$ for all $i,j \\in \\{1,\\dots,p\\}$ and you get the lasso penalty.\n\n## SLOPE 0.2.0\n\nSLOPE 0.2.0 is a new verison of the R package\n[SLOPE](https://CRAN.R-project.org/package=SLOPE) featuring a range of\nimprovements over the previous package. If you are completely new to the \npackage, please start with the [introductory vignette](https://jolars.github.io/SLOPE/articles/introduction.html).\n\n### More model families\n\nPreviously, SLOPE only features ordinary least-squares regression. Now the\npackage features logistic, Poisson, and multinomial regression on top of that.\nJust as in other similar packages, this is enabled simply by\nsetting `family = \"binomial\"` for logistic regression, for instance.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(SLOPE)\nfit <- SLOPE(wine$x, wine$y, family = \"multinomial\")\n```\n:::\n\n\n### Regularization path fitting\n\nBy default, SLOPE now fits a full regularization path instead of\nonly a single penalty sequence at once. This behavior is now analogous with the \ndefault behavior in glmnet.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nplot(fit)\n```\n\n::: {.cell-output-display}\n![Coefficients from the regularization path for a multinomial model.](index_files/figure-html/unnamed-chunk-3-1.png){fig-align='center' width=768}\n:::\n:::\n\n\n### Predictor screening rules\n\nThe package now uses predictor screening rules to vastly improve performance\nin the $p \\gg n$ domain. Screening rules are part of what makes\nother related packages such as glmnet so efficient. In SLOPE, we use a\nvariant of the strong screening rules for the lasso [@tibshirani2012].\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nxy <- SLOPE:::randomProblem(100, 1000)\nsystem.time({SLOPE(xy$x, xy$y, screen = TRUE)})\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n user system elapsed \n 1.056 0.002 0.134 \n```\n\n\n:::\n\n```{.r .cell-code}\nsystem.time({SLOPE(xy$x, xy$y, screen = FALSE)})\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n user system elapsed \n 2.869 0.004 0.363 \n```\n\n\n:::\n:::\n\n\n### Cross-validation and caret\n\nThere is now a function `trainSLOPE()`, which can be used to run\ncross-validation for optimal selection of `sigma` and `q`. Here, we run\n8-fold cross-validation repeated 5 times.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\n# 8-fold cross-validation repeated 5 times\ntune <- trainSLOPE(\n subset(mtcars, select = c(\"mpg\", \"drat\", \"wt\")),\n mtcars$hp,\n q = c(0.1, 0.2),\n number = 8,\n repeats = 5\n)\nplot(tune)\n```\n\n::: {.cell-output-display}\n![Cross-validation with SLOPE.](index_files/figure-html/unnamed-chunk-5-1.png){fig-align='center' width=672}\n:::\n:::\n\n\nIn addition, the package now also features a function `caretSLOPE()` that\ncan be used via the excellent caret package, which enables a swath\nof resampling methods and comparisons.\n\n### C++ and ADMM\n\nAll of the performance-critical code for SLOPE has been rewritten in \nC++. In addition, the package now features an ADMM solver for\n`family = \"gaussian\"`, enabled by setting `solver = \"admm\"` in the call\nto `SLOPE()`. Preliminary testing shows that this solver is faster for\nmany designs, particularly when there is high correlation among predictors.\n\n### Sparse design matrices\n\nSLOPE now also allows sparse design matrcies of classes from the Matrix package.\n\n### And much more...\n\nFor a full list of changes, please\nsee [the changelog](https://jolars.github.io/SLOPE/news/index.html#slope-0-2-0-unreleased).\n\n## References\n\n", + "markdown": "---\ntitle: \"SLOPE 0.2.0\"\nauthor: Johan Larsson\ndate: 2020-04-14\ndate-modified: 2023-04-08\ndescription: A new update to the SLOPE package with many exciting features.\ncategories:\n - r\n - SLOPE\n - statistics\nimage: slope.svg\n---\n\n\n\n\n## Introduction to SLOPE\n\nSLOPE [@bogdan2015] stands for sorted L1 penalized estimation and\nis a generalization of OSCAR [@bondell2008]. As the name \nsuggests, SLOPE\nis a type of $\\ell_1$-regularization. More specifically, SLOPE fits \ngeneralized linear models regularized with the sorted $\\ell_1$ norm. The\nobjective in SLOPE is\n\n$$\n\\operatorname{minimize}\\left\\{ f(\\beta) + J(\\beta \\mid \\lambda)\\right\\},\n$$\n\nwhere $f(\\beta)$ is typically the log-likelihood of some model in the \nfamily of generalized linear models and \n\n$$J(\\beta\\mid \\lambda) = \\sum_{i=1}^p \\lambda_i|\\beta|_{(i)}$$\n\nis the\nsorted $\\ell_1$ norm.\n\nSome people will note that this penalty is a generalization\nof the standard $\\ell_1$ norm penalty[^1]. As such,\nSLOPE is a type of sparse regression---just like the lasso. Unlike the lasso,\nhowever, SLOPE gracefully handles correlated features.\nWhereas the lasso often discards all but a few among a set of \ncorrelated features [@jia2010], \nSLOPE instead *clusters* such features together by setting such clusters to\nhave the same coefficient in absolut value.\n\n[^1]: Simply set $\\lambda_i = \\lambda_j$ for all $i,j \\in \\{1,\\dots,p\\}$ and you get the lasso penalty.\n\n## SLOPE 0.2.0\n\nSLOPE 0.2.0 is a new verison of the R package\n[SLOPE](https://CRAN.R-project.org/package=SLOPE) featuring a range of\nimprovements over the previous package. If you are completely new to the \npackage, please start with the [introductory vignette](https://jolars.github.io/SLOPE/articles/introduction.html).\n\n### More model families\n\nPreviously, SLOPE only features ordinary least-squares regression. Now the\npackage features logistic, Poisson, and multinomial regression on top of that.\nJust as in other similar packages, this is enabled simply by\nsetting `family = \"binomial\"` for logistic regression, for instance.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nlibrary(SLOPE)\nfit <- SLOPE(wine$x, wine$y, family = \"multinomial\")\n```\n:::\n\n\n### Regularization path fitting\n\nBy default, SLOPE now fits a full regularization path instead of\nonly a single penalty sequence at once. This behavior is now analogous with the \ndefault behavior in glmnet.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nplot(fit)\n```\n\n::: {.cell-output-display}\n![Coefficients from the regularization path for a multinomial model.](index_files/figure-html/unnamed-chunk-3-1.png){fig-align='center' width=768}\n:::\n:::\n\n\n### Predictor screening rules\n\nThe package now uses predictor screening rules to vastly improve performance\nin the $p \\gg n$ domain. Screening rules are part of what makes\nother related packages such as glmnet so efficient. In SLOPE, we use a\nvariant of the strong screening rules for the lasso [@tibshirani2012].\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\nxy <- SLOPE:::randomProblem(100, 1000)\nsystem.time({SLOPE(xy$x, xy$y, screen = TRUE)})\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n user system elapsed \n 1.198 0.004 0.159 \n```\n\n\n:::\n\n```{.r .cell-code}\nsystem.time({SLOPE(xy$x, xy$y, screen = FALSE)})\n```\n\n::: {.cell-output .cell-output-stdout}\n\n```\n user system elapsed \n 2.781 0.006 0.364 \n```\n\n\n:::\n:::\n\n\n### Cross-validation and caret\n\nThere is now a function `trainSLOPE()`, which can be used to run\ncross-validation for optimal selection of `sigma` and `q`. Here, we run\n8-fold cross-validation repeated 5 times.\n\n\n::: {.cell layout-align=\"center\"}\n\n```{.r .cell-code}\n# 8-fold cross-validation repeated 5 times\ntune <- trainSLOPE(\n subset(mtcars, select = c(\"mpg\", \"drat\", \"wt\")),\n mtcars$hp,\n q = c(0.1, 0.2),\n number = 8,\n repeats = 5\n)\nplot(tune)\n```\n\n::: {.cell-output-display}\n![Cross-validation with SLOPE.](index_files/figure-html/unnamed-chunk-5-1.png){fig-align='center' width=672}\n:::\n:::\n\n\nIn addition, the package now also features a function `caretSLOPE()` that\ncan be used via the excellent caret package, which enables a swath\nof resampling methods and comparisons.\n\n### C++ and ADMM\n\nAll of the performance-critical code for SLOPE has been rewritten in \nC++. In addition, the package now features an ADMM solver for\n`family = \"gaussian\"`, enabled by setting `solver = \"admm\"` in the call\nto `SLOPE()`. Preliminary testing shows that this solver is faster for\nmany designs, particularly when there is high correlation among predictors.\n\n### Sparse design matrices\n\nSLOPE now also allows sparse design matrcies of classes from the Matrix package.\n\n### And much more...\n\nFor a full list of changes, please\nsee [the changelog](https://jolars.github.io/SLOPE/news/index.html#slope-0-2-0-unreleased).\n\n## References\n\n", "supporting": [ "index_files" ], diff --git a/_freeze/blog/2020-04-14-slope-0-2-0/index/figure-html/unnamed-chunk-3-1.png b/_freeze/blog/2020-04-14-slope-0-2-0/index/figure-html/unnamed-chunk-3-1.png index 87cc2cb4d39be76694cd1487553fb5730f7b9716..1e7be9b11323d98bd4c0af4c3666eb2f37d4dc2f 100644 GIT binary patch delta 112 zcmbRLjdlJv)(Q0-@*FbUo$vK#H@0tWXB4UuH8u<}u&^?+urf5%HZZUtT&8r!$FGYVCS8X1KcT3Q*KSQ%St8yHv_7_3>p$a4C+ lDn=Phsk@(~TBqNyVw6|J(AD+aI*I`ZJYD@<);T3K0RYarA*28R diff --git a/_freeze/blog/2020-04-14-slope-0-2-0/index/figure-html/unnamed-chunk-5-1.png b/_freeze/blog/2020-04-14-slope-0-2-0/index/figure-html/unnamed-chunk-5-1.png index a79f02d64a18d46ae2bbeb31f68d23b5b0567968..24d4f50f8e3b025b1c869ce5ecbe831550a01b27 100644 GIT binary patch literal 43993 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�_6 zi{d0DRC4_uD#rgR@>W%fetMi+)X;qqz0eKh53^bTF`$jA&G~ny%dqJpdZ>cp0=^5Z z2O)lkof#Jf+d3T|uzCFt&fYVssV(dl=GXums9*tU(xj>&ARPgz0ty1srAQ0CcTiE3 zDn&qg?;S!99HfZ|p_hary@p6h0)!;r3g^CKe0PlZ*FA&bvB1vWd#&}4EVt?yo zufd2u4)dp0bF1D4<;wGRWO(U!CUM=U-9fi}J*fy+O(8dP=dtYzKs71;I2t&7Z=pr; zXJ0vJ!<^Rp$ z{tryqMAEySTS($E1#RjNF}bp=qDFEFrK{@cSpjQzM%>M4#_1Z`ID?4ix>z3G3cVBJ z)@BH;Ti6%n%VIltWJ&*qb|@`Ze6_DL0OviXp68SgGS7yiZ-Ls@X`#^2VHy-0V-1+f z1*bLPDq^7dl&t>;x&O>_tx}f1NcUrc&(By&11#ZfzJq$3I(=NWyES(>u=+y*jP6@% zvE;fIZRrnhxFJ=whvzIPu6N#hGOfuh(_H!VzV3e8F|1$#V!tv25Ap(lfhci%i|{%) zx&#?~`+zXRwspP!mL zDxK~4Q-Wa(rM2VXfi-(VmgauE@*TS$O1tVhIpfyFD0X5D+x~uoX4(gnU#Pim$$N4H zEu4G3r1R10PT-EgSsVkWX{s!4qf{{1wcPBR!;OlT&U&pN)HWVe zwh7rR%+Cky8aYMrh9(639ov}1+57;tw}HZv&4QBvHbr|kHzmL3xdpO_ggI(r4zz(? zU@=hDmQTTqcvIqVWgm^PKk~pVqSceVk5l~Z6z8a{??U6)vE+HRU3jI8uw$Sc6&r^_ zufoo;3sxEc09ejZbd>_EOaqxx^SEudhtaS1I%F*F$6r)yUfFM59rn=MLxnMOlou)F z4(whq3CMFhh^YWV+(eL#tQh*hUyLXcJlwNbB4;tl7RDU-nlz@QHz`_(VenkuNSgIp zTM2ucav*aC9AsI-fey%Vn+722Iq56Q<56sAWdPTc`%UfL;MJLd0!_X;SN(<5OsKcH zu;p=xs?Fu(vE@~Ev{}`Dwqnc2cS{r@Q}h!~s88d=7s#xvA^D0F22{N#e0y6ZBWiqv zcTvems5Iaoxx8cmVPd8IJk`umx(3 z&($e`=qr)yv^@QWd;0G5UWr{12P*`yO)jgPmOT>7S&cZaZ+ai14z;XatR!2 z09B@OhSV@kv`mq~gmtC7VYxXq+El}pHd-IveY#B%l4#KE2PM-zuChE)0R}%zlo{Z* zppV4#{fGXe998EAHbeV)dDY0|j1K^RZz$l$azG?MV3m=i@qLFJGT5*j>a)U&>RA7o zQKdm9s`(=u{bx_9Q5K4L4~SSX`aj5#2Ll zMnO9pL_D%-KnnEl@f4;3q`0l1z%(d)gOb7qnH|RV=Kcd+yB{Yi(_VvuO(yN^oisvYqJ41%!yak`mrM^mdM^<_<`D0?E+*&*uTys0F4^ z1**IX)5BbGj%zVA#`sl<240ToInVX=SV9XIs*q-8$kMiiZb#)G3Vh>6LF&QPe*|iS z_PJ0`)ooHvVVB37ww5^!Hb??8EHmlcM=KV0{Mx)!phME%-`iLxBXQE?dB|S>T~l+7 zfonm@xb%Rt(^er+ep3o26egEG)_fr|pl&ib;8l zUc1t8ao3t6#An1w{R6S>%>t-{oMJC1Fnl*%NOwy1f{Z}d<$fiy&P4D}SKVu~ zPW!QdvbUq2Ax9)C>6rj%v4~1tH{HSB`BQB3WAZ z8m~zUjYwEwnfwvuG^V1zxLQ+#h$0V)919ZyNW-me<3fiyc=QuX`#`$6mloF@aHWSz0pnWC%mC5b<=}Sc70$pi0xeMar1@*m}l=>;(FxV<<|Ecm#>pngZHf z4ih_1=O*59XFmLS-(K&edaU?U5ctSe@R3GTyB)X8>_5y8N@M8!Epq0R!G2Gza~I|f zeO+%KMJu1U68nL2EAU`o1R(U^rV;*4U)s(&ZYiE@gU;R96BDtHmLPV;YceFk)}-vl zw=l)>uN|l_u!X*u6=%Fi*EiJ}e zcDrpd$4ATx$yw{5uAVME-7PX|VocNPk{GQ+T25V&&g-3kzaJ+}y$5`kBt?xM@He_oi?utw%u9H*bb;X`Ety_(wM1KO zvH~kTNiXctw`1}3m5r+_lwlKW0M{&na}S(k171S4M`qxn=k;v#R+BCSz<#b4x~7;7f+N`!jVN}KWX@O+o{ z$F{vR^I7-^1ckcpe&}Eg{oJPj;WDUbA<%(pneAh)o~_&Zs7g6Z$)j^MiH0y1XmJCN=W6lllAOI7E*1hq@$?oRB1bgF94P(n49Sd{-biUGpt9| zmMeGI)}i-DTr7{F=KIl&vXT;^)B!fqkYV|PLA1OxD27(OPHC#1cDUM?nyBkQS}n}{ zNbZ4Nf=hLdY*TEiN(Ayi3GSfq$*F3;qvm6%#k`6!Wp?RZo5^N>@0VOt=+ z?Rc{ke*xSHkX=Kror7|hyZ>Hr=~_^^9X0DT`RQyoP|*m{h4#R zx+MHU7-H!X{K@Q!8`OhFZLK0_wmsqcjT@lA(K3r~ONfgbIUzhrA53=8sROzcjF%h_ zZ9$E^eV&CL>^0k{XLQiy1xaen!devgz1>s>!a)>OnpIH1RW^?W)jIF(8J^JF;#O4+ z^%KZ?7!Mm^u?C3>&v^_A->yHy{(qfhG5@cxtLl4D`j-vVY}RY2n;YUnV4eDpQRRM>ngl3+iN3Q+d*v?5l=i2?d!!$N>O*+$GPbTWT9%qNjQ^$ zg#_dre0q&{@QoS*DL(*Tlz)-8#7mj6_x!$K3U|J-ps z9d2z$BPhM*0E2^)L%G%c2jkVCVA$;R1DkBFfRVW&P({jcBt=I>B&{Yi1w>V%=!*;` zmLeR(dC^5huM`Wd_1KdnJ^SlbjzH(sQRjlS$ZzZiBQd9vmz?U>dddb==FE?+lO5;G z&R@Efm^LfW5~MKS^ReHn#I5k9CE!s0B!?hZ14kX$6uYCD+=GvFsbXzw(_I&L{W3wE zYp8(3dh}In+P#wPUUMV{6C@ zwN#g7mGXpC$8A+*Pa=M6z--{;?V@zAhbR@BqT`%CnqXX!LYd}bOlrnmMgg}pm4*NI zj&||GgSIiX+;sm<9;}ZE10@CRxQDYA;oZL}QH&pH0YTKyD$H%X!Ub|~T92>2ZDrfP zjYnq4L%J^ku{9Kt;pgCX$v&UTTylMp@2UYNvpuQR6E7l5!#GhGui=^K@VcpfD*twE zbQ3ntwPiKf=u?_M#VpXEP~K8Mr%bb4tz^xIrCNOlvXF6J@AT_o(wzgR6dr=6BQ`U(n*yKIyB|QhzV6 zDSLp`H)~w2svv%QU=}o28^OQUTI+*w6=gdUJ%i4K?M#r$`;$*jlpmze<$wHMGPe6! zG6U+Jxl8m`ujj{0Yk@Rv8ez9iZS%Zoz3W|Hi+Z^#k7cFrHnDDUKBaaU_rU!X8;6d4 zCZL{R!{d)djRyr!Z`ml+`0nph*V;T{%YK2zepVB4R0FuJ8ljI1uINuOOG~AIYVLOj z|C@tm#-(bjyWVi0wk z+N*IAK;0JgV(=%zEa8}Ke!lsgzbe!lCN+}NjEsGb>rakP@MhBeFZF85CEjSjfB#as zOaiNHOD}$lGC}Dqg<|nfyXPNi`}He9efLWVH4<>ue$~JKVW@lCkI7Xr)1PqXzXrVsPIH{2W8fGxdFI2Jau5xxD#Y_lK>v@%{s~pc^xBRukuXjW!%1foxG)A9Z zUJadWN@~tFLT6a>B)5wP}F}@CX#`c+8u6*v~@p^Gk;$d|h|(KO24reIyp z2s*YSr+T|>S@L-%ETMUiK^lqT8ZjL4yP`K0T?1Mk7>7&!hc}`(Sxe_WlG=7R=GE%h z7PXJ77G^L1!akTkEUOc&1rbloDOe3qqxS)g0X&8Upi?bqw49}?8_`~Kfe~a(bY#I_e#`@us=x|CI7!s8CVwZk6$en`KJ zf#;#K+3zDqlf^fs901xo@l3dV))(`Z25#6OTy&A`yD$w5Fc&h!MZX1sVgf$=xB5Bq zwzy|zRiBMFtcQF=Rd?n(Up@*VWB07k?#l_t7>C2>dyT2Grk>9>dN8T|QuR&>VK`Oc zjX)~UKD<$_PknlCjh`JAa8M6VI(=oy7d5lzPT>yED_8;T@$+(N=!-VEB zP<*zEo%yuGcl(uInF)8OimKY?Y_5N*SN5u;eoYixW%7C#+>`KK~u+g@AvKTl9V=0Hl>L07Hek7go9yN41stT?`K1?_pmf5ZW{6+OlrlX!u8tCZ1bM z@KhuRaGgLk%IjKC_US3M3jcedj;CJ_#h@S~#mnu0w%K^ViEd9aJ=nXL#QVMZZopAI znpowsGTCq$@hyeXPpfTXWH&wXM=E|nM90){Z4&1G(7w5YZK+SrD*A z3=HLcUN@wXJHBuktWN&DX{8w{Jbn#efobnG+B*?`S!@5Ag3P4^A5OW)v@L9n1ZM>A zgq6a$RH3H}6~Jc~(F{37gND@Jo?C9U$hcsxN@#%Ujv1AD zuDR^J<<1wA7U26xMx#H^*cMP7{cuSC*q=mtLh@!)^t0bwpp0?`JMjeJaB}<`KUpRY zBoXcg?5ApF4s{P5RvJ>8hy-qO%g!G_j&NoIe>2?Do>f}P<$d`p>maB@tDfPv$pcfM zYM~;j4TrWqW|)6vtCn~2Y;2;ahCkHyAo?uJ8#(XTJ(FQWt=5AY?4SD53XuMSzVtT$ zLHsrX-QuM;-}c_TlUt5Idix)mIoL#x3};?xWPT}b$Fyq`Y$nZ|WdD$g4KV_P(_f&K zA9gDTYm}8;MO+yfJVQw*P;R5MN;sO#i~y-+v&XN-6Vl+QWZDGe@w6TU0t0w6!(I=& z_I3eI4lWh>BIbrdjn3$Ix38BtiwSbkuH~%DzZYtuoZ##)f4a{+tA8kj?*AxSBj$#ERiCKi4Ep)LZPMxwV z#I{u}>oEhZCt^=m0TS_ut?hWX@NMbjspSspxKjvn-&CL`@gExca5jewhhFbk z5=2iZ-YefpmUP$raxXHlCsIQ0){_vgp%LfTg12bJbB>Qgz^xij69RRO*pCPoV%9?1 zCSfwm6rS++!bCe>R~1TJjkdWrdM3~MDWh_+TKi83=?k7ZS@a_5SR_o zsdzvjL#XWRiu)+iq2?-a)9i!oCLvD({*`i&W z_DQSDh$?Y=Vw!q%O4Y(UHNONG`Si;gNOId5?E(t3^5FQtWVy8a;d3v?zBH7Ex+Ew? z6lvX}sH-hN#NH-aL^c%E@{o?uk-TBxPByE10TSjFxJb`^MVC>=TgHF=G|8;#U{n~3 z=_ou4*8%+5=QRKQzP>)c%*ZFO7vSkA>QZm3|5&P>or$Rl4{wk;RG~6|_!Bqlp-|+- zNX-dd9Nae6(8m;g}HV)OXx0Ci+62Urllksq=t+HCUlxu(( zW53@&a)*k41bh{Ii}g4)y`Cs`{k{8jfx1Cd>) zeb=x*2S-jXY<}Ad7ZcGNB<_#hhPNL(&Uz`&v9J*EF)e@m9eIXaIJ7!=#GBiB1)?KN7#X;K%hpxxlXp`3!;1Q=%rjX0u}`Bgh=b* zw&8LKVpm7i1c0|$Oj5*=$Br+*Z3(vB&sCrV?^D`0CNpy5Y)qTgW~rHg0B=8mkQ+Sj zhwT6r+P?|>_|5U+q`T4&Yq$R1sPwbyp@G!n526_<7Spm@>xM}O(R|pK3}mP};J^*w z+6QjQ=W%e(x@-Wx!i}45H?+7h65FI5pWWK_h6H;4lYrydTg<}`#_zY%m$sA8o%$IM zTOq4imVz)6v@*%LbQ}+8K^cL>S)8zJDrT+>j=9Pa4NL*}0RQEWq@ohu&_+xNpEmm& zo>7;tG=H0|`Wd`?qO{sckiq&z`uVn_KP$a70}n3+uYB?q&TJ&sJ(^C(Yc~He8*T3| z9>&W71dcRuqz=g(bWqWoIVAbj=PB4M6o{RMcG6Mc!aX*{waCcQ2d#2wmme!~eORYN z%}%Z6&DcBhm4egt#I^5Q#=(f>3Tk=RWg>CdyK^hXJx~#*lU`ANW*CAqAfuv=ebXxq$`e zU)j$q6e#qFJA7C&^vU&|5!+aIZqPt_NPXd3VZo#)WZr-2igmmy`ty$>aiAkAXb48v z)LIXu5K!|*cU#;XEY&g5_?>NwnkUL)(#JoAkgz zahtost?>rvB7j^nBS*VgQFBKJwPcjL{Di79Q?d6GbNx&QzCnTDU`hW8n_3x?x$Db; zio3`e*PpTRa2fD8TC(=G%5GqkjPZZ>@yck6@Si9m-d|54Kg=dR`;_mB4_1tHOD$szC-+|)h_yqWF$v>Cy`H@FW zxxu9A|L|gV0%5;fKO*8R0PQ9tycdgYG6NBL|JVVAlD@rp^_1!x;>EZ|SJ-xSFa)4R zl1{gZ(JRUH2kp{2{!*9%#?Ax5Sg$odxHyu`psYkoW48RYpbp&Z%%;r;*+Bh(<^n~? zSKw>G`+V%!gOn^S{YYDQ*ZpAXS|{deVS1fyI>;_S1Nubu=-D&tcspcxJ_w6z|NA6| z%9*2yFcxYyD+A&rW)kcuJOD@FPTENUGBt*F1kL4ychU-GP@t>?D=sedEo!7*!hLgE+GmZ8=f;|0sX-1TJ0w#WG<4i z+u$^4xPu7Lt9uapWm65-Y3F<@^0xB<-cEKo6y?~d z;DYn-pR#p9Z)MBgR`WmAmn?p7@1d3 zBw}&0@}HwO?DWli+JKzj2QuCZ_D$CzbH6hNrNbZ~64~68az)g zHH8G#W;OD43~hkAi-2i0=mwWVCe;^xLT+z4G<@oKLxsA!@&aA;&HQJLmj_}w{KHIxTg**NCK!?ddJR&?i|T+l@t7eBF6$Fqgf$@Pz6cgw973`L=SVkhx4QozsD6!% zow}(W$I)L?Jy3los%NO4=h}#ceP(#kVWMp&kla2Mp*W7n2YMHV3U}ZF)`WLrzgg*? zkwenD(~wkvjcvyKetOI1RDxO@xQ|?c0=fn}U8ABB21NUPXx5Ud? zC(dB;^^|ng0(Km88ZiOm*XxO^dXfGhOxQNT-AAl^949Qs!Q@|XdX#ewGGrZ=?8>6kKQdyCDlGGh<9?Cpm;`Q1- z-0aOfC6JBA$O_J|d?1&csn!FBqF(6gzD$rywY+rh%%f=wdzQ%mYbD8YBH6@6aT%lE zpKif1cR&XH~}vmUbMG?GYOG7TvRWA zjCf{~VXpN&61l|o|udharM~4 zY^3wJWZLJ`vzYEJlbSEx814kluHoW0Z)-h0U1~PXCl(`zvFwrGX=uR+kTO5MR0Tmj?3Rc`Im?`23-YWWi>4ET~>KD{ax8$hmZpMb}R z0jRY6XJIWV^QnK|0W#vXxj3>YQkAk@9p9j=)~Og015glz?N8gtQ^gPaz@sKX>UYk3 z;{ni!yp;5yvK*sU6L9!+2@}oPJf5V)DB`hRlznP9o0$D}ju3{Gw2ME4;p?+Nk9R?l z7FeUt7L&8WBJD*#9fTZ>s$ZdB=NJXr)v3e9jZXDX7{q;j(Ss=hp;fQ>y-oe0;HPeq zwV)PFz;`L8q9Sj^OrDZudd|Y7Zczc4EwDR5KsOe-U(O!zLsS|lD$j!8GL%WOG*aoq z+&jevn)bBZZ%UGD3Gt{eUrt|>$7@(n=QeuvBHQ+tFJh)%#o$x!p57a7-mP|yO%cYj zMk1mo=f{}MMxrf$vXg?O0LjsNeiVK`{9b6|Mvc1g$S7Ee#fN}+N!w0#$`MY@`8}wc z@^@W-c7S5?h$NXO+WG!%fAFDW8<~-F?0L&9&-+O%ncFTWrLBvZ);9}Y9iOaY;nsMv zo_;H1Qu03dk)9i)1rVAY*ijEhi;3KyLA(^v$a=Tj05%^g9S~?2tNJv zNwPjj0kV27V89MP)g9+9Y%h}zT8~CvFVl-dDUszV7gg*Gj(jI)tE`ul$i!A3EDQobU7SjV6u}=l9`E{)dVt_r8RG z2N2I~P(It_%aHP0V^WglGJmEntVVvIOYH;#oU>tefsBIzAa@yG)VGBX7dDybfF{{0 zXmm`~y^Wx?P$3a*GCXp?8a+N;qe4?ZU)K%M+`h*3)XIZs&YZx%-AN6yCq=TffO4~q zTpOJ<8yJj?PF)1x(yNt|_!)@vf9b1%HRlH56r!VN+$?aq2RE2hmJyIIm7O#Uq#bpV zs%FjB>5Eyz;AHR5)oV~aGCwG?R@AX-d2`4zpO*r|Jm6* zpZYnG{G?;<<6}~PXZFDsE+-uRTi&qF^pfs$4paSh7#hs@aci=-7lfgr&4|ZF_}!EU z!GOJt;OZ{076O>H#cnapz&8-rFW4mm?sT8O$-{oY3m;Zqf@dJJxst}dttN{2zFCJJ0Uvf{^?;QaNe5t-jDL@rDr0$?rLk3!GisY zmZzz&5^ZY-4so@;8WP6nEMT&P)b%QwgEk4N4a*SOt2^`Paqi4F0x_%P@uOV{M=kMJ76xYl>Ode)K zD=Bm0Ht0wrog=U-lBJcYWfq)oG+E(C31uX69AcdvH3u=cxk`=h5yYr|W`F~b;_~a| z%&FkyB!BRGSmI&Ilc1B9QPbzDY9o?@;B+Xl-VRtv|E{GG+`Wdo1R}W%w~6msbNiL& zN_EjgIoE-mW!*ggzC)5Fur)|JuCJE`cdVlYXj-r(go4LxB!D`m0*Z)pBbvAZnY5P$ zS*zdCZtqnlF+Fr+4tdHHYco*vNt*NOZIvaB1huZ_T*_?33mPP1fRsSUde;44sVo5p zKQBEXW3WRxRBvSlPArj{g@>(2CF|D7=k(=vx|S>;EMKV!SbCeZ$rK@jHC){Kj^AlH zA>Fh1QVAO>2YdfH2vEUd|3P!ALs?opQ4*+XWiAZ>d~0O5<{8BUZbY%#PIzwc0k2T% z^WEM)ta_=pvQ5hE=Ns4ud*iX$FW{B5{)mf9-3k7S`xsHj zBI&t(xCnH&e3q|)t)m0B4r{oyFvhf@_eR)$yll$;csY&C-D>p!Ktk!0$=JuVXZVch z>f{oh933uY1pg%-0JZF;a1me@fVRDKK+YW7`k(weB>#hMAgfO=AIT!V_aO<;FP4tU zV#|EBLAYp&Kp83gfKy=iYa;F#B7q+SJyuXi4r&iDd){ zjU*l-$eOGa*DMBUWao%KEkP;(Wr<1kI8=|38WU$%KsTmvG9Yz;!I1MPa&39gLKw^> z9qQm?IokkyrU1w%NizFxr)I9%$#QW|votMX)dztKYP7i9=cVX#gz`?TFx4UDj$2fV z&c1a2qhGGkX8*|OI@VWY+G(;vFG?wQ+QPME)+=?u_Tl51p2V+jguY`*O4jjxiC>5Q z-pTEFqxF0YzkTNO`TVylYo`7n-@WVjrP8Kw&U@N7wy|r{G-p>dAk=?bb`&6p9f1dIkmOfR#{ZoV?}&Ipf$ zL|rZec*xg{0o@JzLBo>af9;cfQX_j5Q_FX%`x0zR)rSREXQ>0;cWcW&9qF1&SJcgCB-=ion58Rf&r($dVQ`;=D6$Ml#en4e4#YA^d?KayC%*l{s_|KZj0Vf~>w#qexKm&-5uB~z4 z*7vwH4r(4waUevOuxwRMJwXI3Tr=zR@TXx(rd0zZs%+S{4(R~sn8Vh>sn11?-gjG( zpU<7@YzWILyd9IR4A8H2EHtvVCkMSOQ6t@wId!U>ET5@j2wQ`al`!l1HQj89yMqNm z>bm3hHhgB~UQcwZdokf;T?V1=k*1aUEpb5I9QxLCbKDOGHFfT^0s6Ep_4NzF@8q(2 zP;(G?N0v6OP1A;u{_#^&gWxOO@(6Q%R-=oT6rk>?k*DfQI&tI)F(4b_c{J=G%E^g< z{u5rz(`Ow&o%lvWtqzQK%j;4!l7Bz#pb4C5ihy2e{_t*?oUvVFmwvk`OvZl+x?}Lt z_glydUm$VAq?t5{Mv|;MvH%$NYNJ?E3)gL`9cNj!CHyYsnQ&eyW}GQp(xf6Q=do~d zpwT!CvGeBP`V918%*3i6LtRsbVP!){C3@Um65=J+CUNlseR=T}-`q;iKM+*exII`b zYQ0i$D{9Z5*G*q{q*nccUFK-N@ys#W;}Hvh{%=O&Dt^t#$3RbuAbb*x;_^-wC<&?B(5-3YGWoW^diO z;_j0@|Nv$(gKWARZTTjH3WuLT$~5&86IGEg2pnO2aOfG z;ual|C+|Wy@|dR$KzYLt-iAFEu52v`WM>lc`t3hTj86nJ3|@-bTYj#|Tx_LcQbC^a}LPpV%9#y|9}Snkd|5)+(P|8)Yzirpu{1 zHsJ@o*-Bh(3D##s;U-09h~!P;H02c*I=O}MgE`vS+$hs)836G_egOwJ!okbP!eViU z4)l7Lmw{QzNPeA}1OEDEZ4(B4F?9YU_~y*PzY5Rt^ARzWQ4E-0@iCa4ITLi_;r?GhRpn9b^Do#k z?9u#^zV5ZjnY4C`{<}tjBVXbsllspmX%+LtqqWh>_M@F7GpG$fxrTzMB<+%M);PAA z9*NE0h>wqlW-Q#CbsaL)77)hy!7>b;%O^{r8K#w!<*?;q%u%3IL+=_O`nF+%1&+L% zjl*+nKdjyrOv<@`g>nG;xv+jh$H?fV0Z+IgHUbfOFt)s$m)CqCIqjsSS;NhV&;iE_ zg#~|?*VP4nyAtq1EWW)fRU^# z$OD=KUp4cblS5l(b{HCvYdG;VL9m)z`+AaTrtNSPwsA(pG;F2D37A5yXeGf|M=P*PoFAq$pSZP#~oB_kYKHi-ivVZ@UV5* zLtpE}#eo9_j+gYK;f&-){XV~}s0nAp$tXJbJGz0sYc3tbcu z({~G6tPOvethfL~JVQh8hMTytVEI6~YfEVflZaD8zln~{lIvLGT}^!rg1P|9{0_~z zI{Y7j<8nXgK%`Ol)9QQv1DaN1i=#2wBlM4Z%mOh@Uk6lKzh+yDHk zpXnDMmnj1*|CwRQ*O69?RFVDq!yIQ&OzP}*lTEN));`TIgzL6p98#5mAx1q zhz5Xv(9o<#?lq`@msE*kd&adD!7YCUqmx>j^?)fR)FZ+*t7XR#6R{s9g*+NjomCZtaF+ zeZn$_#5kiLs+jxWYPN{mrF!B4o<){G>;=WbZGX%A?9znwFJa7*u8Xl@%<^E6(n10B zLAnt!!aCxu^4qt*-CoL3>X7G950Dp%Z!$k&5=`n`@MuiCsvp(4Vo!V`Qa+b4x-z0C z?Z5;u;oS~uYIP9Z8E|f(er{yXTyTK4G=|>KKBkq`^c?0Fus-&%Io`0&rDD&?2?>)5aMW~+w%l5v)jP~uj^8@7HR>QHUlDH=`2_Ek z=|#+1*CMa$#4#=}0JN=_e~v(hQ|x*QvGBfz#vKU4(NWqllvFtB}VdwGVD3U02x`&iLoaTV<;444mv0g z`xWxh0^V@fFI_OHw4h*O3!Ho4|63+<2g*Qi4ho$^7@|S2DnRH4BFdob48BCf#YH&9 z$-m(gm*#{LU3(9%8hkey(a}-uSIDo*142W@lMS3~kXfVcykS>yU!O9w-_PnB+|1Iu zLy-p_un*@${(_T`=;7XbP`647m!%zYb1v*(**^lcFAV)_sE7eLU;3rLH@*A=Wy1P( zjm+qJ*4+K29L?OGL5h(Xbr9%^12r`W&pE~W9E7+z$cC@k=B+1u6Op?^nm)*%+&>N| zohUbJbzAwd!gsUMxT(A~XLx}BX8%)mWhs{}0n1M`qms)*5t~L+#u{gA`3w?4c7_z1 z(NCpXbDM0OaRMi;tQf>)kQruFTN`*cz!)^m0%JV8#Lxi#NKbDIg~SG~T|oC+JucW$ z>mSwD9?^~mSHbxd2wG~Xs;fqCI!(F!r91CrDodKoCqc_U zZ}Y`6j8C4Uxc3z(;C@X+^qkp4_&Jl^J-W2S>+nP-rf}k=P7(|V4=on;&y}WYlIME2 z%o^&UUHk~(U+Yn-{=$%c&&{c7e?5JH-3ex(eLOh0eVrSk?Z8+0y48N=$6LO{GGi!+ z@(W7-T7jaxQ`hGY02C}{(e=0E!}>t;D(udz5b;Xhq>tY@bYKTQ4-#w6)#LFNikUZQaAdSmNiB-NtP zQc{kYIBo^oGYKisR|6dLhMTVBUET4kmGIK?I&Gt^aF@HQ+;65)Xvx8CLHlC=-(n-M8 zKgMl}WH|%1C;wjU;mS8J4C?(bG3_McK1(prYc`*+zCiH9NMQedA?JgjKHY@AN-;bL zym|S}STKHC$HKy5_Ie@y_jQRZlS}CmrRjt37ju3r#sRJ2^Uu1^cRvF_f|)2()vtxu z)n2ne-Hk!U?(ywruZ=RyJMaEY1Up};vX>XGtinV{=$`M)G&s&=jamCt0V7yJ@%N)U z8ylbza$C%;3zV{zuiW`TfiD8%yT<6s^`JH2RPCF13Z%PYydNM7Fh zZ~BjY+M0*onU<8?q@%w@M^6F)21cuZi<@SB)CM$VrCZ)YX#A|+KGUC0{#8;UdsFZj zm3iJhm{1;o$HGjZula8%#Yimvq2^}xRV2;9FjwmdWYTwvD&NiA*+6C)TlB~@{kLx) zyE%;_A})nTG~7(0qoW7v{5<@E(+$N}&V2w6UVk%b8`BEpRVGAgjr0;l>09v?l!y^q zRB&rYR?Qi+Ot6)3a+ zO9am>I1wqBe${vq)`O}*KYSo4(BIb&zL3eOMlW8qPI5HxhFLD`t&mIY!Cc~fbCvp) zK=JtiIgX!&LG+fNTVFl*0YMuAirqxxy2IZ2V6!%BjfX|sP=lE5GD~hvDX`QxdSljh zBq_4Sg+@j}*;<)~v3YV|_o{M``OBv-Uj~6MbMWhM{a!d&YXkzu{rTvG2nGW-oi|GL zyHsv<@y6T?&?nEG?(Q()f-%q zcZFV~gU?An!_RtCd=3C!gFWo>Txk=)3XJU4yw6!I=j1ftIMg5;!-yd3 zgq#s11;&_(EVQnN$yOV)tVO6OrBPD$_AuuKAxH2yL+?6Rahnt6AQc8;Yp+OFb_Twh zrly050$_ZH*vg7Cn7C4U(+^C!@m5UJdq2)XbvFQU2chDeInVOr#Q;}){T~BEwb}PJ zf&LgN>qT<~%F9D|ex<~zMlLXC(L#s;I)M!_@`IVifQ;p61`3tQgrkbb^^}2o%|IBE zlWQL@(!2?73XSt`HPzJxIRi1Iy$6NGpEb9XISw&5K3X;Y)T(>;|KFZRe2F zfo44z^_)}I`m5X!XuNyZh#54(Ig4V=^HM-v{_SweE$glv+i> z*1-OP=hNItY`z@Op9n0V|2O=E^@q|D#F!de6!1Hvo7(FMbwI>^%*wI5=3s0L{62bP z!$i0xIjYC1MHcsT+)ktTTJ5w$?KGI`sS{s5B=N}ol2JR5C3Ye%z(@lb z?G-b*U<$6P=DN`0;iZbkH`+MqRSsTV$l7n8t^M};SCoLo;C>v!4sTx_Svuy}5wB$f z_Z&h5(zsU{M93~>GjsQd09Z+4tE;QG=DyV&z> z3!r*G{#|&jn|sc*W(R0?Ganpm7}U`IXj!NgYv()QzTEa_m=cb1jt_m|Ef`23a<`e0 z`i$JUr5=f^GoE24i?;(U{+=BJ6HN3O@ImJ+ct&r^ug95Pa3>y?KE5BvZ5rfhQXmle zHSSoeZQ*^a-ooqwUbZ`&R^CT1fCO=Uu@m&`n+>MHZmBiD?opDdmtslL?BCAT86bq9 z0O%7G1Gg-b&VwtzI#8+C1#`nC>H8kP85@$mgjTUTOX>aXqqd%Q0TtWH)~yHLMW42* z!w&4H{>glJGF08CUFES6_alqyzp3H?Wbcow#M}{|H6Q9?kAC7M@4RIS=NsfL&puiFU}%)MKGFsOAV>KR#du7)kc==brZ!g?E8z`}cJ z_!J^5VBK|MeqR?N_{FASH8TxEh2OaY+}bMTjhgv9%m8-(tha=fJYgp<)6^{BNe9uxfQRwUTzN>3JVd zt5=uo2xrZKsfwJAAdmg(P+HMyChG@T_1^O0E!fU=ZrVCvMg-Q#0r)gW|EE9(yAMxq z%46_n$g^g0`UY^a$@*2}4niNLKpzXJ#jdB3ui(qlO5DLQmeR#e?HBQgnfhAD`kRRI z|8FD5-G7Q9L8`|Dm)idw*r`XiLPECeAKw2Z6|+LDweedg8DzSS$Y^<9_pR?F= zqjMv376nang=?}pHwP=C-OHPoN+cyD*oBz0ga#uineS)Z4G&@c#iT;TMa%m2oI5sl zr=oNE-g(u>+d~dDZ{>&+^ZmULZ%*OUy zXs6Xyvi`&$YQ2s$os{|JAsO3I&ztDZU{g zA)y?dFinZ41AKI!ZoapQPfstmGYsn%tf)fmA4SflbLn<_Y*z>w^5>W%7t(3JDDuDL zZ~g#YUKMIt^YhNdqGW2#4Bd#y(X_O?Kv}*l+4`en`SE^X5aDpIM5SklWkv|nlgGA! z8r(^|gr{%LBVcqX3CDfkm0@M$cZ;IewUy@En&O6?&r+y2?N6i*H~}LkcWWBo#JoDQ zr-8)H-3T@`&0jNnxHcSyPM&!>a#LPqgI($BSB%T_M4Vn>*2WcNgRZ^yuP?cunlA@4 zQc(0-qQ8R)-VZ~0%v;`$8b#C}t+XZ0inv?MTh6z<*zv}Sf1n@!+l|khWESUsT5fzi zJn>aUlF<6dAZ{1j2KdiI5=ae*vIG61$w1x0e(?``3Y@7DRZYusa<}BEnn(#-TnBLh zTWhk|k!Hd_8bwj_{Hgf$QpwI=S^b6SN&6-eqF4ZT@%Vui2G{coxv^PHJ?XH8@yCuq zKA+`~O;d&Oo@fZpW1yq9>vxgdie?C}Fe+(Mu2nQAUXj(fbfR%1973 zdJsJkEoyYpdvAjwqQ@}N%V6Ff_kQ>L^S<}qkGKBJoPEwdXRWo@UTc@N*V2_dS_m_} z$ClM|-yYXWIf~!z8WU!zHH%V-6Vx8&RG)iw-`8>dH-|dW+4}%yH`>CAuc>uP9zJ!% zi0^fJlWF3sdbqPwTzY*aMLkBj?v7!nXBqcW`AkMcW4I#jDqGi4*|ecFx4Ay4gd_^hXz}b0H_us;kLACAVM@>W6PJ^ zbyTIX#{200xMVav&bbeS>hZJt`RTbbNM=ZGZDUnvZ?ki2df_6lBULmNM2$^Hbo8Wb z(`4e?cFUhQHUTq8a_O{|EFdPPp$xSq2wL!k0U|q)+`G|HWL*(>q#&J5_&LE2F8~uh zLin2$#~)Gd5J=c!&)HW%xeJ5EOd{f)5T<~|XQOPtvI!MEd6|SN0Fm|cKGf!`0=%sa$`%4b>O3Vvq`?(LsdY{% zc^DACk}y))fw>7@Ms5aYf^gexG*kZ>z!TjQr3HaR%03$d(dzulQ(W7wmA#KIu!U+z$Nnf zUu0iuC0c{J?=V1~P3)z>dD0_qDCI_6wL}Et^xui)T?1m6{XX9JNNg$j4${vP>Kwcc^Z-QvkA4!UV1Azk#A!*;+%+xl2@ZREL zCUdl&Hf$YHBk2K82h9R82ORm>ekL*%Sne+qHRGAL%!O~D2ng_zX$#4J070CJMVG+Y zX~v+utKw(0)t@@N1&ASfK#l{#L-# zu7;mc@Mlr|*ucm_^rD{d>o@foZ zz=X4j3V+=x#X*V_KF6!^*Iba`Q9>l}sYFxwVejN{jbe~3ui443zuL>7dNd(_i67sc z7Q<16J~~w{_54Gsy=PVh5(oc1&Lynt1pJaVSsbr#6W`1T+XFppAa11clX%>Iq7mf6 z^AN~{l(2Wy?GmZwPw6>;ff6@1y_xS{5V=x%4w9nyg5lAtpgIjHRoRL2+#ECBoTVfa z#NZA(Z%sV$V?U;Xxcw2O5Q8aGF;A1I4G>qq1?>rA>Y%5_%u&gjp)4{)s^>u)%^uq2 zen|cj+-&9SJbp?#Ov)GpBpbKdl=`kI#9c!wCiumeOe(jkwzgiyvX(7p=b#M8QM5ws z;=d|k@>622K#1aMQj(x5t@MJq1=G|83H)Yuy`03cBw}kbQ}Wq!3KwfGmkHuv92b33 zPV24@dHQpC-;cEUqr`1-y2wW*>tr7F(E{hgwfIw}d0|WYI9pLyFvDhv;3C*anqjb2 zB}<(tQbk*9RFs!D=P-dmGRlY*^A_%Rm*n44-bv8Eaf!d?uwB^dXV#WPEQ_4wt=rIF z_VVIvm&taeUJsBTxq7m;Vt*H2XQU9TP|nH9TB&9s3z}?rpLDf7GZj-U4nj4AWK8T1 zw>GWq$}dY(Vb6(c_qfX~zmtBWcq3YotHt1RjIz2;&%8i(mL|V=QNjoL89J~S9T(6E zHYp#lG|bv}t22PT+6){ymz#h4{99S}diO#p6{|$iO&>3Hoj4kHW>V&jz!wjL)W_?Y zKArD#193txb23uMkM~fH|Jtd@Vz#ua#QiS(m@LM2ScSGz9TuCWYoV)HuNDW}pa44y z-7At{&6^-FRMMFFp%uzQk6W{NynY7it;U z1K4_K#++7Q!|AG0sU)14l@;Q5&Q;UUCa(E*CY121)ZrY5NgMsf9-zV4zwjcpWY&X$ zhRs=hoo%o65a_i|jySQ=?cMlatLK1>DYD1CnI&{JD6OvLnzUt(ix@5FnbG?FE!a#v zLwq|29B%p9H7_seWR(b_C>9)=6Bo@6H_w}~zlK{Oa|s9Urf(i}1igBJD;Z5ts=(viX<3scP!9mk)M{~Y zys?kyWiqAc7YG?pIB=%XZ9p2!zYWO`K@hwP0L9;iqR|8p^uH85I3foo3SI3Aa_q$| zf_yErmYJ$u#_?Z#t$f*miAYVeVo?*1Hnb`&!hz??aUxT8ynFnp0(KYpchODl!a2Z>_fIX8~s-jp;=O z!1=e0s$~|o7FA)ip!FDcX)>|%w8vUOGSv2xG&ihTP+WWpvvlJcVaNmEufYNM!x;82 z$s&vv{`&$2Um^t?R0$^yDJfgqJ0`Af<`Ab0BoYZWt=VLKd`=r*6ZhIt^?U{S#oOBC z*;-ZxGhdNiA4u;_7A6S*M<@<9=K<$?GzhL9%W7=0rlzJE8c_tgK$|2dgTTyYZDGIx z%v_jj6ZiL_e3BPY}<`2@=w+;_>$0d)S<7TR#C}Y3prg*Lb-!{gCo2}cz zJIF=qexC}1IC?|;vL3$DtjRttfxn4vzG&q%q<_ZUwlj~1uKW>aF219b zx5{I(m7|1_bZp>|Uj4)5px|arJ`B!rf}MIF#P}`)9tnaQtMYvG?*YWewHQ zVtzeWs_3g?Z@^{Zoa9`4ku2^zH0CRM3U4 z*avk!>v3t4g3JC7a;TMxhIvvu+TbRQ$WI9(`YM}Sv7X1@AAM!$S+XVf#Wk*F`^;^b zr$v5-KDBYjAHK7OPVY6=#ZxY5gmgxPSaKV%DnT-K0$3$Z;zxx%ic0N0ZN4`h_BR}C zIXBeoErbnh?Bi>HbmvSg5qW$vpP$7abS=^6Q0g#zp55Hg;>{0tY$j(59AMIs++U`? z+nkuI=KK3Fh&(l|!QqsnGOT;_i*BE%xgL)Ud#7uCD=q391;qpn9j(Gk)kT%%hue;> zJ&z1XFHRqI#e^cx*ESb^!zKptO5mHC;!{6Je3i00@HkDQ$7=MR%8F3k$(ehGLY~Me z&v-hQ8ZQ{R<1pPw3uS52?D3UV=Tmrlz6G?%%WT!v!boqRGu@-WX|*;!KK6aAHZ$2v z=nTU|no-?S>!Au1d*`m?iq@`sxR4d@p;1}2QP#Ue{^dz6XHK@jyVfmqZfG5`wWwI8 z8ADB|Wt#(zC91qQp~9V=DgHGPQ^s>?(sW^457(JwU zF*fRFh_{NB_FDacJl(1puUOH(2FER2PiTK%>_}d@@q6b_4{x`Y{F~<>%bmYAr$N`A z@Y|7|{Kxjpe`?tud-PV&r-vnZnc_1uV%$a+E}XzTPL6m(WXyd9UEYMCYyrp7tCX`| zT3?h>=Q5EM)n9|(KYYF*HJ%iWuDR31j-6n*Sfzf_In0Zf1#xy>Y)?=5?E2K9(nw+R zR|VFi7;-Ow@NnID=<+PSf~(D#LK~Ae5@a+SS3MEg#)MB`$MC&#T=H zp9lMXAYUmFkY?N{7GH0yC(es>+TNc0@a;xQWLmDGM{(XSgFe^hua-jE+HA0`CAt@t zg@0&T8To`~eIeOn4O@1C-iVTg-XkW4%C^c%?=0ozomcJfCOaxqV%(_ppD7ub;MHfO zE43z_Di)XcLA@f~)$!Qgv-U9vSsPk!H;xq!`$*zN#Fn+wvxC5O?}P~|y(BXB>&%to zEOETTSj=|k<|W$SI9ImYR}yES9E!^Qit&M@M<*25zhpc|P?|C!a)b4yr4{d0)~t^_ z0z1Xg0|x$vQh|Me`qI^r(;Eo4jYz`~1Jc2vOC{Dp#SLeu?#U2PeWIes(6nyn+iULv zS>@rG&YUUvlmL^SK%$jG6fR2Za;&HBepX<=2vZCRHemR8pCv-!QuS3!H!Ky5QX!Bg zdoXm5jjwcR7vA9B1}iF6?3TxicwQmQI8G$EsUGm zI23B&y&kBjqB8I4XBMM5tQ9oi{m{6kDxe5eM1EUHqPLK)Y46g%y8T-v74?`vmQA5b z31VsB##tSyIW#0&2XhpdWW#6DzCCuf*K>{L&k2{1*XwCreJ|e z(MN4Xm&EDdS#I;9>BeA(GQlqd4$JcX;r4SwVkGsR;$;0$ifVyCtd6$+Se8m+K=7rC zg3u5YXPEm$s`W~unP>OpccC;pa+X8gI#YD6F)q-$4qw(P{3RBQY$)@+5aH zBK5(!N*}N!8?)WVEZGvne;?y}&>W+=^D80^R(v|O^7Uw-9=>gKoT2w3&3Uxd8-K_%KxOCd zyZN&fTfl8yv3BjEqoD`7A{%?p=y+qu)-_n+^@AVLtSO0XNjkg<`X&^^0cZ@?m9 zk||{84c`#25rTKXC9kdt)eI^E&3E^k3K6r^hUXzB&87;Q$UE!%BYamTm@Y?f;~rXz zRU;&)r+(d2FF0c8OO0;r&a_jS*UxvE{nz5YfA_Q)qAEOTcecMq^QSIVvb)oU8_wsp z+fQ{1yS#(ut$voYy4_ydP=RBda<{dNQyTWfW{mTYf=(sW5g70vm!CdvQMRAh*>mQN zvsz_XGInX38*U!%OK=>g%cib78FhA>-TVGFz=?yTt1FL~eY?!S=b>w{H*M_wC;T;j z#gqyTyEO|ll9#zpaT##qb?)2Y?&^$Qd$C%DiO|F=e>~^d727Xt_lP)dw`MIw8|l;< zcWwwT4TXXzStMM`P9Bkq|5gL+@Km2|EbEo6Bgwe@N&WhhkME;=yB3smVQ#Gx5AGdQ zKD=Xo49i*jaC$b-^^3CczHv4tg53XSa0Dh41PCCk9suBD{C_A&m;#*y0{KG5GV$#= zW_0Q<_2J?NqTCOjgA4rLb<%I*h^L_1g5BQoVb_v464CMyNDtd;wH*SW;x~FwQFokH ziElR^W2RtDRa8uE+V=h>k!ZwSeHVSSN$0K#x|k^F8Fc&^ zaNb>S668r?IYV5H`rx=43=8@du_Br(mhB#3+DHPXIv^6AQb;?;1vXic%MaTO1hwzi z!~*^h=75mrT>E`%JmhR60oo+ueIq=Ajy%hfDCFZMfoOS;>YPC_sr#msS8}p%n1&DAOd^>f;@aeJoovZ@`;EEh=}pu zzstub#>eN|;7{la|E^$b|H9Jz)qk!)^;4`GRJire7hEiD;m$6mwhsTfj@~{K9Mpj* M$*IW}N}Krq7cS0uLjV8( literal 44937 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 z My PhD thesis about optimization and other algorithms for sparse regression