From d3c543f3e2e72c42e756c8326c7dea3855549f6f Mon Sep 17 00:00:00 2001 From: Emil Hvitfeldt Date: Wed, 3 Dec 2025 11:16:44 -0800 Subject: [PATCH 1/4] tidypredict post --- content/blog/tidypredict-1-0-0/index.Rmd | 106 +++++++++++++ content/blog/tidypredict-1-0-0/index.md | 147 ++++++++++++++++++ .../blog/tidypredict-1-0-0/thumbnail-sq.jpg | Bin 0 -> 50038 bytes .../blog/tidypredict-1-0-0/thumbnail-wd.jpg | Bin 0 -> 81982 bytes 4 files changed, 253 insertions(+) create mode 100644 content/blog/tidypredict-1-0-0/index.Rmd create mode 100644 content/blog/tidypredict-1-0-0/index.md create mode 100644 content/blog/tidypredict-1-0-0/thumbnail-sq.jpg create mode 100644 content/blog/tidypredict-1-0-0/thumbnail-wd.jpg diff --git a/content/blog/tidypredict-1-0-0/index.Rmd b/content/blog/tidypredict-1-0-0/index.Rmd new file mode 100644 index 000000000..b6fd82709 --- /dev/null +++ b/content/blog/tidypredict-1-0-0/index.Rmd @@ -0,0 +1,106 @@ +--- +output: hugodown::hugo_document + +slug: tidypredict-1-0-0 +title: tidypredict 1.0.0 +date: 2025-12-04 +author: Emil Hvitfeldt +description: > + tidypredict 1.0.0 brings faster computations for tree-based models, more efficient tree representations, glmnet model support, and a change in how random forests are handled. + +photo: + url: https://unsplash.com/photos/brown-leaves-covered-in-snow-on-a-branch-9XKkkeUwBhY + author: Monique Caraballo + +# one of: "deep-dive", "learn", "package", "programming", "roundup", or "other" +categories: [package] +tags: [tidymodels, tidypredict, orbital] +--- + + + +We're tickled pink to announce the release of version 1.0.0 of [tidypredict](https://tidypredict.tidymodels.org/). The main goal of tidypredict is to enable running predictions inside databases. It reads the model, extracts the components needed to calculate the prediction, and then creates an R formula that can be translated into SQL. + +You can install them from CRAN with: + +```{r, eval = FALSE} +install.packages("tidypredict") +``` + +This blog post highlights the most important changes in this release, including faster computations for tree-based models, more efficient tree representations, glmnet model support, and a change in how random forests are handled. You can see a full list of changes in the [release notes](https://tidypredict.tidymodels.org/news/index.html#tidypredict-100). + +```{r setup} +library(tidypredict) +``` + +## Improved output for random forest models + +The previous version of tidypredict `tidypredict_fit()` would return a list of expressions, one for each tree, when applied to random forest models. This didn't align with what is returned by other types of models. In version 1.0.0, this has been changed to produce a single combined expression to reflect how predictions should be done. + +This is technically a breaking change, but one we believe is a worthwhile change as it provides a more consistent output for `tidypredict_fit()` as well as hides the technical details about how to combine trees from different packages. + +## Faster parsing of trees + +The parsing of xgboost, partykit, and ranger models should now be substantially faster than before. Examples have been shown to be 10 to 200 times faster. Please note that larger models, more trees, and deeper trees still take some time to parse. + +## More efficient tree expressions + +All trees, whether they are a single tree or part of a collection of trees, such as in boosted trees or random forests, are encoded as `case_when()` statements by tidypredict. This means that the following tree. + +```{r} +model <- partykit::ctree(mpg ~ am + cyl, data = mtcars) +model +``` + +Would be turned into the following `case_when()` statement. + +```r +case_when( + cyl <= 4 ~ 26.6636363636364, + cyl <= 6 & cyl > 4 ~ 19.7428571428571, + cyl > 6 & cyl > 4 ~= 15.1 +) +``` + +With this new update, we have taken advantage of the `.default` argument whenever possible, hopefully leading to faster predictions as we don't need to calculate redundant conditionals. + +```{r} +tidypredict_fit(model) +``` + +## Glmnet support + +We now support the glmnet package. This package provides generalized linear models with lasso or elasticnet regularization. + +The main restriction when using a glmnet model with `tidypredict()` is that the model will need to have been fit with the `lmanbda` argument set. + +```{r} +model <- glmnet::glmnet(mtcars[, -1], mtcars$mpg, lambda = 0.01) + +tidypredict_fit(model) +``` + +Note how, as we increase the penalty, the extracted expression correctly removes terms with coefficients of `0` instead of leaving them as `(disp * 0)`. + +```{r} +model <- glmnet::glmnet(mtcars[, -1], mtcars$mpg, lambda = 1) + +tidypredict_fit(model) +``` + +tidypredict is being used as the main parser for models used by the [orbital](https://orbital.tidymodels.org/) package. This means that all the changes seen in this post also take effect when using orbital with tidymodels workflows. Such as using `parsnip::linear_reg()` with `engine = "glmnet"`. + +## Acknowledgements + +A big thank you to all the folks who helped make this release happen: [@EmilHvitfeldt](https://github.com/EmilHvitfeldt), and [@jeroenjanssens](https://github.com/jeroenjanssens). \ No newline at end of file diff --git a/content/blog/tidypredict-1-0-0/index.md b/content/blog/tidypredict-1-0-0/index.md new file mode 100644 index 000000000..b2498b1da --- /dev/null +++ b/content/blog/tidypredict-1-0-0/index.md @@ -0,0 +1,147 @@ +--- +output: hugodown::hugo_document + +slug: tidypredict-1-0-0 +title: tidypredict 1.0.0 +date: 2025-12-04 +author: Emil Hvitfeldt +description: > + tidypredict 1.0.0 brings faster computations for tree-based models, more efficient tree representations, glmnet model support, and a change in how random forests are handled. + +photo: + url: https://unsplash.com/photos/brown-leaves-covered-in-snow-on-a-branch-9XKkkeUwBhY + author: Monique Caraballo + +# one of: "deep-dive", "learn", "package", "programming", "roundup", or "other" +categories: [package] +tags: [tidymodels, tidypredict, orbital] +rmd_hash: 8fe30706d8dce790 + +--- + + + +We're tickled pink to announce the release of version 1.0.0 of [tidypredict](https://tidypredict.tidymodels.org/). The main goal of tidypredict is to enable running predictions inside databases. It reads the model, extracts the components needed to calculate the prediction, and then creates an R formula that can be translated into SQL. + +You can install them from CRAN with: + +
+ +
install.packages("tidypredict")
+ +
+ +This blog post highlights the most important changes in this release, including faster computations for tree-based models, more efficient tree representations, glmnet model support, and a change in how random forests are handled. You can see a full list of changes in the [release notes](https://tidypredict.tidymodels.org/news/index.html#tidypredict-100). + +
+ +
library(tidypredict)
+ +
+ +## Improved output for random forest models + +The previous version of tidypredict [`tidypredict_fit()`](https://tidypredict.tidymodels.org/reference/tidypredict_fit.html) would return a list of expressions, one for each tree, when applied to random forest models. This didn't align with what is returned by other types of models. In version 1.0.0, this has been changed to produce a single combined expression to reflect how predictions should be done. + +This is technically a breaking change, but one we believe is a worthwhile change as it provides a more consistent output for [`tidypredict_fit()`](https://tidypredict.tidymodels.org/reference/tidypredict_fit.html) as well as hides the technical details about how to combine trees from different packages. + +## Faster parsing of trees + +The parsing of xgboost, partykit, and ranger models should now be substantially faster than before. Examples have been shown to be 10 to 200 times faster. Please note that larger models, more trees, and deeper trees still take some time to parse. + +## More efficient tree expressions + +All trees, whether they are a single tree or part of a collection of trees, such as in boosted trees or random forests, are encoded as `case_when()` statements by tidypredict. This means that the following tree. + +
+ +
model <- partykit::ctree(mpg ~ am + cyl, data = mtcars)
+model
+#> 
+#> Model formula:
+#> mpg ~ am + cyl
+#> 
+#> Fitted party:
+#> [1] root
+#> |   [2] cyl <= 4: 26.664 (n = 11, err = 203.4)
+#> |   [3] cyl > 4
+#> |   |   [4] cyl <= 6: 19.743 (n = 7, err = 12.7)
+#> |   |   [5] cyl > 6: 15.100 (n = 14, err = 85.2)
+#> 
+#> Number of inner nodes:    2
+#> Number of terminal nodes: 3
+
+ +
+ +Would be turned into the following `case_when()` statement. + +``` r +case_when( + cyl <= 4 ~ 26.6636363636364, + cyl <= 6 & cyl > 4 ~ 19.7428571428571, + cyl > 6 & cyl > 4 ~= 15.1 +) +``` + +With this new update, we have taken advantage of the `.default` argument whenever possible, hopefully leading to faster predictions as we don't need to calculate redundant conditionals. + +
+ +
tidypredict_fit(model)
+#> case_when(cyl <= 4 ~ 26.6636363636364, cyl <= 6 & cyl > 4 ~ 19.7428571428571, 
+#>     .default = 15.1)
+
+ +
+ +## Glmnet support + +We now support the glmnet package. This package provides generalized linear models with lasso or elasticnet regularization. + +The main restriction when using a glmnet model with `tidypredict()` is that the model will need to have been fit with the `lmanbda` argument set. + +
+ +
model <- glmnet::glmnet(mtcars[, -1], mtcars$mpg, lambda = 0.01)
+
+tidypredict_fit(model)
+#> 13.0081464696679 + (cyl * -0.0773532164346008) + (disp * 0.00969507138358544) + 
+#>     (hp * -0.0192462098902709) + (drat * 0.816753237688302) + 
+#>     (wt * -3.41564341709663) + (qsec * 0.758580151032383) + (vs * 
+#>     0.277874296242861) + (am * 2.47356523820533) + (gear * 0.645144527527598) + 
+#>     (carb * -0.300886812079305)
+
+ +
+ +Note how, as we increase the penalty, the extracted expression correctly removes terms with coefficients of `0` instead of leaving them as `(disp * 0)`. + +
+ +
model <- glmnet::glmnet(mtcars[, -1], mtcars$mpg, lambda = 1)
+
+tidypredict_fit(model)
+#> 35.3137765116027 + (cyl * -0.871451193824228) + (hp * -0.0101173960249783) + 
+#>     (wt * -2.59443677687505)
+
+ +
+ +tidypredict is being used as the main parser for models used by the [orbital](https://orbital.tidymodels.org/) package. This means that all the changes seen in this post also take effect when using orbital with tidymodels workflows. Such as using [`parsnip::linear_reg()`](https://parsnip.tidymodels.org/reference/linear_reg.html) with `engine = "glmnet"`. + +## Acknowledgements + +A big thank you to all the folks who helped make this release happen: [@EmilHvitfeldt](https://github.com/EmilHvitfeldt), and [@jeroenjanssens](https://github.com/jeroenjanssens). + diff --git a/content/blog/tidypredict-1-0-0/thumbnail-sq.jpg b/content/blog/tidypredict-1-0-0/thumbnail-sq.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5584aa024534ec64a722d35f09fc8136baab8c17 GIT binary patch literal 50038 zcmeFZdA#FRc|YuX?<|=m%VZ`YAqkmG_Lzw!FS0#Zh$Kt0BulndTLuc+Y{` z%1+p~K+}XhG%R5)v?Oe0NkgH9vTtQ;0;NFNLLn>#n)lr6Br{paukHK$yr1`vdhXnN ztaHwzbDr~@bDrn>Jm=i~wYzW6oy3qdnOj?1%lY76?(U!D9^G+*B$zruc(8OSl&fJh zxABwQ=I5l%61g?-@1DPRe`jxx#_=a~#5PH{2tX#6+uLlplVJU%Ty8u`Vv)iQ_O$-N zouA3A=XT|GV*dk@6-J#+0jNPh{W&-2r<3(~&<=>ub1pXPGg_HI5;Y|{a0 z2&DJMvWSE9<+xd`MJ~7M^JcBw$(y`A2$+n(bp$zFycDqizR$yE-dF136PshZD)9?pYs}V8 z{q)giN9!Ja7Q7*stK9{7^U|ZwjO%l`Tb`ZEo%Z#k&(3>&E_dRya=Dv7drW^$-INz6 zNx~zA!hAlz)V0k^HyL{0=l@vXzLI}Dam@QJ-F)ADygS&i2YTu!2RE5&27Zvn2dANK z+6NCmP>BD>6_07wG3|J?XbpXAJ(lN;ya+&uT>+|zSc=U$L|Y3|Q*ugtwJcVq6R+&gpc$=#CsQ0`;7 zzsr3p_qp7cbKl6_p8H*zYWF0Vg+eYhU2FV~;7{^IrP*59!H_Vt_BKeqm<^)IjAzW$^2 zyEbwgdp1tpIA`PVMr{M%Xm9j41{?9lQ#PKzaqY$%Hr~1MfsIdWd~xIUjUR9PcH53^ z`?nq3c6i%m+nU>yZRWOU+f%l^aN8@ly=B|Y+iu(T#cg+NyK~!rZa;qencMT*k8G#6 z_qGqW&$nN_{o3ts+Wy|{AK(7v?cdw}s~tOboVw$}9n~Gp9oml3jwkJS;f~krc-M}P z?)dzU@9wy3=gys{@67MKVrP4&zBAc*_0H>ezJ2FMc79>!_jdl~xIM?6eO&Q4^0@wS zljELo+_lHO^|%io_l4uWf86hOowV!xT}O7ccUij@yI!*E#$6xS_1RtD+x5HM`*vTr z`-2z%T;Pup|dp1<7l$vt=M`R(45_g=CW z-}|_|>E0Lbee>Rr?)|5|zc~K*<1aY=s^j~|C&$0|_?wRZ+vC4|{BKU!f5N3F&?i_Y zJoSWEopAFBUpV2XC+<4&{1ed=|K!BwiPxU^S0{e<#2=ru>!b@#!cWpqddf+!I_do< zef6Zf_U+#X?`!WH?|b3Cx9=HLhp>LhL``p^OgL7YT?ycwE zdEVLQapyhxytkeA_49X~UpwD9|Ig3=#QDFz;KB>K7d+>JTQ2y)g{NIeU%0&RZ5Mv? zqT?@m%tg^fZ@B177w@>ZcCmNyYcBrWCF_?|E^#h-)g_PZa(Wsz5$;BlHdUWSD`U z0e=Ag_u?f*v-qmwmrBQ%$kJ0w?<@VhoG;tu*OtFl*mREB_6Tw$Ir5$(KfCPkW!`0Pz3c~x zd$C{RNAN$zKib%6P>ts|K0};LD8ws?Z?EZU@R zqVHs?%%3v1v3psGeI@&y)+MdD^#N|3W4M=d-{jBdC;Tn#T$^scy#1}tg`KGLL1Bl` z5nd(ys|brv7C#~Fm!2TKRr-~T$uE(=pf_X#)L(ZS-D|qH_X@o~?R`pn zq~>bx>+kHV{WtaRdMxqSKYQ%=9#?tX)sOqi<1c)C_V~a5lSlrE|0jR*gcF~jKjE*Q zxc!OUC%*NGzt`LP8}z#j+IY2br-_??ZvM!+%6f(ML;DK*8vFZ$D+bpLelWaZ`10Wo zoyR!WIzM)C_m%F?N6pdeM!)vj-kZI<{jUG6@p0oPj^95ydE!lO3mz3@!RNz#cy)Mt zbR_z-=+2mp-!xsDK7RVX}zI zn(w}xd-=_;IQWX^zv7pF_JlwC`)kYBzV6R=|9Sf7w_n$~?tRyvcl}GR|NSeSSAO|b z*sI?4>N8*cyjTDFHP&ms@Y<_h`_9*$^|}|l?mu4dzW!@BP&eHCh6~y7G-pLk>KjW@mNk#BmzoBr_T$(wI~i};q?ZmQmN(_7Dc>r39Y{d-zkmNf z)c)a?Pa&VW`O}q8zxN+2|M=d|AfLJUv(?YO?{oFfecz{Lit?4Oef4o)z5Q#}*M9I%{y+Wv>$9)_?i)}0=Jszs|63=0>)LOh`RzCS z^Tq%CuG^8@|K^Uy9iRS=^qp^f*Zl5}{$=_vzyIE|{`L5Oz4rTOfB&W*6o2rcACf=( z+`m2c-@f;w@JGM<@zp=s_mfxu^rD~s_0O*Q*{AR9-TA$r$3MUO-(UEP(|_^iUzUG) z>s_6@zWuB5uYULI=l|yP-@N6wwcmc?Kf3?%{ol=hzw`Ik{o&$2eBeLX|NQ3Nb{$X))J3}{}Sog6gmp*y+a(9b^jkwXVv>xx6& z3I}l^ZaZ#s8Qap5m(8VT)~!R2xpMdA*^z7q&!Z1+{wZwz9EPAHTR#Wy`5d}(H%MI` zTZ1EFgS_W$;M*04j!|FdrAvc&SODsLy#N&p#o}R5;_!4aN%ZXSWP0w3$h~wLz?O;K za7*Xgq^lc2np|<{(B_No`>eWUnfJXXOk;oREtXlZeS2(Ak||&zTzIH@fI0V7d`Q0k zkxCRj9zJ}DxxSxHlUPrJ_@N0NQ(#MyAF4g!F>-RhVE`GRQt2VN0rG$}KU5z! zb5_;1gmNV-ms{qMK@gAiL>Sq zdT)mBZi@a9U!MT^$PQa81M1L~UE8?4uqnj8d;f~7r}w9~)t(2w`f?zvNATF*3xBRlEX znCPxQeE@$qnSOuv-XjmI(KxvIC)DGqy*YEPICSsSxo;_2mA`g%9O1N4)TI-%?4_ECNp*>pfo`(-t&mHSS`^rLnR4AjU zAbEX89HJOHB+%8TQK$;&RH2-iMb(!&RiD!hF6B_PEOM}};sKANnpg^EHz1htsy4gG7US4iK5=eAT zQ-D299Q8o=K;DpUJh0q~pn&3_w}3AujSE2w6ve>{8t72K!85=SKxo2&!Qw=~f07pI zOi&4mC=#xz5egSl4wiK@!R=sM1eK)ea9Q82;o@RABYa^g%3j1Sv{DD>6=C8b?IrJ6 zO1~*Lpp>SWfMalH*moGfx=4c5gjZQCUX%+RVv8W$mZ5&HOZs{j&a9qa@AivMsE?DW z(XGt1k_cN9t8Dke>Yxed2cZyc=O>_mzhzYq+H9hNTpPZ z+ROQ37;X`S@|~r_NM6FpN~I(Emey56qesGa4;KCY*b4M+7#kFv8pZ!p_qPb<8$Q$R z`W3f74pVc|M+RQh_Cj5sMC>?{lTfH|Bu{5n+mS61s%pCC6Im87NP*R2iOmxuH_ekhsu=h( z-06`x?g^{}m^NZp<9I9O0E@INis*0~2kGOefUa(vr@9G7z)>G;=Jg8KeE(r)49bwhwYBn+@3CB^joEGZ?ubql2U++L8 zNt^WGYK$yD-O1q7OJ zmzucKsul$T2!o{e5zo`M2nLF0))u&_%00Qi2+?+t4abZh!$>(o$l+$MkYUR!M~UxL zG{T{IAz3gr70(wFgbI-nPKxv9+!-{;#umXwb+qi+rDQH5GYaw~PXIDY5Kx3Srkw`s zumy7w`dwGox(Sr_Q7zv_%%o&QonlfO52rTFA~2sQRzD852#y(w8I2sxk?9gXK7s3?YNvINo!P4!ki1anY}Tr#EMo`G;|Or>h4Sf7EF zq-Mlh1Q!%bD2%W2U`7Zk%vLbEjj`m&a_6N|eX1}^jm@Y$8>C-S zWH;(c^N}6QBc~t-tEoq4O0a+xZ%rk- z;LCV4X`*Tq{Hq8)w`-g$N!{WkBV3&2e9B{xu{>9lJT>WYN@dv|Y!PfU%9CJ8pjf|G?2b`(1~$yJ zkfi34B7?G+1~j9f7N>NFRljQ?YO{wbiKzD%B_=L|B{GQE`N%>0`H3;#BABUiiWH{h zKrrQYKV?V~tk`{wtJ>9(plCy7A+UIAC?3;k+7oGv!$R2#sS1Qt%L>bRaW+#XS~h<9G4=+9uEy=UR$-0G<7Xu39Zfd#z{T4mQg#%O2jnE5Q7+$%myC% z9i=U?rYKKE&+S53vlSJ+66k)pA1gz+tFjBGK1VxS1O=@mK_kZEXNp^xV^{|+QV!!w zE|^UzsTZt~jtA5k>9K~hS4CS_%OtmvOUf^V55|laF>JSXr*vM^X}M_TQ-M8 zXgejzmfGx81+eU~CKBftXrq*chF~!CQmJaJth3Xq0GFCFfssK8O7W%&)&HYiNPY&{1os1`+0{rkiiG@rY;u#`gdp zz}BIZ*wh~LD`hEc;C$*dd-Pb+MJoz0L@OrrLSmY%F@LJ-AJ+~fpS>2+-}X}d3|BZdS|75+1*CZo}^GsXqjFg zAF(7U!+BUPF0A6by^w@%oRt{SqY=w;`B{VViW5mUY?&U-=PBZ*$PlV=V4>q|cWY3P z0P)-sj}=>Nm@ki03hI(!ZH7#Gu{SAB?XmWT-j zi&$;8fHYTPA`7M3Kz_?v7ha8WEtP#?A!QuQLk)%QIJ0Efg^a$g&|@@Zlo83#!wNNX z+$5;Cq=ZUJ#KNWn&>cWI>5_>Fg;~BekJ!Ri3*#&yBdj%q`Vwmw*|aOD^C)Ivaj1%Z z&-Wy-!=RH9+L`%%Z-ENch^=#@j0scP?AE8gPRvEyv^Y#6hFb(-J>o>UK}13+Bo{y@ zC@tpxNNyQA*s7b0IWg6h>Qb4>vR3HeWQce3(`X6BayBQzP)!pZ52se4U1G?(g5*RP^TO9$N zREGTl#pC0x7J7?mpu@GAtyXobP8*}avbY#`r(AzR;~ zWtqBmNL9Oi6$lyG(_OfTs9OZ*3K`Uqk#6_vJrC#~P<|{hHOUTYR$Is~a8FKZOw~;p zRu}y&PO5z9&a9%JU~%Rejya8`uI4udDXFbAhnjA8AT>*ULbOW^%TsW(236!176DCF zPw;t{ueRCpc;sPCCdE^z*K~0nnbVT>awiE4Ao$wm9iAg5;YJatDP?GFh65B z#rL3z%1kub))Lj`!;XTtc#^{4JP=y}m^dV=>QAd(%4BD4F~sjdah)=i{V1V=7voEEA9>r4?m3G90;7oJSMAIK>yZ zV24XY<))MJ$ajQPhlgIYnkn26*qT&V9Av8FI^FJ4LNlTRG^mL>7D63z4KsajnPlqkNlh zNo)gIQV!9M7VQecn{+%J)G(w=`Mp*&8S8v`4)G%^gM09pv6(G`h?1v+gu%Kqft-bN z#T|ncaD=r?shCDxb3B@k6lap6(Od%XMVpJJh}!8(b}t#K9ip7h+Pv?{`94lHOIrj- zY^A%z1b&V!7eJfuP}mI4RDEj6Jq8VE8OLS=Su!>Pp4N`Noa)Xo=XLtu-wQ*Efm)xOj==&52idex*`kf^9bE-EOVHA56n z!K?!ceQC*;^m!^TmZ1r0U1ZflV8Yk}U(QmN?IL$$>%kB$}msAYf=sb_I`}dal1k5G?0}F+w<1;Af`XEe2wOu?Q_lH8gHgNrRH4kSeaW(Qt%e zEvhDtVqv6(1-nl(aO_BuB!`}Nwee7~OfRBmOx%&YxJ7&Qd8tT7jb_<^OVx7G zsSGNUT3O#};gT`O6hfF%$i`WFXw-|OHYs;2EL!Is1+_cfu_7(VgrKy%I%t!VL5mFi zs!2(}24hHbfLaJ1af>O~1GWfOM@%-x=RV=IEB(oE%o!dLm$0a#4J(?{l`44x7`F38 zyEaq|wHOxx%2f>w(df@&JRhSfyR-vrt`P*WGAlMsrN*>Qjgp`o@}0EhW@WTSgPmbY zl?rw?jy$-=f{g)yCYU}QhdqyN<;RAyNF@P=Lu87e=-AP@+GM4)!)@QHIRaaCnnh$@ zVx4MN?Rzz{leH8zSkwh`#A1D13hQ0dO0wc2b(cxcalKNpIENGli~Y2!1{{qkE3s+u zY*Hc9Bufg$SR@R--{PtkE4F&5kOYR(GTUJ>bIAlP!YMfj9goCY-mo$3_vTDOhgu_R zvi_jl_vqCYpwYgfQe}!I+txtg*{T+*;89DO>A;$|#RlS|@=)zc90AbC*oDYxvl-Uv z4&roDLEu~^&{>g*Sz@{(Xn0YF0@embQew))DUOM)~3FZVE9sW!OGC8BZK-Wp{y3ugc5ZANms41?OqQ|HKf7?;&hroBcK5rDkyK{GCfp3LTZysvUN+}mnl51^e| zcZpcbRBa6az7a3DsHW({-elTo8kNdOUNn8#qUb8r5BY2mEi%NMs+0EA%{U@t7|93L zL7@ffvn_%Kg>~dU7mVVxj@PEPW^~jx?=UR}?29-maR@1t^K=BP#ij>-1G}-{-h>USDO0mYOB91AODY1~u-o`9A}v5I!+vOB~g6dIv5K|*1mpfXaxpqfhNwG`M} zW2jP9N;5v?Xi1>Ueq2a_y2O#dvEeMd)oLS`_=!`jbG4*2hkG(Kw)ub=qSLA3w*}2; zR++H4SdQVESCb%=K0dOPc9FmoYC?3%nyNM}A;D647#f<-*i+gM z%hhsMSiyZgg$B?7@BZEgpu5J~UbaDauGgZpc)LAfXU|n(h+yOBANe z#d1|A!!D_elyqMANmI31+in%@>Nu^=+y)Dc)UoWfQOw*Th|}YwNtLm{Dm1u8+m1cW zN$Y5VE$VrvmSkL^>KnkmbpU2L6(qSE6v_5vG?v4mP4Kp1i$c#YNkwniTA_21A2tY^ zh-w4XYp~*?JLzdPzthVW3SH&;B%0SSU2vFcUad+LWp%`f5CM-5u=))M3yMYDveeN) zWccoMtA+FklPbVnJxOB;oh@3fGME+&hJ_+)W^lm%(EGF1Y9r`FfV&YH%THZ}O^cWk z!2_v<*S*o$!$xT^9Ehp5P%T>s23mm`iU9ialyOp`yrod2rftLT`<(!B$a^-aE^Ew| zE>OP$po>FoNg8tvu}5f=q)F67Qa}n(V6suP^w3dYm)ijMs*DjB{N?*8fGFcm+{_xY znWL-*g@N^QzeRIlxn3X5q{)Ex$5|??aST+`DZXrhVK)Y>BrQ=L!t*dy^XlSAq6htU zzR;rxR~fT|p5W>2V5M-j8W9H8W4bCCW71~50@zv_BT{nf0s!%vwRYLSC5Nq}gfyf2 zgAzVlFqP?y4f52im30QR*eChS5av#{5^UM6xVpe&v>n#PIi&HZ1-Af%?L%OOD{jzD zB`pb}kvRc?$`qPv?NX0qMO$x0RS$9{cp55_ZTgIAtwuSlH(g)`vDKQ(0(Br}EQQEy zHSe2zq)@(4;s-sS;9Q_63`bf`5_D=*n8t!-&c%AKVfaJC1UhoP?Tzm-E9kP*sCV5a z?g5{gjt^C-JsI#`v%z9;R0l{ek#-vlW)iU}qeBb;tAytb@e~(Bp`~F=s8%cKY?;~8 zN^HdPNHvD0LsaO_+>w@M5#uF!+8!%#maj|(I5Jp>6}YYyvzf?*3s!7UQn}}L9JSe< zfCZh`8!WJB>R_I(re1xqToeL73rpjf6q^EA*1P3KD=XNfjMWUoS4p&E&|*e$S&3VE znA?l1a@q#-s-Cg7YTG=Xwi;?{yaLm@Dw-77{=CHawu4mR5ZInggX^>!&a__jv`P<{ zzf4e0>sV^3?qu8=0MM`f`(Sd1!R5;v91 z=q9i&F|9c>tya4HV#IbMu&PEQk3vQ*Z4pN8DuN|()fWt?Ir8J~nB(#*FpU;w<8(Mg z%0t$-mIH61RcMUu_E688m6^0R&$30F)uf7C7<=Wq63BH5sP*tNtc|*62KMh}f>#MR zs%a~PGqS6V0qziCTp^<3ILvIP!_+vn7!=Gj_tfsnG`a7F~%U6QRTHE;+;8-?vi z>_k?TF|w!-0EO1@str#TJrn?Bqghhz_o!}_o(5B^%U7_K6+r2HN6jZZ3S56tMDb0H zl7fi$Nqq?LzBrxPLx-=RAukt!eMhlALkB3uDh+nzBO|kk0!W;10wYi?u2vfp^MUPF z8*!8}4omqZR6z?mwn&Y3i;AhHT<2iBr5Lqtbtwu7-@yl?0D-MBFvkkyvI+oJWz-~^ zZik<)0sz5P+r^$di^xUGYWh>HT*Sm-P#L!BfzvHk zw5-xXRRBCh9#P68S&bPCG~Z3^ z(#$2rsY``C$A)4hsHLJ_4Vh%ZNH(31jW({L9!jISuSfRE^SFpxqjDy9njMFqQATE& zP)liG3vX(qZKdJHoToUkz{^^DWOtA$Tqc4=b;8v-r!*4^G#~27GOFrzv$*0RleW4v zBM)P)@GS+$yyv{DBU29EQ!RAXY&G&BeR#Ohp<6(Hko8Eq*o zr4;as)m&DlIy73UW)FsmT73#hQVRrF6w!8u(M+jY!HKvpk=%r)$_s-OQ^K*ikPWN` ztPb%;9m`ads>}?6Gge!`px3ekCh3nBGzyT)I#Gz2Of?WcG(~%+Zvq-2Ls=nREcjlp zK0&|^m_(CIt(mGehhQpf^YPtro_p;5X+Y@GZ#3l+&fKcn3}{kq zN)?}rRTQJ<86G-JS}e#B=J`UsYMTV`I%H)HSHlXhnOCE1FJ=a^gjtifid-SgM6>JV z>DIC}NS8~x-)Rb%4jz22z>_EqG84B!U4TVmkI;4S>U0E20U;|15a_wlDa<3F9+^&G6u+t9M0221FFn-nk368xIdU@LRzsnV1u?BZUpgVEy@~8 zzoH}s&aWG$VUob3!Nl`a2@)OXF7;qY&7`eCnaq4jrWkTU^>I7jODL!+7%jxtB9Z9n zVo~!a{c&|V(3Iw4Q6xk{p}4TCYX~h!pU=wG1uTgmvIkX%bKrzst=Q#Z z-vqt}HW3|R7z*=D#j+yA_J}DGXZ{3t)uCJysZ24C5h} zmaC)E+=RoHLnR(qb?^>wJ8X41;%uP%)kNT}p0X7RimUEm0+F~$Mm4yWEm}coJPgr_ zBP;Y|!nw_IMh7LdP{t=vWwdDG1G_i`ybVo$WsOF&vAawsRwwoWW{EiMjA){e4?Hkw ziGZqA2#wtq7gs%CtV;8YE+T!O$6ZKfrFkh+Er9TZoR9?^A62(n*yY#`&ywdFB2 zh~&~7WhZ7xulD6~v1a;Gm&n^ZnHuAIVk{`guH%8`cWJICjuu#FUPl)*7%_~>sIQIZ zLd!7wB#0aEO6thgq29>#omp%zw_4~8Q-agF9hdRhVX|oP^rR}%)k=#JBN*7hQ#QGx5ns5x4Cy6UK zE>ZFaBCn)WVhPZE)(kxt>xYmGRinssfUlodDu774w`i+4&D59e)fOhq%qKUs$+VPN0PFuj2akQPm1|*swtJlSZ7w61HyrrR2m3cYPewWud)C@vx_d? zwvUURttnf^}F;q>TvC*KbmP37LFoWZ46p1UH5uTV$lvp?bRroy5jS6x#VGL z0+fA813@Oy9BbA&C1}Zo7OqrF^B6XUs zaBSTxjxj8TXt0$^QWba#%UUS1OFF*<(Oh7cLmFUrPf86Ogc${02_Lr9xI6-}15hyQ z&0L@KGYP=IIHIkvFA&o~c(W#{Mm=Ig4d;xCwM|tee0{cQzGQN{i)eue5fitavWgO; z&^+jRT(dsKqXn}`%Vio1poEbti=GsQAgYE%fRz$~zT+V5Eb_^s1Pj2#(L&tO=j^i3 zELOFsH>|0#RWg!+OgUaZl<6|r^B9IH*5n?qYpYGF>KFSSHYGqvYPs4amf4h=h;yYc zXB{aKvKl*(fpy1eGGs6gZU{Y-MO($Tq;>&PF{Hr?-W^Urh#jdW3sqC+jI=N&3kC~T z#-j_2ol1LD*VTD9YEP@nu{i4n`4;Xp#U&1)g9?LB$wngvUNWs*r`0CZME!=W4^?1t zm0QxVICJYFaN0#H!>8x7Ryv#qs)*KEmItAHTB~PIC%_C170ts91qGQ-W8R@PQY8m9 z;1i366SfZGXX?ywiNf5IG4LN&|QyfoQaCvo-?rR+){#fqAl8 zuPIOv^N2ZQ^f1GlBPyNiGoyqT`6>Xd35_FBwCA$U%Gnz6?!fH~_yO?C1WwWJII$Ki zky@ za5>uQa=LKC8a9%Ap$pi@mw<9FQ&dfLq?z2%!Hga90$(kM7GrflBBIk-D{7Z4|b}&01yPw2K`&EXshc;Ajyl)`6oMD5#k# zrNDaT*g%X!AJIq|&tOy`?I2V6z*u^-o-uQTm}w;|O9}))MUo|iOq&g5yQIZa3v50M zR8hu_SR4Qq+=(4E$(IHs9(E$zM;t1I8*&g5nu7VF1i)b5os{EPUg_Agmg$-;#VvtI zeJvB!=9ClA#HXuy*iFK2uTLq}Q7{PRBs;^bywf**eQ0__l5~f~O@!T0LefqhUWZq@ zjpN~}FpJd^q46CM?Kq4jt&2(m9-+-5CE=k5{5H*&X4n)P^*xtohXcorDh?&^PMzd* z5XR(+3<|<3xvfzKk>?s>;cyoX>^$Ys?MebE3W{zbm@Qjm+9L4XfG}jT)B|0|OZ*gg zQ!E?kI1txCM|#S$00bK15SSTT1l94lSV9`}Ik28ez}pEhTCy8Z{dS5eM$gV?*V&oH>_p>+^fgVykFAs(4%RP{&c09YK2rcs2)K>L9Bm9n&qI<8`l61nc7 z*3@0lRzSr)LRog}5Uyy21`u^Y4clQNReHM6s{;)Zrs=K*!kLS43hT<;izSB->hNl& z5DgHo&<1K{({3+Ys)vSMA4_@zR2(pdRX-2lg5r9T|VkQp7GQ3EODxEI)6!FNU zK&1p7@<3=ZVT*^7C?$(dmA9r-REt}SGN-W;5iP0~2(M)uCb2-BWjzld8#-bUlK{w4 zZR8CV#xZ&Zmd$3~Fw(`+gt3wpRMn&);DvMn%u)l2a#40w1OoF}5jnKulu!@?8VL*2 znazN@Gws#|0fXn8*t}TQ0-eleV3$hGQ9ms>!b5ciJzu+vZ-1)$7~FO-gXJ36MtEoe+<*lbFUNU5ZK7tOUa^_anl#WSh#nWg z8!Mp04V{q-CQ*A}P^EVOj_W$RJ9aa4Sulc`O>Q#0CLjAq916 zfoSmoVAr6|LIs4cbs`V~3*O##)M7y@735@u_$AdV%z42aK%ra+iWvx-N|AJyZ?sE@ zQb1NM1kSArYjg`WMC}1;D(KQ^&_Fz($_+)sVdPo%Amn?3MA+JEQJH^AV&KAm0}#z6p%?pcGaHas~0XjAT~-v$>7xf9)Q1ZKKn zN{2yY@!)XT9>9ldK*cy*g>4Hd6_Gj&mF|7TG1VVLnx0G(9o&cmn!QQd{cn;!ruu_O zH|*G**%lcG_N#YA1+l8<8T?VjKfB;R61NMSBnF~hU{t$ zjM#&!A8ivjIC&3s>*zq;%gp}{^<%0(6m@|0{13%p)%b^~|4^?1w-~MNEqajDuE;zf z|0s$3Wa8-H9CNhw9+_^sQ*a)5aZJW0`!>(CN_KSrr}t)nBg+4+Gp}2R#gFLb<~jT; zr#g_6&EW$F$nSl2w8=-$ysirTzYvd2`o~oNEP(Al$aDEZobwdmlWo%0sW0|Nj`e|Jp+Kppk!I z7dJa|%%Bwi_`&mIO8s#n_aB1)%AxrGPls+bp!c7Q_s;AGPu|Oqxh>&{l<08+KZQHi*-nnzfaeH^~-MeS^o;}B(aPmpVpRn(QJ$p_%^`w3K51ew!DSJwT`}SQ2j^A_qf&cdB?vLj79k=%AwMTEP?aQt2Tie*TcK2<$ zv%p=k+rhQ0M=y-sw!X1_$Ii9ma=Sn_dQxs}V}1Mjwv8RzH#XLHg3{|7`*Pd1?>PA! z7!`KzKcq)bf7x*diZ{Ib&Qs3CKKA+ZN_U(p{`?WfY3EnsXI%3hK;n$G+{We$j=o`& z2B5GLWL7{^*4F@K(6^1;`Ubd$c5Qv%IU6v#?PNi}bN`{}>BX1b@b1rV|JWTrKX5K~ zicu1!yT6{>yRink02=a`++CL;KRE8Y*RB7}^2lS~?5D?XJGpwr5C5?1`{x}0W}$Qo zcgqd_t|y%9eettjc*#YlOsK~_8hgF_6Y=-wyzHlEjSjxNZHeD{<6qwTvCDS7{38dh zd-;>j`Rf;z4xM{Tf82Te_nws!C;{MpX)UO=y%we2S#?>BD#!_NNXxHDe!*q>qQk8fdP@mtrm;h%irmCa}0 zb>2Jv=|b+bn+rGON1r_Rd9VG$O)t9r@Xfz^=4H|a^$+g8c}TzL_Pc($vHvVqs7k6HFpLE*K&?_5P zzkc8Q-~7p+ysh@8r_tAc`)TV>&e1>o_Dwstjcp> z{D^sbJ-6KZqTjr3B$r=v^R^qWnLYio&SgK{|93Z?@swA5^@css8*lt&?y7J8`i=B+ z#!&nk@xtso&YQ%W{_1Tv|MK+aH{Ra4`pzFd^9qB%mHti8`N3Oh;Wq81&;09We)YYz z+vQtc|BAnS;%E8c8_OR$`QKjiY}kL(9IH>qnk1U#2yYZ=H1gq368s z+OM5=`e>(n(=Q+K#%G;#(uvEpv-h3leDm;P-y5EGR}DS$b7vfP+4_l3aX*I~yiomI z^)LMAKl}V`!BrCWxn1A?_t(?gZd}d)!_N6)MxA`kxxf43DZ;mQKKGSZU9{^pH+`=6 zsb^mI;$MF3@&9yo`0}%V@sE|KPpHdZOn?84r`~+=TW|j8mp*^;Qk;DJgFB9V40`rO zk9vLk{{c%tw7>SMO$|1Anh zB396B2OIULL3B&nB$$y-{1C0XB<;`ufCw7_6ncdxw!uhj5=fc{TeJ{{yO{lG4f4Yo zKpRy0ih`T;?g*L*+XKQB4%<=$eI_YTEHNfHiecz-1R2_xm#BbYYgaTF85 zzyJgErZqy76FZ7R9tzYADxr%Ud(bqnDG+E4(ba4R2i}2w1{A3Wh@eTJC(t9|Rb#9G zI@bLoffTNa?QZ~%BV$p1N0zMuEu*VpKRBtfyJN~D5Uxz|`PWM23YQz5Q@athBrS#% zt&bi4G;%oeU{{OvE3qBwXfeqc>5gN1K;3RJr&kaUYNbdP6^^upM*9jC1F-g*)Q}_! zWl*moINW}edICub7UCu&rqwAti)CU~*ht%MwD%IuK~{hX*nFvQCwUR0ZQ@UA5pOFa ztuY2T9@L5S;FYv$2NGtFpzRWN>C@I~xhI0jg=Ndj_B_-eAatI!9m#G@)1fb6*EV18 zGNcY9jg2(yY1#8i=ZU5^nh0pb&>)nqIpeh;x*S6Lo@f$2D(l4vIKY6o-0j+(i<6#r zG>7#%mFnwHU{=nT2jxj1;*J#qywDru=vMy#DT)HJ$B>{W^rS6^60xUY@9#wi)LKCV z?;WV%Ecr)c@T7-;bq+-F-kpgjKMwUho zq@9P(vSppmy1dRLO}qI^Ig5~!Oz^-Bfc5C=MN_J9$J)n8-db~h`A2@ z1X%cH!cgij?)52P6e+E=88h*v@jM}XPXM?66gKUc`=#=Q%1M1|ULW^z>W8b%Y#%IwIhdg}R#K9C zmMk~Ij77_&3&$C0fgwsli6d=@`PBEMnH~07TkyLM7VMC1I`CtD4 zP;bia6TezMB72LxnYZxQ1Wlvt6)jFIZs|Lx;ZxrCC9r${012!dWyM=uEwvPYokm3W z`O=K@lvjQ3M8Dxp(@Q=@+7_Sv;wwd{nM!;zLkRHc31}O;oi6VwNZNW(<}UE-Y>v%> z+j;x1GfIId17lLB+)eIJ3{@7W2ueayorDddmu2oMY<%9^Uo)l97Cq`zTwVbpGXDTA zH1b02lp6z-_o`Fjf|U^tVK+=IL(3%~@;Zvr(<`}bC7WlSR)B&??@c;Ef=bf|edH*> z2cSLb9FhyIgk0d)Hs~rT)&Bt7O-}X_en`csKoCI$ZM{)yni?(;cO&OQrWA`20f|a2dJQ}wjz;Lj0y{Z*i$9E4k5z^M)e`;INOoOG{azot8U*4kiRDh-hquT zVMu!+l9?X$4VII58&V`pZ&@~4{Xw2=Z~FJF?4-Pc$L?z;%~x{5qXWUd-2NP5EF$4q zfi~@;@9rv7=`Dct5>x7l+kpPqZ#xxxO~d<2H&}DGAd0eMMXWzVp2# zlQUXxdL6s*y976WT5+3QX$3?V&>#=QdFdnJG_gRmp^o{uiw zmy)%way9^y(ETY~7?zvKa=r1Z1F~c->_wL3fB|tcB$40RpK3(*u#|Yuh1@kQUb3JR zTadB%hfZmBCAhml@gEiKE$tn-RnQDJ0+#4j$(|?cSK5#ySFF5x!mnFG(})EnOVFQl zOXW1}ydtrjKH0ew!~A)SHyXwTjm5+SDbyb?ekFf|eQ8{IVes8pyrcHh@Z&tWaNZA^ zET3}U{nTsHdhZ93w>(s-LF~zKirtqxuNtuHbu`kk2EyNO&S@TCm7{M^_S}7HzEmor zHqXa=ClGbvX?N%OPL^FQnFv@U5Kpn16HIP7qFWR3yA8nHvSSdxYT0*6(9>=#1uala z50Er96e>xi$Q(cIZIZDIrP|wO3n$)7%41KQonB%{3QSDMBzHgripE)43s@Kp4gm!>xm*Di4T^l4U)S0r;vq=XENBE_{3Rtis9;-7P4LIw$FpbB0a z9%qqHxrMXma`GG`u<(weXj84i!H!4L!Fq*TTD1lTADNrNhO6(V)f_C=(DGgl>sDe)a06K=vD-?W@ zs%MV14V4w-;YQsn2FqSSUPm*r_N<%mTvwDwIM^yP&$UIq3Q3ra--TH<);y=M3kMLD zmjGS5PKB8TLPp1PxbI%qYT)ImR^$dF;LnH8Je!4OOeoy8K||klMzBW^sF@U=cN}FT z?LXJu6+5r9&xThER;-_fg(xW`p@gK6c?JhqsA*fXUg@pd`;oY3*^9#rD*YFBIboYi zgwBT;aY#^}cLt?YTWj_Ni6Ho| zVzG<;g>svg7Y78)IhPK;PPgrq{6$M`F6l6$l}!8fj{5Q+? zXiydntwBX;R*@i`iTYQ1M>1|M(E0HDF1`?M@ViULl1WORX(}l)c#%qwH=j{MjV~zS4yh}+v~K0Z!3uN*LH3#i^ME$|E6L{ZPyYbZ)(LQ|txNI| zsHmAHW0~HSChm$#xF3JQ%&Tza+J+BqpS?^u$yEw zRc49Ds3#?6eLKEz~^d-=)+U- zU*<1{q}B27-}@wT_ka%Nwwr3pHsY&c3IsQDw61-oCbW!HRVGYy`(s_quw8g{j5zXE z-Z!B!1Qc#~s>`ElzDkC9@PEWCe)`$$BRJdPjWP%=n@=-e#Of6igOjx?B3}|sILR-u z2-k+bGT~QEzSd^KuabogO*w3|Y9A1zzwhBHI;pRj4z)b5)UslD$BKAlVW^&bx6O)VliEO*}%fMZ2$1c3=Jt0BA^+_%IyKnNU zTDo%NYgP{Pv9IC&F<7q3-r(FIBH$=PQ>gw0~j6`)Im$Rt)}FG4v;^&Pr6JkKbP%!c{*y z_nSE>Hn||4xp8hQeZA{D#j?`Pf+&zdA`JV|bRR3p)U1L1sc(cVu*(#kTlM#?ji7B1(i2HAOU^1Bp@6W<9ABma=rYJNEbDn{|Shksy*x9@RLa zR!~DbCx86VH2%Y=SV-hk+@!rn)RLQ5mPe$d^!B6*lR1-G*M@3b2Mmx1?0BLM)<~zo zQj|lAFhVD7wxx~%c@%{SJAf!2Y;`UH)|e$nQ2yH;=n&#x-T@{$iUz5?3QPQnliGn; zw7nyEG5S%+_&BAcjllVeet?)d?5y7q<-1Cs`;oOZu_|0y6N-3$mhrYrSC~bk=qH7= z2>mK)J;CP^$p?@4FPAe5HqAQH+eNf_L8l4=BZ!JSV=d7VP?jXHRCAwzShgvIyKRDI z%u5Mb9)}rmB&7cU`2$fcKIPlo(9~}|!#FM<;va{3NxM}Q<~z1h6Xz-d+}b4X%@B;^ z8g9y6(Md&Lzp0$&ue9c7$~Tt77t5HHt4RgRr&7X}hSDdf=DA+9qc53K7sQH6FB1JL z>Tezm{h;tH^M~7A;n<@$4Z9l!K?kuN4Ryh-NZK1pn~%SEH&ELclR@U)NhD6knui)> zr&t1Ao2@wjY8-+qCXFK{vCYy-NHv6=Gj)TY`fC@tXcptKtgNW5fJ#tFn3}<-crKBJ zESZzIKK1kp_BpFL0CgosB4F-mS0v%C)G|^GjlPuZh_%7gBy+*|b4envaQkEqWJGgR zfi&^pnX_g{m;>ILbSkV9m_4PvtqcbNS5flfrpLvwfT;(!wKPkkg;VYQ>3s@qwSmM9xQY|jCbArMDUD^_HcSzpAg+{0E9tJ^iYA zG`m2bc-jW^fl<)-(s%h&qcJmR^Y zovEclR?em12Y-4Hkf88_H;yT*74gCMo&f?#_U%STfyUnW5O}05w;n^gK@;sw0=6-I zgW=etN^a`WrxLLTS^<$ueaCcRJ}dp3u#sY{Z!5fT99fr;>Rq(-1s#9X1Oqk0)W_lJ zx#?l7`$WAhJzecTLOf@`6g(?-#NxPOvCJUp3%sydD^IyW>F}*1t*aQPINgS%H8ktF z+Q--KZFyhq9f9I2w6=Bd-P6z#+nXwDp`_J{*4&z=9gbnx!&;D}l^$y+0+Vsb^Z0Nm zQkqozS2VP|8pBtHMO`rCDAc6FXJTuXQE6o8gqFyQQ;7;Y51n(-qDCj>z%V#F{{H}c z*U%-LoSWmoEy@F6!i?0tg4$Kc5>lsCzZ3AK$h|iTX4Xc+d&Lwrm4N0g^s9&i+uo|Y z5lJ>lTcoFxKKxUT2JI$DWy|2aV;*3}kKmKbK{{ZEA;L=H`Cqt!Vr=7c3 zM;J2Se}4Tzo_FyMzm-j~q_T$DTq~G6QIRYKw&5UtwO*n^O2{34RBp!diHs`(y~M~U zX<@y!EkXo-{{Tu$!8ds*?4iE)NFBJ>+icNv0I;o zB*+pzdwcuWo}{#ODNF2hDEGs--m))^M-#?cVQL5kB#}E13=>_j*6wt3xTT9X%qtSZ zb4{R6o|01p5O}VG9kwgD#e(pw#WtfTJE33q58vrZ=@lKoL;cUaBvtUvi;@RFT68`K zTeu`{WYC3fhfx0jL%(UFxf06AQ%-6G6Vjf;r@7BE4<~N45}Fm}NG5mp=ADPDI2|PJ zKqi*Jbq|r(>rZi^#_kE)cAln|#HKul$?6YtN0E9ltYXRBLk7BFB>KRDN4-Rnlw4U+ zb!eP#FSm&0_F8oaS@QI$DihM83$Y@c-Q@HApV`*K6V7g4-KFsLv#Kn*l@J>TwJyZW z={NIcwhhMe-hc4^^{dRkdU0$uE=!iL4_1xmNga5po}{AMLzbNDx(>;_llH2%e-Ty} zj#|5eUI#poi@~E&--3A^YSylt+gmdgHE+FEXxs37*@tFERD?X*(nJE415QxI8!0%u zOlso-f6iBwWgQ8M^JSp#2T#T@CA+42pKA23iL8SZDbfkrkVZYbF-@_lTSvr-q_`C> zNlRN@w-QBK+W_(!+XU=Rz|y3)7TK_rTY)jRdI{g~?nYQz+1h6eWl4AaYqpm9l99?K zP(L$VkW2nd>v~4n_-V3as3|@BZC$LzXK;0(D^iBSklK5psD&N`RG?dj;kb3qAXJ-n z9D7OMLS{QvU6Hm+RhNhN7Oyt_>d@OrAw?wasx2{J2$aWjQW>{fY>*&G2>mEX5_M)R z;%A8Xo&|<3>dOvY^MrsJLbr+ae8A~h>S{Pf(z9qQx;(?2^A-D-_n6JQ&e^wgfErHjsyVt^pI2dgrA)_YJ4=5 zGu`L+9O2yCYu|#smvW_^4Vy19Ov0v1S8`Ew;nV|@@5$z;PfaPesmV6`dn51aZ24m6 zFW%s-TH&wxg@u4Fo1II8xSreBbUQn6&R1^+!Qswv!oK#5Ik&*L>L-vVfnCsR@S`Ud z^3A1}FpOu(4;@c6vJ!gLJ2A>-FC4aAjwJhQWU!K=QU?+3PX#YRFx(V^H#^MI`jvP> z+PQ)^2jfNVH2eiN@E{rxs3oVM?X*>JO1^j&U-Xka4knP&rD8nu+==bYG)-pMuR1@) zE&=aHTXdbz;phiSWZNVxEZ)Rj^4Uxn`ceYdhvCd&mViDIw|O)GCMk%a7VFTBhT94S zgn%%tS=9|kQd1QtF+RW{!F*T3o9G^GVAXRn_uPmVJiGuXJh^T zb;YX`)4!q73o?9fF1>Arps@4qT%jISniQD@DdtDQE6db_Nl9$rmJvvarQ9_ z%SmIwo^F9>*5|@_xoEol_qDF!vN$3nzd`B56LvvW@ zrls9T^*@K1y%>$Nmmhsgud)GRQ@2V9xM3QQ>U-9o zLMf+$hNVhlq;3T&1e(GcO2|7OZRr%U62q!Ho)3Cyf_4~}NS?mtnx;#&Z*kPQle*hgAq$|ZSHq{;ssaKPtgvvn2A30s2(V^VGb_}w_4Q!Yaf+5;4?y3cXNp> z27w}CPkKlz0ao}+tf0Sh4kU>P9VvxgHXOTLEpNT* ze&JfmmD;dtmN>di7EpR^w)KO-v|Zq2tf-yq2k2?t$A$vWuY_eUbI@HEdC-w-q=LM`_PwxcUs9SYitum1~yDB4FI2dWZQW@ zAQ7-BKdlu)PSy(*rRE)#@JBBlSY6YIo+n85rNJpaOiv_cmh7|UCd(>AMYof3xLB70 zf}jyR@@tz;QSWHo#};}Y2*)to*n zNZ;Tqj(sd-l;YEVPOU9&*;BeAvaUk4dCS{OU>$4?NC;6NtevF(`qmvkPTFzRc9FKO ztb3H98u#SA`EIWmr?uo;Jx9Q=K#sLySPIZ z?KN?5Wp4-o#FHoGU6Iw(gu8iWKMqn>U;H5PD+V^bN=H&u9|nHO^telGJ=!e+r2U8WD?tEV2Kpf zZiuI2&5!AWQ=Q7Rl`xdFKpJ-u+NhfFC^5L&nk78YQW^5lS04|05<^Peh<6xN7ZjqD zr=9tvQ43?@iwL}O-IYN~h$G%=RFlFhw#()Vn3=@w^p|9)M*K}u$qo$|=Zm<0C4j!} zBHg;LY!E!h1ACAPdHg6l%X^PZyuWt=O}>xLdc1(1pCA$=-VVaaH{%p&>Z4Jx= zB=91o;|B3oh{iD&FYVmBAy(^>5`^-o5+pvRU0<_9LaAvH;|WfvNY;LG#Jj7<#k5ZjBn!!6reYeRggWW;?3=U!&F zTNSB{uTQDnr_(p5-?2@^yh$S&w^k2mtUlg-75-4ZCytGRqOZJ)ZuE<)Ns z1`yk4-@g^A>O1cDW)sov$qN2lMYc5aPu<+O>d~byD|j<7KDEmFd1>mmDKoA*s(Nmg zeg6O^vzM}aR(AM0+4IqfS-gh};akE)lOEtl&b>(KB^a#Qqt2GA`IF@Jb)DWHoh&V` zt=|jb=U&QplgpBKkO6KJu@Gl?s-r9mHstZwnWgwqqRpL4Iz&kL(3q;0 zLM`q2BuS*U4bXc`%*+w(RI!2*s|sq;dQzc?#5CI4m30DUo<|jjMhD`bi!S9`#x2>l zUBhokQE&Q8#c}HEd_E3{!thcs>~Xu4Tw*V{t8=SgmQMQv&19#|mg7y4*+=agcWV9n z3|hGLyDo;=be)`0F&zHlv0Y+US)!JUldnGW`Wnyw01@~)mu-aOcIr*d!$7!?=@T#w zYySYqX(=d64WY}WoLgyOeny?)MrgqmgCgG65w_7p(l79O}T>`QAH;%4>Gc?N)im7M{3zwvb+

jvKS7EV2reur?7z(6ZV*_u`gm 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 W0DGnvXpUX|AaU@XKzP>uxx8ug#dhV#) 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�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 Hey9K0&lJEj literal 0 HcmV?d00001 From c9fdf4cf49789a5746067132e52e5c56afef25dc Mon Sep 17 00:00:00 2001 From: Emil Hvitfeldt Date: Wed, 10 Dec 2025 13:58:42 -0800 Subject: [PATCH 2/4] Apply suggestions from code review Co-authored-by: Max Kuhn --- content/blog/tidypredict-1-0-0/index.Rmd | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/content/blog/tidypredict-1-0-0/index.Rmd b/content/blog/tidypredict-1-0-0/index.Rmd index b6fd82709..31df422c9 100644 --- a/content/blog/tidypredict-1-0-0/index.Rmd +++ b/content/blog/tidypredict-1-0-0/index.Rmd @@ -46,9 +46,9 @@ library(tidypredict) ## Improved output for random forest models -The previous version of tidypredict `tidypredict_fit()` would return a list of expressions, one for each tree, when applied to random forest models. This didn't align with what is returned by other types of models. In version 1.0.0, this has been changed to produce a single combined expression to reflect how predictions should be done. +The previous version of tidypredict `tidypredict_fit()` would return a list of expressions, one for each tree, when applied to random forest models. This didn't align with what is returned by other types of models. In version 1.0.0, this has been changed to produce a single, combined expression that reflects how predictions should be made. -This is technically a breaking change, but one we believe is a worthwhile change as it provides a more consistent output for `tidypredict_fit()` as well as hides the technical details about how to combine trees from different packages. +This is technically a breaking change, but one we believe is worthwhile, as it provides a more consistent output for `tidypredict_fit()` and hides the technical details about how to combine trees from different packages. ## Faster parsing of trees @@ -73,7 +73,7 @@ case_when( ) ``` -With this new update, we have taken advantage of the `.default` argument whenever possible, hopefully leading to faster predictions as we don't need to calculate redundant conditionals. +With this new update, we have taken advantage of the `.default` argument whenever possible, which should lead to faster predictions, as we no longer need to calculate redundant conditionals. ```{r} tidypredict_fit(model) @@ -83,7 +83,7 @@ tidypredict_fit(model) We now support the glmnet package. This package provides generalized linear models with lasso or elasticnet regularization. -The main restriction when using a glmnet model with `tidypredict()` is that the model will need to have been fit with the `lmanbda` argument set. +The primary restriction when using a glmnet model with `tidypredict()` is that the model must have been fitted with the `lambda` argument set to a single value. ```{r} model <- glmnet::glmnet(mtcars[, -1], mtcars$mpg, lambda = 0.01) @@ -91,6 +91,7 @@ model <- glmnet::glmnet(mtcars[, -1], mtcars$mpg, lambda = 0.01) tidypredict_fit(model) ``` +`glmnet()` computes a collection of models using many sets of penalty values. This can be very efficient, but for tidypredict, we need to predict with a single penalty. Note how, as we increase the penalty, the extracted expression correctly removes terms with coefficients of `0` instead of leaving them as `(disp * 0)`. ```{r} @@ -99,7 +100,7 @@ model <- glmnet::glmnet(mtcars[, -1], mtcars$mpg, lambda = 1) tidypredict_fit(model) ``` -tidypredict is being used as the main parser for models used by the [orbital](https://orbital.tidymodels.org/) package. This means that all the changes seen in this post also take effect when using orbital with tidymodels workflows. Such as using `parsnip::linear_reg()` with `engine = "glmnet"`. +tidypredict is used as the primary parser for models employed by the [orbital](https://orbital.tidymodels.org/) package. This means that all the changes seen in this post also take effect when using orbital with tidymodels workflows. Such as using `parsnip::linear_reg()` with `engine = "glmnet"`. ## Acknowledgements From c5c1e8642efe7fbb1028a1b8f78e357aacf96ea8 Mon Sep 17 00:00:00 2001 From: Emil Hvitfeldt Date: Wed, 10 Dec 2025 14:27:14 -0800 Subject: [PATCH 3/4] update date --- content/blog/tidypredict-1-0-0/index.Rmd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/blog/tidypredict-1-0-0/index.Rmd b/content/blog/tidypredict-1-0-0/index.Rmd index 31df422c9..9c6d1b093 100644 --- a/content/blog/tidypredict-1-0-0/index.Rmd +++ b/content/blog/tidypredict-1-0-0/index.Rmd @@ -3,7 +3,7 @@ output: hugodown::hugo_document slug: tidypredict-1-0-0 title: tidypredict 1.0.0 -date: 2025-12-04 +date: 2025-12-10 author: Emil Hvitfeldt description: > tidypredict 1.0.0 brings faster computations for tree-based models, more efficient tree representations, glmnet model support, and a change in how random forests are handled. @@ -104,4 +104,4 @@ tidypredict is used as the primary parser for models employed by the [orbital](h ## Acknowledgements -A big thank you to all the folks who helped make this release happen: [@EmilHvitfeldt](https://github.com/EmilHvitfeldt), and [@jeroenjanssens](https://github.com/jeroenjanssens). \ No newline at end of file +A big thank you to all the folks who helped make this release happen: [@EmilHvitfeldt](https://github.com/EmilHvitfeldt), and [@jeroenjanssens](https://github.com/jeroenjanssens). From 6aac5c3e501a4c95768dc600e1374f6f2e79b5e6 Mon Sep 17 00:00:00 2001 From: Emil Hvitfeldt Date: Wed, 10 Dec 2025 14:27:21 -0800 Subject: [PATCH 4/4] rerender --- content/blog/tidypredict-1-0-0/index.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/content/blog/tidypredict-1-0-0/index.md b/content/blog/tidypredict-1-0-0/index.md index b2498b1da..2f26695d4 100644 --- a/content/blog/tidypredict-1-0-0/index.md +++ b/content/blog/tidypredict-1-0-0/index.md @@ -3,7 +3,7 @@ output: hugodown::hugo_document slug: tidypredict-1-0-0 title: tidypredict 1.0.0 -date: 2025-12-04 +date: 2025-12-10 author: Emil Hvitfeldt description: > tidypredict 1.0.0 brings faster computations for tree-based models, more efficient tree representations, glmnet model support, and a change in how random forests are handled. @@ -15,7 +15,7 @@ photo: # one of: "deep-dive", "learn", "package", "programming", "roundup", or "other" categories: [package] tags: [tidymodels, tidypredict, orbital] -rmd_hash: 8fe30706d8dce790 +rmd_hash: 5e23e8ef618e8397 --- @@ -52,9 +52,9 @@ This blog post highlights the most important changes in this release, including ## Improved output for random forest models -The previous version of tidypredict [`tidypredict_fit()`](https://tidypredict.tidymodels.org/reference/tidypredict_fit.html) would return a list of expressions, one for each tree, when applied to random forest models. This didn't align with what is returned by other types of models. In version 1.0.0, this has been changed to produce a single combined expression to reflect how predictions should be done. +The previous version of tidypredict [`tidypredict_fit()`](https://tidypredict.tidymodels.org/reference/tidypredict_fit.html) would return a list of expressions, one for each tree, when applied to random forest models. This didn't align with what is returned by other types of models. In version 1.0.0, this has been changed to produce a single, combined expression that reflects how predictions should be made. -This is technically a breaking change, but one we believe is a worthwhile change as it provides a more consistent output for [`tidypredict_fit()`](https://tidypredict.tidymodels.org/reference/tidypredict_fit.html) as well as hides the technical details about how to combine trees from different packages. +This is technically a breaking change, but one we believe is worthwhile, as it provides a more consistent output for [`tidypredict_fit()`](https://tidypredict.tidymodels.org/reference/tidypredict_fit.html) and hides the technical details about how to combine trees from different packages. ## Faster parsing of trees @@ -95,7 +95,7 @@ case_when( ) ``` -With this new update, we have taken advantage of the `.default` argument whenever possible, hopefully leading to faster predictions as we don't need to calculate redundant conditionals. +With this new update, we have taken advantage of the `.default` argument whenever possible, which should lead to faster predictions, as we no longer need to calculate redundant conditionals.

@@ -110,7 +110,7 @@ With this new update, we have taken advantage of the `.default` argument wheneve We now support the glmnet package. This package provides generalized linear models with lasso or elasticnet regularization. -The main restriction when using a glmnet model with `tidypredict()` is that the model will need to have been fit with the `lmanbda` argument set. +The primary restriction when using a glmnet model with `tidypredict()` is that the model must have been fitted with the `lambda` argument set to a single value.
@@ -126,7 +126,7 @@ The main restriction when using a glmnet model with `tidypredict()` is that the
-Note how, as we increase the penalty, the extracted expression correctly removes terms with coefficients of `0` instead of leaving them as `(disp * 0)`. +`glmnet()` computes a collection of models using many sets of penalty values. This can be very efficient, but for tidypredict, we need to predict with a single penalty. Note how, as we increase the penalty, the extracted expression correctly removes terms with coefficients of `0` instead of leaving them as `(disp * 0)`.
@@ -139,7 +139,7 @@ Note how, as we increase the penalty, the extracted expression correctly removes
-tidypredict is being used as the main parser for models used by the [orbital](https://orbital.tidymodels.org/) package. This means that all the changes seen in this post also take effect when using orbital with tidymodels workflows. Such as using [`parsnip::linear_reg()`](https://parsnip.tidymodels.org/reference/linear_reg.html) with `engine = "glmnet"`. +tidypredict is used as the primary parser for models employed by the [orbital](https://orbital.tidymodels.org/) package. This means that all the changes seen in this post also take effect when using orbital with tidymodels workflows. Such as using [`parsnip::linear_reg()`](https://parsnip.tidymodels.org/reference/linear_reg.html) with `engine = "glmnet"`. ## Acknowledgements