2024/02/08 08:52:58: Generated dev website from groovy-website@605e70f
diff --git a/blog/adventures-with-groovyfx.html b/blog/adventures-with-groovyfx.html
index 8cb33cf..31363bc 100644
--- a/blog/adventures-with-groovyfx.html
+++ b/blog/adventures-with-groovyfx.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Adventures with GroovyFX</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Adventures with GroovyFX</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-12-12 02:22PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Adventures with GroovyFX</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Adventures with GroovyFX</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-12-12 02:22PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>This blog looks at a <a href="http://groovyfx.org/">GroovyFX</a> version of a <a href="https://donraab.medium.com/my-weird-and-wonderful-first-adventures-with-javafx-6efe3b1923c8">ToDo application originally written in JavaFX</a>.
diff --git a/blog/classifying-iris-flowers-with-deep.html b/blog/classifying-iris-flowers-with-deep.html
index cbdcda7..1e2834e 100644
--- a/blog/classifying-iris-flowers-with-deep.html
+++ b/blog/classifying-iris-flowers-with-deep.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep Learning</a></li><li><a href='#_encog' class='anchor-link'>Encog</a></li><li><a href='#_eclipse_deeplearning4j' class='anchor-link'>Eclipse DeepLearning4j</a></li><li><a href='#_deep_netts' class='anchor-link'>Deep Netts</a></li><li><a href='#_deep_netts_with_graalvm' class='anchor-link'>Deep Netts with GraalVM</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-25 10:52AM (Last updated: 2022-06-27 11:16AM)</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep Learning</a></li><li><a href='#_encog' class='anchor-link'>Encog</a></li><li><a href='#_eclipse_deeplearning4j' class='anchor-link'>Eclipse DeepLearning4j</a></li><li><a href='#_deep_netts' class='anchor-link'>Deep Netts</a></li><li><a href='#_deep_netts_with_graalvm' class='anchor-link'>Deep Netts with GraalVM</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-25 10:52AM (Last updated: 2022-06-27 11:16AM)</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p><span class="image right"><img src="img/iris_flowers.png" alt="iris flowers" width="200"></span>
diff --git a/blog/comparators-and-sorting-in-groovy.html b/blog/comparators-and-sorting-in-groovy.html
index aa8cd39..7e80593 100644
--- a/blog/comparators-and-sorting-in-groovy.html
+++ b/blog/comparators-and-sorting-in-groovy.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Comparators and Sorting in Groovy</a></li><li><a href='#_the_java_comparator_story_recap' class='anchor-link'>The Java comparator story recap</a></li><li><a href='#_the_groovy_comparator_story' class='anchor-link'>The Groovy comparator story</a></li><li><a href='#_mixing_in_some_language_integrated_queries' class='anchor-link'>Mixing in some language integrated queries</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Comparators and Sorting in Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-21 03:51PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Comparators and Sorting in Groovy</a></li><li><a href='#_the_java_comparator_story_recap' class='anchor-link'>The Java comparator story recap</a></li><li><a href='#_the_groovy_comparator_story' class='anchor-link'>The Groovy comparator story</a></li><li><a href='#_mixing_in_some_language_integrated_queries' class='anchor-link'>Mixing in some language integrated queries</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Comparators and Sorting in Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-21 03:51PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p><span class="image right"><img src="img/cher_record.png" alt="Cher" width="179" height="179"></span>
diff --git a/blog/deck-of-cards-with-groovy.html b/blog/deck-of-cards-with-groovy.html
index eaaca28..29a2b48 100644
--- a/blog/deck-of-cards-with-groovy.html
+++ b/blog/deck-of-cards-with-groovy.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Deck of cards with Groovy, JDK collections and Eclipse Collections</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-09-23 10:18AM (Last updated: 2022-09-25 11:15AM)</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Deck of cards with Groovy, JDK collections and Eclipse Collections</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-09-23 10:18AM (Last updated: 2022-09-25 11:15AM)</span></p><hr/><div class="paragraph">
 <p>Once again, <a href="https://twitter.com/TheDonRaab">Donald Raab</a> has produced an interesting
 <a href="https://donraab.medium.com/how-to-create-a-deck-of-cards-using-eclipse-collections-d9838ac430b7">blog post</a> on
 <a href="https://github.com/eclipse/eclipse-collections">Eclipse Collections</a> this one shows some code for modelling and manipulating cards with Java 17 and Eclipse Collections. His related katas are highly recommended.
diff --git a/blog/deep-learning-and-eclipse-collections.html b/blog/deep-learning-and-eclipse-collections.html
index dc1c3a9..2604ccb 100644
--- a/blog/deep-learning-and-eclipse-collections.html
+++ b/blog/deep-learning-and-eclipse-collections.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Deep Learning and Eclipse Collections</a></li><li><a href='#_setting_up_our_model_and_data' class='anchor-link'>Setting up our model and data</a></li><li><a href='#_applying_deep_learning' class='anchor-link'>Applying deep learning</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Deep Learning and Eclipse Collections</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-10-11 10:41AM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Deep Learning and Eclipse Collections</a></li><li><a href='#_setting_up_our_model_and_data' class='anchor-link'>Setting up our model and data</a></li><li><a href='#_applying_deep_learning' class='anchor-link'>Applying deep learning</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Deep Learning and Eclipse Collections</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-10-11 10:41AM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>In previous blogs, we&#8217;ve covered
diff --git a/blog/detecting-objects-with-groovy-the.html b/blog/detecting-objects-with-groovy-the.html
index 7ab6b1c..66a78d6 100644
--- a/blog/detecting-objects-with-groovy-the.html
+++ b/blog/detecting-objects-with-groovy-the.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep Learning</a></li><li><a href='#_deep_java_library_djl_apache_mxnet' class='anchor-link'>Deep Java Library (DJL) &amp; Apache MXNet</a></li><li><a href='#_using_djl_with_groovy' class='anchor-link'>Using DJL with Groovy</a></li><li><a href='#_building_and_running_our_application' class='anchor-link'>Building and running our application</a></li><li><a href='#_further_information' class='anchor-link'>Further Information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-08-01 11:52AM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='#_deep_learning' class='anchor-link'>Deep Learning</a></li><li><a href='#_deep_java_library_djl_apache_mxnet' class='anchor-link'>Deep Java Library (DJL) &amp; Apache MXNet</a></li><li><a href='#_using_djl_with_groovy' class='anchor-link'>Using DJL with Groovy</a></li><li><a href='#_building_and_running_our_application' class='anchor-link'>Building and running our application</a></li><li><a href='#_further_information' class='anchor-link'>Further Information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-08-01 11:52AM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>This blog posts looks at using <a href="https://groovy-lang.org/">Apache Groovy</a> with the
diff --git a/blog/feed.atom b/blog/feed.atom
index 79d8f42..923474a 100644
--- a/blog/feed.atom
+++ b/blog/feed.atom
@@ -8,16 +8,6 @@
     <author>
       <name>Remko Popma</name>
     </author>
-    <title>Apache Groovy 2.5 CliBuilder Renewal</title>
-    <link href="http://groovy.apache.org/blog/groovy-2-5-clibuilder-renewal"/>
-    <updated>2018-05-30T11:28:31+00:00</updated>
-    <published>2018-05-30T11:28:31+00:00</published>
-    <summary>This post looks at new CliBuilder features from Groovy 2.5 in particular the Picocli-based implementation.</summary>
-  </entry>
-  <entry>
-    <author>
-      <name>Remko Popma</name>
-    </author>
     <title>Groovy 2.5.0 released</title>
     <link href="http://groovy.apache.org/blog/groovy-2-5-0-released"/>
     <updated>2018-05-30T11:28:31+00:00</updated>
@@ -28,6 +18,16 @@
     <author>
       <name>Remko Popma</name>
     </author>
+    <title>Apache Groovy 2.5 CliBuilder Renewal</title>
+    <link href="http://groovy.apache.org/blog/groovy-2-5-clibuilder-renewal"/>
+    <updated>2018-05-30T11:28:31+00:00</updated>
+    <published>2018-05-30T11:28:31+00:00</published>
+    <summary>This post looks at new CliBuilder features from Groovy 2.5 in particular the Picocli-based implementation.</summary>
+  </entry>
+  <entry>
+    <author>
+      <name>Remko Popma</name>
+    </author>
     <title>Announcing CodeNarc 1.2</title>
     <link href="http://groovy.apache.org/blog/announce-announcing-codenarc-1-2"/>
     <updated>2018-07-10T10:16:39+00:00</updated>
diff --git a/blog/fruity-eclipse-collections.html b/blog/fruity-eclipse-collections.html
index e0c83cc..ce47d4d 100644
--- a/blog/fruity-eclipse-collections.html
+++ b/blog/fruity-eclipse-collections.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Fruity Eclipse Collections</a></li><li><a href='#_eclipse_collections_fruit_salad' class='anchor-link'>Eclipse Collections Fruit Salad</a></li><li><a href='#_exploring_emoji_colors' class='anchor-link'>Exploring emoji colors</a></li><li><a href='#_putting_it_all_together' class='anchor-link'>Putting it all together</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./gpars-meets-virtual-threads'>GPars meets Virtual Threads</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Fruity Eclipse Collections</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-10-13 11:05AM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Fruity Eclipse Collections</a></li><li><a href='#_eclipse_collections_fruit_salad' class='anchor-link'>Eclipse Collections Fruit Salad</a></li><li><a href='#_exploring_emoji_colors' class='anchor-link'>Exploring emoji colors</a></li><li><a href='#_putting_it_all_together' class='anchor-link'>Putting it all together</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./gpars-meets-virtual-threads'>GPars meets Virtual Threads</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Fruity Eclipse Collections</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-10-13 11:05AM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>This blog post continues on the theme of using fruit emoji from the
diff --git a/blog/fun-with-obfuscated-groovy.html b/blog/fun-with-obfuscated-groovy.html
index 2940e1e..70ab691 100644
--- a/blog/fun-with-obfuscated-groovy.html
+++ b/blog/fun-with-obfuscated-groovy.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Fun with obfuscated Groovy</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Fun with obfuscated Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-12-08 12:40AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Fun with obfuscated Groovy</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Fun with obfuscated Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-12-08 12:40AM</span></p><hr/><div class="paragraph">
 <p>An interesting tweet appeared in my feed this morning:</p>
 </div>
 <div class="paragraph">
diff --git a/blog/gmavenplus-1-6-2-released.html b/blog/gmavenplus-1-6-2-released.html
index d43703e..2bfe13f 100644
--- a/blog/gmavenplus-1-6-2-released.html
+++ b/blog/gmavenplus-1-6-2-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='#_gmavenplus_1_6_2_has_been_released' class='anchor-link'>GMavenPlus 1.6.2 has been released.</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>GMavenPlus 1.6.2 Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-10-14 10:00PM</span></p><hr/><div class="sect1">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='#_gmavenplus_1_6_2_has_been_released' class='anchor-link'>GMavenPlus 1.6.2 has been released.</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>GMavenPlus 1.6.2 Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-10-14 10:00PM</span></p><hr/><div class="sect1">
 <h2 id="_gmavenplus_1_6_2_has_been_released">GMavenPlus 1.6.2 has been released.</h2>
 <div class="sectionbody">
 <div class="paragraph">
diff --git a/blog/gpars-meets-virtual-threads.html b/blog/gpars-meets-virtual-threads.html
index b5821c0..f45ea97 100644
--- a/blog/gpars-meets-virtual-threads.html
+++ b/blog/gpars-meets-virtual-threads.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>GPars meets Virtual Threads</a></li><li><a href='#_parallel_collections' class='anchor-link'>Parallel Collections</a></li><li><a href='#_agents' class='anchor-link'>Agents</a></li><li><a href='#_actors' class='anchor-link'>Actors</a></li><li><a href='#_dataflow' class='anchor-link'>Dataflow</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>GPars meets Virtual Threads</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-15 11:28AM (Last updated: 2023-04-14 06:23PM)</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>GPars meets Virtual Threads</a></li><li><a href='#_parallel_collections' class='anchor-link'>Parallel Collections</a></li><li><a href='#_agents' class='anchor-link'>Agents</a></li><li><a href='#_actors' class='anchor-link'>Actors</a></li><li><a href='#_dataflow' class='anchor-link'>Dataflow</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>GPars meets Virtual Threads</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-15 11:28AM (Last updated: 2023-04-14 06:23PM)</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p><span class="image right"><img src="img/gpars_logo.png" alt="gpars" width="150"></span>
diff --git a/blog/groovy-2-4-16-released.html b/blog/groovy-2-4-16-released.html
index 1fbb1b3..15e2bb4 100644
--- a/blog/groovy-2-4-16-released.html
+++ b/blog/groovy-2-4-16-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.4.16 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.4.16 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-18 10:04PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.4.16 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.4.16 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-18 10:04PM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-4-16-windows.html b/blog/groovy-2-4-16-windows.html
index ca8e47b..36a001a 100644
--- a/blog/groovy-2-4-16-windows.html
+++ b/blog/groovy-2-4-16-windows.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.4.16 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-18 10:06PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.4.16 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-18 10:06PM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 2.4.16 (community artifact) is available from: <a href="https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.4.16-installer" class="bare">https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.4.16-installer</a>.</p>
 </div></div></div></div></div><footer id='footer'>
                             <div class='row'>
diff --git a/blog/groovy-2-4-17-released.html b/blog/groovy-2-4-17-released.html
index 5435a8a..16060ab 100644
--- a/blog/groovy-2-4-17-released.html
+++ b/blog/groovy-2-4-17-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.4.17 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.4.17 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:32PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.4.17 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.4.17 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:32PM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-0-released.html b/blog/groovy-2-5-0-released.html
index 1521dfc..daf468d 100644
--- a/blog/groovy-2-5-0-released.html
+++ b/blog/groovy-2-5-0-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.0 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.0 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-05-30 11:28AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.0 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.0 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-05-30 11:28AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-1-released.html b/blog/groovy-2-5-1-released.html
index 03f2b5f..f64ce3d 100644
--- a/blog/groovy-2-5-1-released.html
+++ b/blog/groovy-2-5-1-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.1 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.1 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-07-14 02:18AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.1 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.1 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-07-14 02:18AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-2-released.html b/blog/groovy-2-5-2-released.html
index ad7a6b4..7d04aac 100644
--- a/blog/groovy-2-5-2-released.html
+++ b/blog/groovy-2-5-2-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.2 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.2 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-08-16 02:52AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.2 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.2 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-08-16 02:52AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-2-windows.html b/blog/groovy-2-5-2-windows.html
index 0d40d2b..631e8bc 100644
--- a/blog/groovy-2-5-2-windows.html
+++ b/blog/groovy-2-5-2-windows.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.2 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-08-19 09:50AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.2 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-08-19 09:50AM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 2.5.2 (community artifact) is available from:
 <a href="https://dl.bintray.com/groovy/Distributions/groovy-2.5.2-installer.exe" class="bare">https://dl.bintray.com/groovy/Distributions/groovy-2.5.2-installer.exe</a></p>
 </div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-3-released.html b/blog/groovy-2-5-3-released.html
index a86ad7a..0603c96 100644
--- a/blog/groovy-2-5-3-released.html
+++ b/blog/groovy-2-5-3-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.3 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-10-14 09:43PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.3 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-10-14 09:43PM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-3-windows.html b/blog/groovy-2-5-3-windows.html
index 592cf14..4d91ea7 100644
--- a/blog/groovy-2-5-3-windows.html
+++ b/blog/groovy-2-5-3-windows.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.3 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-10-14 09:47PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.3 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-10-14 09:47PM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 2.5.3 (community artifact) is available from:
 <a href="https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.3-installer" class="bare">https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.3-installer</a></p>
 </div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-4-released.html b/blog/groovy-2-5-4-released.html
index 6fce9a3..e83446c 100644
--- a/blog/groovy-2-5-4-released.html
+++ b/blog/groovy-2-5-4-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.4 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.4 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-11-12 11:42AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.4 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.4 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-11-12 11:42AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-4-windows.html b/blog/groovy-2-5-4-windows.html
index 66f0524..c5477e4 100644
--- a/blog/groovy-2-5-4-windows.html
+++ b/blog/groovy-2-5-4-windows.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.4 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-11-12 11:43AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.4 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-11-12 11:43AM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 2.5.4 (community artifact) is available from:
 <a href="https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.4-installer" class="bare">https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.4-installer</a></p>
 </div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-5-released.html b/blog/groovy-2-5-5-released.html
index af2e70c..666aa6f 100644
--- a/blog/groovy-2-5-5-released.html
+++ b/blog/groovy-2-5-5-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.5 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.5 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-24 11:53AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.5 released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.5 released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-24 11:53AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-5-windows.html b/blog/groovy-2-5-5-windows.html
index 4bb73ff..59f8546 100644
--- a/blog/groovy-2-5-5-windows.html
+++ b/blog/groovy-2-5-5-windows.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.5 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-24 10:02PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.5 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-12-24 10:02PM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 2.5.5 (community artifact) is available at:
 <a href="https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.5-installer" class="bare">https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.5-installer</a></p>
 </div></div></div></div></div><footer id='footer'>
diff --git a/blog/groovy-2-5-6-released.html b/blog/groovy-2-5-6-released.html
index a6c2c64..bd1bcf2 100644
--- a/blog/groovy-2-5-6-released.html
+++ b/blog/groovy-2-5-6-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.6 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.6 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-02-04 10:19PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.6 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.6 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-02-04 10:19PM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-7-and.html b/blog/groovy-2-5-7-and.html
index 877e708..a38b369 100644
--- a/blog/groovy-2-5-7-and.html
+++ b/blog/groovy-2-5-7-and.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:49PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:49PM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 2.5.7 (Community Artifact) is now available from Bintray:
 <a href="https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.7-installer" class="bare">https://bintray.com/groovy/Distributions/Windows-Installer/groovy-2.5.7-installer</a>.</p>
 </div>
diff --git a/blog/groovy-2-5-7-released.html b/blog/groovy-2-5-7-released.html
index 4e93f9b..bb91f36 100644
--- a/blog/groovy-2-5-7-released.html
+++ b/blog/groovy-2-5-7-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.7 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.7 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:39PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 2.5.7 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 2.5.7 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:39PM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-2-5-clibuilder-renewal.html b/blog/groovy-2-5-clibuilder-renewal.html
index b70e539..d9e6c92 100644
--- a/blog/groovy-2-5-clibuilder-renewal.html
+++ b/blog/groovy-2-5-clibuilder-renewal.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='#_the_code_groovy_util_clibuilder_code_class_is_deprecated' class='anchor-link'>The <code>groovy.util.CliBuilder</code> Class is Deprecated</a></li><li><a href='#_typed_options' class='anchor-link'>Typed Options</a></li><li><a href='#_annotations' class='anchor-link'>Annotations</a></li><li><a href='#_typed_positional_parameters' class='anchor-link'>Typed Positional Parameters</a></li><li><a href='#_apache_commons_cli_features' class='anchor-link'>Apache Commons CLI Features</a></li><li><a href='#_picocli_clibuilder_features' class='anchor-link'>Picocli CliBuilder Features</a></li><li><a href='#_gotchas_incompatibilities' class='anchor-link'>Gotchas/Incompatibilities</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Apache Groovy 2.5 CliBuilder Renewal</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-05-30 11:28AM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='#_the_code_groovy_util_clibuilder_code_class_is_deprecated' class='anchor-link'>The <code>groovy.util.CliBuilder</code> Class is Deprecated</a></li><li><a href='#_typed_options' class='anchor-link'>Typed Options</a></li><li><a href='#_annotations' class='anchor-link'>Annotations</a></li><li><a href='#_typed_positional_parameters' class='anchor-link'>Typed Positional Parameters</a></li><li><a href='#_apache_commons_cli_features' class='anchor-link'>Apache Commons CLI Features</a></li><li><a href='#_picocli_clibuilder_features' class='anchor-link'>Picocli CliBuilder Features</a></li><li><a href='#_gotchas_incompatibilities' class='anchor-link'>Gotchas/Incompatibilities</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Apache Groovy 2.5 CliBuilder Renewal</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2018-05-30 11:28AM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>The <code>CliBuilder</code> class for quickly and concisely building
diff --git a/blog/groovy-3-0-0-alpha.html b/blog/groovy-3-0-0-alpha.html
index 477a60e..1c5482c 100644
--- a/blog/groovy-3-0-0-alpha.html
+++ b/blog/groovy-3-0-0-alpha.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-alpha-4 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-alpha-4 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-01-01 09:24AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-alpha-4 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-alpha-4 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-01-01 09:24AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-3-0-0-alpha1.html b/blog/groovy-3-0-0-alpha1.html
index 221c5bb..dcf278b 100644
--- a/blog/groovy-3-0-0-alpha1.html
+++ b/blog/groovy-3-0-0-alpha1.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-01-01 09:28AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-01-01 09:28AM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 3.0.0-alpha-4 (Community Artifact) is available from the usual place:
 <a href="https://bintray.com/groovy/Distributions/download_file?file_path=groovy-3.0.0-alpha-4-installer.exe" class="bare">https://bintray.com/groovy/Distributions/download_file?file_path=groovy-3.0.0-alpha-4-installer.exe</a></p>
 </div>
diff --git a/blog/groovy-3-0-0-beta.html b/blog/groovy-3-0-0-beta.html
index c6440e2..d142e97 100644
--- a/blog/groovy-3-0-0-beta.html
+++ b/blog/groovy-3-0-0-beta.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-beta-1 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-beta-1 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:41PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-beta-1 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-beta-1 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-05-12 10:41PM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-3-0-0-beta1.html b/blog/groovy-3-0-0-beta1.html
index b2a9f01..09868d5 100644
--- a/blog/groovy-3-0-0-beta1.html
+++ b/blog/groovy-3-0-0-beta1.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-beta-2 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-beta-2 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-07-15 10:25AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-beta-2 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-beta-2 Released</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-07-15 10:25AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-3-0-0-beta2.html b/blog/groovy-3-0-0-beta2.html
index f882c61..f425d06 100644
--- a/blog/groovy-3-0-0-beta2.html
+++ b/blog/groovy-3-0-0-beta2.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-07-15 10:30AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</h1><p><span>Author: <i>Remko Popma</i></span><br/><span>Published: 2019-07-15 10:30AM</span></p><hr/><div class="paragraph">
 <p>The Windows installer for Groovy 3.0.0-beta-2 is now available from Bintray:
 <a href="https://bintray.com/groovy/Distributions/download_file?file_path=groovy-3.0.0-beta-2-installer.exe" class="bare">https://bintray.com/groovy/Distributions/download_file?file_path=groovy-3.0.0-beta-2-installer.exe</a></p>
 </div>
diff --git a/blog/groovy-4-0-3-released.html b/blog/groovy-4-0-3-released.html
index 31e6c6b..1f3d2ce 100644
--- a/blog/groovy-4-0-3-released.html
+++ b/blog/groovy-4-0-3-released.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 4.0.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 4.0.3 Released</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-15 08:16AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy 4.0.3 Released</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy 4.0.3 Released</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-15 08:16AM</span></p><hr/><div class="paragraph">
 <p>Dear community,</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-dauphine.html b/blog/groovy-dauphine.html
index 3e2873e..c316eca 100644
--- a/blog/groovy-dauphine.html
+++ b/blog/groovy-dauphine.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='#_results_file' class='anchor-link'>Results file</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Processing Results for the Critérium du Dauphiné</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-06-13 05:00PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='#_results_file' class='anchor-link'>Results file</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Processing Results for the Critérium du Dauphiné</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-06-13 05:00PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>The 2023 <a href="https://www.criterium-du-dauphine.fr/en/">Critérium du Dauphiné</a>
diff --git a/blog/groovy-haiku-processing.html b/blog/groovy-haiku-processing.html
index 10bfb98..e378f4d 100644
--- a/blog/groovy-haiku-processing.html
+++ b/blog/groovy-haiku-processing.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Haiku processing</a></li><li><a href='#_example_1_finding_the_distinct_letters' class='anchor-link'>Example 1: Finding the distinct letters</a></li><li><a href='#_example_2_splitting_letters_into_unique_and_duplicate_partitions' class='anchor-link'>Example 2: Splitting letters into unique and duplicate partitions</a></li><li><a href='#_example_3_finding_the_top_used_letters' class='anchor-link'>Example 3: Finding the top used letters</a></li><li><a href='#_example_3_other_variations' class='anchor-link'>Example 3: Other variations</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./calculating-fibonacci-with-groovy-revisited'>Calculating Fibonacci with Groovy revisited</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Haiku processing</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-11-07 07:22PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Haiku processing</a></li><li><a href='#_example_1_finding_the_distinct_letters' class='anchor-link'>Example 1: Finding the distinct letters</a></li><li><a href='#_example_2_splitting_letters_into_unique_and_duplicate_partitions' class='anchor-link'>Example 2: Splitting letters into unique and duplicate partitions</a></li><li><a href='#_example_3_finding_the_top_used_letters' class='anchor-link'>Example 3: Finding the top used letters</a></li><li><a href='#_example_3_other_variations' class='anchor-link'>Example 3: Other variations</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./calculating-fibonacci-with-groovy-revisited'>Calculating Fibonacci with Groovy revisited</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Haiku processing</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-11-07 07:22PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>This blog looks at some Groovy solutions for the examples in the
diff --git a/blog/groovy-list-processing-cheat-sheet.html b/blog/groovy-list-processing-cheat-sheet.html
index 1089dea..7a8551f 100644
--- a/blog/groovy-list-processing-cheat-sheet.html
+++ b/blog/groovy-list-processing-cheat-sheet.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy List Processing Cheat Sheet</a></li><li><a href='#_declaring_lists' class='anchor-link'>Declaring lists</a></li><li><a href='#_list_elements_and_properties' class='anchor-link'>List elements and properties</a></li><li><a href='#_modifying_mutable_lists' class='anchor-link'>Modifying mutable lists</a></li><li><a href='#_additional_list_functionality' class='anchor-link'>Additional list functionality</a></li><li><a href='#_ginq_processing' class='anchor-link'>GINQ processing</a></li><li><a href='#_stream_methods' class='anchor-link'>Stream methods</a></li><li><a href='#_gpars' class='anchor-link'>GPars</a></li><li><a href='#_other_libraries' class='anchor-link'>Other libraries</a></li><li><a href='#_further_information' class='anchor-link'>Further Information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./gpars-meets-virtual-threads'>GPars meets Virtual Threads</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy List Processing Cheat Sheet</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-08-28 08:46AM</span></p><hr/><div class="sect1">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy List Processing Cheat Sheet</a></li><li><a href='#_declaring_lists' class='anchor-link'>Declaring lists</a></li><li><a href='#_list_elements_and_properties' class='anchor-link'>List elements and properties</a></li><li><a href='#_modifying_mutable_lists' class='anchor-link'>Modifying mutable lists</a></li><li><a href='#_additional_list_functionality' class='anchor-link'>Additional list functionality</a></li><li><a href='#_ginq_processing' class='anchor-link'>GINQ processing</a></li><li><a href='#_stream_methods' class='anchor-link'>Stream methods</a></li><li><a href='#_gpars' class='anchor-link'>GPars</a></li><li><a href='#_other_libraries' class='anchor-link'>Other libraries</a></li><li><a href='#_further_information' class='anchor-link'>Further Information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./gpars-meets-virtual-threads'>GPars meets Virtual Threads</a></li><li><a href='./groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy List Processing Cheat Sheet</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-08-28 08:46AM</span></p><hr/><div class="sect1">
 <h2 id="_declaring_lists">Declaring lists</h2>
 <div class="sectionbody">
 <div class="paragraph">
diff --git a/blog/groovy-null-processing.html b/blog/groovy-null-processing.html
index 6c6be01..f456fb1 100644
--- a/blog/groovy-null-processing.html
+++ b/blog/groovy-null-processing.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Processing Nulls In Lists</a></li><li><a href='#_libraries_covered' class='anchor-link'>Libraries covered</a></li><li><a href='#_mutating_a_list_to_remove_its_nulls' class='anchor-link'>Mutating a list to remove its nulls</a></li><li><a href='#_producing_a_new_list_without_nulls' class='anchor-link'>Producing a new list without nulls</a></li><li><a href='#_other_null_related_functionality' class='anchor-link'>Other null related functionality</a></li><li><a href='#_further_information' class='anchor-link'>Further Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Processing Nulls In Lists</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-02-06 12:00AM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Processing Nulls In Lists</a></li><li><a href='#_libraries_covered' class='anchor-link'>Libraries covered</a></li><li><a href='#_mutating_a_list_to_remove_its_nulls' class='anchor-link'>Mutating a list to remove its nulls</a></li><li><a href='#_producing_a_new_list_without_nulls' class='anchor-link'>Producing a new list without nulls</a></li><li><a href='#_other_null_related_functionality' class='anchor-link'>Other null related functionality</a></li><li><a href='#_further_information' class='anchor-link'>Further Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Processing Nulls In Lists</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-02-06 12:00AM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>This <a href="https://www.programmergirl.com/java-remove-nulls-from-list/">article</a> by <a href="https://www.programmergirl.com/about-me/">Shubhra Srivastava</a>
diff --git a/blog/groovy-record-performance.html b/blog/groovy-record-performance.html
index 1b1beb1..e2bc595 100644
--- a/blog/groovy-record-performance.html
+++ b/blog/groovy-record-performance.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Record Performance</a></li><li><a href='#_our_domain' class='anchor-link'>Our domain</a></li><li><a href='#_performance_of_hashcode' class='anchor-link'>Performance of <code>hashCode</code></a></li><li><a href='#_performance_of_equals' class='anchor-link'>Performance of <code>equals</code></a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a></li><li><a href='./testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Record Performance</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-05-09 11:39PM (Last updated: 2023-05-10 07:57PM)</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Record Performance</a></li><li><a href='#_our_domain' class='anchor-link'>Our domain</a></li><li><a href='#_performance_of_hashcode' class='anchor-link'>Performance of <code>hashCode</code></a></li><li><a href='#_performance_of_equals' class='anchor-link'>Performance of <code>equals</code></a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a></li><li><a href='./fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Record Performance</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-05-09 11:39PM (Last updated: 2023-05-10 07:57PM)</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>We highly recommend the excellent
diff --git a/blog/groovy-records.html b/blog/groovy-records.html
index e3c7ca7..96ae29e 100644
--- a/blog/groovy-records.html
+++ b/blog/groovy-records.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Records</a></li><li><a href='#_introduction' class='anchor-link'>Introduction</a></li><li><a href='#_optional_enhancements' class='anchor-link'>Optional enhancements</a></li><li><a href='#_internal_details' class='anchor-link'>Internal details</a></li><li><a href='#_declarative_customisation_of_records' class='anchor-link'>Declarative customisation of records</a></li><li><a href='#_emulated_records' class='anchor-link'>Emulated records</a></li><li><a href='#_using_records_with_other_ast_transforms' class='anchor-link'>Using records with other AST transforms</a></li><li><a href='#_related_functionality_for_reducing_boilerplate_code' class='anchor-link'>Related functionality for reducing boilerplate code</a></li><li><a href='#_summary' class='anchor-link'>Summary</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Records</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-02 08:22PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy Records</a></li><li><a href='#_introduction' class='anchor-link'>Introduction</a></li><li><a href='#_optional_enhancements' class='anchor-link'>Optional enhancements</a></li><li><a href='#_internal_details' class='anchor-link'>Internal details</a></li><li><a href='#_declarative_customisation_of_records' class='anchor-link'>Declarative customisation of records</a></li><li><a href='#_emulated_records' class='anchor-link'>Emulated records</a></li><li><a href='#_using_records_with_other_ast_transforms' class='anchor-link'>Using records with other AST transforms</a></li><li><a href='#_related_functionality_for_reducing_boilerplate_code' class='anchor-link'>Related functionality for reducing boilerplate code</a></li><li><a href='#_summary' class='anchor-link'>Summary</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy Records</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-02 08:22PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>A common scenario when programming is the need to group together a bunch
diff --git a/blog/groovy-release-train-4-0.html b/blog/groovy-release-train-4-0.html
index 7b40e38..9131931 100644
--- a/blog/groovy-release-train-4-0.html
+++ b/blog/groovy-release-train-4-0.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy release train: 4.0.4, 3.0.12, 2.5.18</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-24 12:55PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='./groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='./groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='./groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='./groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='./groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='./groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='./groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='./groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='./groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='./groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='./groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='./groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='./groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='./gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='./groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='./groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='./groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='./groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='./groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='./groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy release train: 4.0.4, 3.0.12, 2.5.18</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-24 12:55PM</span></p><hr/><div class="paragraph">
 <p>It&#8217;s been a productive time for the Apache Groovy project recently. We recently released versions 4.0.4, 3.0.12 and 2.5.18 with 42, 21 and 15 fixes and improvements respectively. Two quick highlights for the 4.0.4 release before getting into more details about the release.</p>
 </div>
 <div class="paragraph">
diff --git a/blog/groovy-sequenced-collections.html b/blog/groovy-sequenced-collections.html
index 786b431..273a86f 100644
--- a/blog/groovy-sequenced-collections.html
+++ b/blog/groovy-sequenced-collections.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='#_sequenced_collections_summary' class='anchor-link'>Sequenced Collections Summary</a></li><li><a href='#_accessing_the_first_and_last_element' class='anchor-link'>Accessing the first and last element</a></li><li><a href='#_removing_first_or_last_elements' class='anchor-link'>Removing first or last elements</a></li><li><a href='#_adding_elements_to_the_frontend' class='anchor-link'>Adding elements to the front/end</a></li><li><a href='#_working_with_reversed_collections' class='anchor-link'>Working with reversed collections</a></li><li><a href='#_additional_references' class='anchor-link'>Additional References</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy and Sequenced Collections (JEP-431)</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-29 09:00AM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='#_sequenced_collections_summary' class='anchor-link'>Sequenced Collections Summary</a></li><li><a href='#_accessing_the_first_and_last_element' class='anchor-link'>Accessing the first and last element</a></li><li><a href='#_removing_first_or_last_elements' class='anchor-link'>Removing first or last elements</a></li><li><a href='#_adding_elements_to_the_frontend' class='anchor-link'>Adding elements to the front/end</a></li><li><a href='#_working_with_reversed_collections' class='anchor-link'>Working with reversed collections</a></li><li><a href='#_additional_references' class='anchor-link'>Additional References</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Groovy and Sequenced Collections (JEP-431)</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-29 09:00AM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>An exciting feature coming in JDK21 is
diff --git a/blog/helloworldemoji.html b/blog/helloworldemoji.html
index 8aadad4..6fdd52a 100644
--- a/blog/helloworldemoji.html
+++ b/blog/helloworldemoji.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Hello World with Emojis</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Hello World with Emojis</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-04 12:24PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Hello World with Emojis</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Hello World with Emojis</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-04 12:24PM</span></p><hr/><div class="paragraph">
 <p>In a <a href="https://groovy.apache.org/blog/jvm-hello-world-with-groovy">previous blog post</a>
 we took an in-depth look at how to write a "hello world" class at the bytecode level
 using various libraries.</p>
diff --git a/blog/index.html b/blog/index.html
index 502ea40..36ab0c4 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3' id='blog-index'><ul class='nav-sidebar list'><li class='active'><a href='/blog/'>Blogs</a></li><li><a href='groovy-delegation'>Using the Delegation Pattern with Groovy</a></li><li><a href='groovy-typecheckers'>Groovy Type Checkers</a></li><li><a href='seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li><li><a href='groovy-gatherers'>Using Gatherers with Groovy</a></li><li><a href='set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='community-over-code-na-2023'>Community Over Code (North America) 2023</a></li><li><a href='chatgpt-one-liners'>ChatGPT meets Groovy one-liners</a></li><li><a href='groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a></li><li><a href='groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='create-groovy-blog'>Creating a Groovy Blog Post</a></li><li><a href='groovy-record-performance'>Groovy Record Performance</a></li><li><a href='groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='gpars-meets-virtual-threads'>GPars meets Virtual Threads</a></li><li><a href='helloworldemoji'>Hello World with Emojis</a></li><li><a href='groovy-records'>Groovy Records</a></li><li><a href='groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='testing_permutations_combinations'>Groovy Testing with Combinations and Permutations</a></li><li><a href='apache-nlpcraft-with-groovy'>Converting natural language into actions with NLPCraft and Groovy</a></li><li><a href='quake3-inverse-square-root'>Quake III Arena and the fast inverse square root algorithm</a></li><li><a href='australian-timezones'>Australian Time Zones</a></li><li><a href='wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='groundhog-day'>Groundhog Day</a></li><li><a href='fun-with-rating-stars'>Fun with rating stars</a></li><li><a href='apache-groovy-2022-year-in'>Apache Groovy 2022 Year In Review</a></li><li><a href='jvm-hello-world-with-groovy'>JVM Hello World with Groovy</a></li><li><a href='adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a></li><li><a href='zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='groovy-dates-and-times-cheat'>Groovy Dates And Times Cheat Sheet</a></li><li><a href='fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='encryption-and-decryption-with-groovy'>Encryption and decryption with Groovy</a></li><li><a href='calculating-fibonacci-with-groovy-revisited'>Calculating Fibonacci with Groovy revisited</a></li><li><a href='solving-cryptarithmetic-puzzles-with-groovy'>Solving cryptarithmetic puzzles with Groovy and constraint programming using Choco, JaCoP, and OR-Tools</a></li><li><a href='groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='life-on-mars-units-of'>Life on Mars: Units of Measurement systems, Groovy, and domain specific languages (DSLs)</a></li><li><a href='natural-language-processing-with-groovy'>Natural Language Processing with Groovy, OpenNLP, CoreNLP, Nlp4j, Datumbox, Smile, Spark NLP, DJL and TensorFlow</a></li><li><a href='detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a></li><li><a href='parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='groovy-3-highlights'>Groovy 3 Highlights</a></li><li><a href='groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='apache-groovy-committer-graeme-rocher'>Apache Groovy committer Graeme Rocher receives Oracle Groundbreaker award</a></li><li><a href='gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='announce-announcing-codenarc-1-2'>Announcing CodeNarc 1.2</a></li><li><a href='groovy-2-5-0-released'>Groovy 2.5.0 released</a></li><li><a href='groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li></ul><ul class='pagination'/></div><div class='col-lg-8 col-lg-pull-0'><h1>Blogs for Groovy</h1><div id='chartdiv'></div><p>Here you can find the Blogs for the Groovy programming language:</p><div id='blog-list'><div><span>Search: </span><input type='text' class='search'/></div><ul class='list'><li><p class='name'><a href='groovy-delegation'>Using the Delegation Pattern with Groovy</a><br/>Published by Paul King on 2024-01-28 08:08PM<br/>This post looks at using the Delegation Design Pattern with Groovy.</p></li><li><p class='name'><a href='groovy-typecheckers'>Groovy Type Checkers</a><br/>Published by Paul King on 2024-01-20 08:30PM<br/>This post looks at Groovy&apos;s Type Checkers.</p></li><li><p class='name'><a href='seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a><br/>Published by Paul King on 2023-12-23 12:24PM<br/>Last updated: 2024-01-19 10:15PM<br/>Season&apos;s greetings with some emoji fun.</p></li><li><p class='name'><a href='groovy-gatherers'>Using Gatherers with Groovy</a><br/>Published by Paul King on 2023-12-09 03:30PM<br/>Last updated: 2024-01-18 10:00PM<br/>This post looks at using Gatherers (JEP 461) with Groovy.</p></li><li><p class='name'><a href='set-operations-with-groovy'>Set Operators with Groovy</a><br/>Published by Paul King on 2023-11-14 03:22PM<br/>This blog looks at union, intersection, difference &amp;amp; symmetric difference operators in Groovy.</p></li><li><p class='name'><a href='community-over-code-na-2023'>Community Over Code (North America) 2023</a><br/>Published by Paul King on 2023-10-26 05:00PM<br/>This post looks at the ASF Community Over Code conference in Halifax, Nova Scotia, October 7-10 2023, with a particular focus on the Groovy Track.</p></li><li><p class='name'><a href='chatgpt-one-liners'>ChatGPT meets Groovy one-liners</a><br/>Published by Paul King on 2023-10-19 06:00PM<br/>I asked ChatGPT if it could represent some short/one-liner programming-related dad jokes as short/one-liner Groovy scripts.</p></li><li><p class='name'><a href='groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a><br/>Published by Paul King on 2023-07-17 11:24PM<br/>Last updated: 2023-07-26 03:02PM<br/>This post looks at using Apache Pekko Actors and GPars Actors with Groovy.</p></li><li><p class='name'><a href='groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a><br/>Published by Paul King on 2023-06-13 05:00PM<br/>This post looks at processing the general classification results for the Critérium du Dauphiné using Groovy, GQuery and DuckDB.</p></li><li><p class='name'><a href='create-groovy-blog'>Creating a Groovy Blog Post</a><br/>Published by Paul King on 2023-05-25 11:35PM<br/>This post looks at the steps to create a blog post.</p></li><li><p class='name'><a href='groovy-record-performance'>Groovy Record Performance</a><br/>Published by Paul King on 2023-05-09 11:39PM<br/>Last updated: 2023-05-10 07:57PM<br/>This post looks at the performance of some of the generated methods in Groovy records.</p></li><li><p class='name'><a href='groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a><br/>Published by Paul King on 2023-04-29 09:00AM<br/>This post looks at Groovy support for sequenced collections.</p></li><li><p class='name'><a href='lego-bricks-with-groovy'>Lego Bricks with Groovy</a><br/>Published by Paul King on 2023-04-25 11:28PM<br/>Last updated: 2023-04-27 10:42PM<br/>This post compares Groovy built-in capabilities to Java and Eclipse Collections.</p></li><li><p class='name'><a href='gpars-meets-virtual-threads'>GPars meets Virtual Threads</a><br/>Published by Paul King on 2022-06-15 11:28AM<br/>Last updated: 2023-04-14 06:23PM<br/>This post looks at using GPars with virtual threads.</p></li><li><p class='name'><a href='helloworldemoji'>Hello World with Emojis</a><br/>Published by Paul King on 2023-04-04 12:24PM<br/>This post looks at a Groovy hello world with some emoji fun.</p></li><li><p class='name'><a href='groovy-records'>Groovy Records</a><br/>Published by Paul King on 2023-04-02 08:22PM<br/>This blog looks at Groovy records.</p></li><li><p class='name'><a href='groovy-haiku-processing'>Groovy Haiku processing</a><br/>Published by Paul King on 2023-11-07 07:22PM<br/>This blog looks at processing some creative writing looking at various properties of the letters within the text.</p></li><li><p class='name'><a href='testing_permutations_combinations'>Groovy Testing with Combinations and Permutations</a><br/>Published by Paul King on 2023-03-19 05:23PM<br/>This blog looks at testing with Groovy using Combinations and Permutations.</p></li><li><p class='name'><a href='apache-nlpcraft-with-groovy'>Converting natural language into actions with NLPCraft and Groovy</a><br/>Published by Paul King on 2023-03-10 07:22PM<br/>Last updated: 2023-03-13 01:32PM<br/>This blog looks at using Apache NLPCraft from Groovy.</p></li><li><p class='name'><a href='quake3-inverse-square-root'>Quake III Arena and the fast inverse square root algorithm</a><br/>Published by Paul King on 2023-02-28 12:05AM<br/>Inspired by a recent tweet, this blog looks at the fast inverse square root algorithm made famous in Quake III Arena.</p></li><li><p class='name'><a href='australian-timezones'>Australian Time Zones</a><br/>Published by Paul King on 2023-02-20 08:00PM<br/>Inspired by a recent update related to Antarctic timezones, this post looks at some interesting Australian time zone facts.</p></li><li><p class='name'><a href='wordle-checker'>Checking Wordle with Groovy</a><br/>Published by Paul King on 2023-02-08 12:00AM<br/>This post looks at writing a Wordle checker in Groovy.</p></li><li><p class='name'><a href='groovy-null-processing'>Groovy Processing Nulls In Lists</a><br/>Published by Paul King on 2023-02-06 12:00AM<br/>This post looks at processing lists containing nulls in Groovy.</p></li><li><p class='name'><a href='groundhog-day'>Groundhog Day</a><br/>Published by Paul King on 2023-02-02 12:00AM<br/>Inspired by a recent tweet, this blog looks at some datetime manipulations to calculate the period between Groundhog day and the start of Spring.</p></li><li><p class='name'><a href='fun-with-rating-stars'>Fun with rating stars</a><br/>Published by Paul King on 2023-01-25 12:00AM<br/>Inspired by a recent tweet, this blog looks at producing a string of stars corresponding to a rating.</p></li><li><p class='name'><a href='apache-groovy-2022-year-in'>Apache Groovy 2022 Year In Review</a><br/>Published by Paul King on 2022-12-29 02:28PM<br/>This post looks back at some highlights for Groovy in 2022.</p></li><li><p class='name'><a href='jvm-hello-world-with-groovy'>JVM Hello World with Groovy</a><br/>Published by Paul King on 2022-12-22 02:24PM<br/>This post looks at using bytecode libraries to generate class files. It&apos;s a deep dive into how compilers and other tools work behind the scenes.</p></li><li><p class='name'><a href='adventures-with-groovyfx'>Adventures with GroovyFX</a><br/>Published by Paul King on 2022-12-12 02:22PM<br/>This blog looks at a GroovyFX TODO application.</p></li><li><p class='name'><a href='fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a><br/>Published by Paul King on 2022-12-08 12:40AM<br/>This post looks at some Obfuscated code for outputting some well-known text.</p></li><li><p class='name'><a href='zipping-collections-with-groovy'>Zipping Collections with Groovy</a><br/>Published by Paul King on 2022-11-17 12:50PM<br/>This post looks at zipping collections.</p></li><li><p class='name'><a href='whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a><br/>Published by Paul King on 2022-10-27 11:13AM<br/>This post looks at using Apache Ignite with Apache Groovy and the K-Means algorithm to cluster scotch whiskeys.</p></li><li><p class='name'><a href='groovy-dates-and-times-cheat'>Groovy Dates And Times Cheat Sheet</a><br/>Published by Paul King on 2022-10-24 07:27AM<br/>This post looks at data and time functionality in Groovy including classic and Java date time, JSR310, functionality.</p></li><li><p class='name'><a href='fruity-eclipse-collections'>Fruity Eclipse Collections</a><br/>Published by Paul King on 2022-10-13 11:05AM<br/>This post looks at using KMeans to compare fruit nominated color with the colors used in its emoji.</p></li><li><p class='name'><a href='deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a><br/>Published by Paul King on 2022-10-11 10:41AM<br/>This post uses Emojis and Eclipse Collections to process pet records. We then use deep learning to predict whether each emoji looks like a dog or cat.</p></li><li><p class='name'><a href='deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a><br/>Published by Paul King on 2022-09-23 10:18AM<br/>Last updated: 2022-09-25 11:15AM<br/>This post highlights some code for modelling and manipulating cards with records, JDK collections, and Eclipse Collections.</p></li><li><p class='name'><a href='encryption-and-decryption-with-groovy'>Encryption and decryption with Groovy</a><br/>Published by Paul King on 2022-09-19 02:34PM<br/>This post looks at encrypting and decrypting data using Groovy with the AES and CAST5 algorithms.</p></li><li><p class='name'><a href='calculating-fibonacci-with-groovy-revisited'>Calculating Fibonacci with Groovy revisited</a><br/>Published by Paul King on 2022-09-08 10:59AM<br/>This post looks at various ways to calculate Fibonacci numbers such as recursion and iteration including optimisations like tail recursion and memoization.</p></li><li><p class='name'><a href='solving-cryptarithmetic-puzzles-with-groovy'>Solving cryptarithmetic puzzles with Groovy and constraint programming using Choco, JaCoP, and OR-Tools</a><br/>Published by Paul King on 2022-09-05 01:43PM<br/>This post looks at solving cryptarithmetic puzzles using Groovy.</p></li><li><p class='name'><a href='groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a><br/>Published by Paul King on 2022-08-28 08:46AM<br/>This post looks at the common Groovy features for processing lists.</p></li><li><p class='name'><a href='matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a><br/>Published by Paul King on 2022-08-18 01:41PM<br/>This post looks at using Groovy to write a number of applications involving matrices. It uses a number of open source matrix libraries.</p></li><li><p class='name'><a href='life-on-mars-units-of'>Life on Mars: Units of Measurement systems, Groovy, and domain specific languages (DSLs)</a><br/>Published by Paul King on 2022-08-13 06:31AM<br/>This post looks at using the JSR 385 unit of measurement system and writing domain specific languages with examples including the Mars rover robot.</p></li><li><p class='name'><a href='natural-language-processing-with-groovy'>Natural Language Processing with Groovy, OpenNLP, CoreNLP, Nlp4j, Datumbox, Smile, Spark NLP, DJL and TensorFlow</a><br/>Published by Paul King on 2022-08-07 07:34AM<br/>This post looks at numerous common natural language processing tasks using Groovy and a range of NLP libraries.</p></li><li><p class='name'><a href='detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a><br/>Published by Paul King on 2022-08-01 11:52AM<br/>This post looks at using Apache Groovy, DLJ and Apache MXNet to use neural networks to detect objects within an image.</p></li><li><p class='name'><a href='working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a><br/>Published by Paul King on 2022-07-29 02:07PM<br/>This post looks at a simple H2 database application. It shows how to create a native version of the application using GraalVM.</p></li><li><p class='name'><a href='reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a><br/>Published by Paul King on 2022-07-25 02:26PM<br/>This post looks at processing CSV files using OpenCSV, Commons CSV, and Jackson Databind libraries.</p></li><li><p class='name'><a href='groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a><br/>Published by Paul King on 2022-07-24 12:55PM<br/>Groovy 4.0.4, 3.0.12 and 2.5.18 Release Announcement.</p></li><li><p class='name'><a href='comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a><br/>Published by Paul King on 2022-07-21 03:51PM<br/>This post looks at Groovy functionality for making your classes comparable and/or sortable.</p></li><li><p class='name'><a href='testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a><br/>Published by Paul King on 2022-07-15 08:26AM<br/>This post looks at testing Java using Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</p></li><li><p class='name'><a href='parsing-json-with-groovy'>Parsing JSON with Groovy</a><br/>Published by Paul King on 2022-07-10 02:00PM<br/>This post looks at parsing JSON using Groovy&apos;s in-built capabilities as well as some other libraries.</p></li><li><p class='name'><a href='classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a><br/>Published by Paul King on 2022-06-25 10:52AM<br/>Last updated: 2022-06-27 11:16AM<br/>This post looks at classifying Iris flowers using traditional and neural net based approaches using Eclipse DeepLearning4j, Encog, Deep Netts and GraalVM.</p></li><li><p class='name'><a href='using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a><br/>Published by Paul King on 2022-06-19 01:01PM<br/>This post looks at using Apache Wayang and Apache Spark with Apache Groovy to cluster various Whiskies.</p></li><li><p class='name'><a href='groovy-4-0-3-released'>Groovy 4.0.3 Released</a><br/>Published by Paul King on 2022-06-15 08:16AM<br/>Groovy 4.0.3 Release Announcement.</p></li><li><p class='name'><a href='groovy-3-highlights'>Groovy 3 Highlights</a><br/>Published by Paul King on 2020-02-13 02:28AM<br/>A summary of the highlights for Groovy 3.</p></li><li><p class='name'><a href='groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a><br/>Published by Remko Popma on 2019-07-15 10:30AM<br/>Groovy 3.0.0-beta-2 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a><br/>Published by Remko Popma on 2019-07-15 10:25AM<br/>Groovy 3.0.0-beta-2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a><br/>Published by Remko Popma on 2019-05-12 10:49PM<br/>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a><br/>Published by Remko Popma on 2019-05-12 10:41PM<br/>Groovy 3.0.0-beta-1 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-7-released'>Groovy 2.5.7 Released</a><br/>Published by Remko Popma on 2019-05-12 10:39PM<br/>Groovy 2.5.7 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-4-17-released'>Groovy 2.4.17 Released</a><br/>Published by Remko Popma on 2019-05-12 10:32PM<br/>Groovy 2.4.17 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-6-released'>Groovy 2.5.6 Released</a><br/>Published by Remko Popma on 2019-02-04 10:19PM<br/>Groovy 2.5.6 Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2019-01-01 09:28AM<br/>Groovy 2.4.16 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a><br/>Published by Remko Popma on 2019-01-01 09:24AM<br/>Groovy 3.0.0-alpha-4 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-12-24 10:02PM<br/>Groovy 2.5.5 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-5-released'>Groovy 2.5.5 released</a><br/>Published by Remko Popma on 2018-12-24 11:53AM<br/>Groovy 2.5.5 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-12-18 10:06PM<br/>Groovy 2.4.16 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-4-16-released'>Groovy 2.4.16 Released</a><br/>Published by Remko Popma on 2018-12-18 10:04PM<br/>Groovy 2.4.16 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-11-12 11:43AM<br/>Groovy 2.5.4 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-4-released'>Groovy 2.5.4 Released</a><br/>Published by Remko Popma on 2018-11-12 11:42AM<br/>Groovy 2.5.4 Release Announcement.</p></li><li><p class='name'><a href='apache-groovy-committer-graeme-rocher'>Apache Groovy committer Graeme Rocher receives Oracle Groundbreaker award</a><br/>Published by Paul King on 2018-10-24 11:33PM<br/>Congratulations to Graeme Rocher for receiving the Oracle Groundbreaker award.</p></li><li><p class='name'><a href='gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-10-14 10:00PM<br/>GMavenPlus 1.6.2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-10-14 09:47PM<br/>Groovy 2.5.3 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-3-released'>Groovy 2.5.3 Released</a><br/>Published by Remko Popma on 2018-10-14 09:43PM<br/>Groovy 2.5.3 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-08-19 09:50AM<br/>Groovy 2.5.2 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-2-released'>Groovy 2.5.2 released</a><br/>Published by Remko Popma on 2018-08-16 02:52AM<br/>Groovy 2.5.2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-1-released'>Groovy 2.5.1 released</a><br/>Published by Remko Popma on 2018-07-14 02:18AM<br/>Groovy 2.5.1 Release Announcement.</p></li><li><p class='name'><a href='announce-announcing-codenarc-1-2'>Announcing CodeNarc 1.2</a><br/>Published by Remko Popma on 2018-07-10 10:16AM<br/>CodeNarc 1.2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-0-released'>Groovy 2.5.0 released</a><br/>Published by Remko Popma on 2018-05-30 11:28AM<br/>Groovy 2.5.0 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a><br/>Published by Remko Popma on 2018-05-30 11:28AM<br/>This post looks at new CliBuilder features from Groovy 2.5 in particular the Picocli-based implementation.</p></li></ul><ul class='pagination'/></div></div></div></div></div><footer id='footer'>
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3' id='blog-index'><ul class='nav-sidebar list'><li class='active'><a href='/blog/'>Blogs</a></li><li><a href='groovy-delegation'>Using the Delegation Pattern with Groovy</a></li><li><a href='groovy-typecheckers'>Groovy Type Checkers</a></li><li><a href='seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li><li><a href='groovy-gatherers'>Using Gatherers with Groovy</a></li><li><a href='set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='community-over-code-na-2023'>Community Over Code (North America) 2023</a></li><li><a href='chatgpt-one-liners'>ChatGPT meets Groovy one-liners</a></li><li><a href='groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a></li><li><a href='groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='create-groovy-blog'>Creating a Groovy Blog Post</a></li><li><a href='groovy-record-performance'>Groovy Record Performance</a></li><li><a href='groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='gpars-meets-virtual-threads'>GPars meets Virtual Threads</a></li><li><a href='helloworldemoji'>Hello World with Emojis</a></li><li><a href='groovy-records'>Groovy Records</a></li><li><a href='groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='testing_permutations_combinations'>Groovy Testing with Combinations and Permutations</a></li><li><a href='apache-nlpcraft-with-groovy'>Converting natural language into actions with NLPCraft and Groovy</a></li><li><a href='quake3-inverse-square-root'>Quake III Arena and the fast inverse square root algorithm</a></li><li><a href='australian-timezones'>Australian Time Zones</a></li><li><a href='wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='groundhog-day'>Groundhog Day</a></li><li><a href='fun-with-rating-stars'>Fun with rating stars</a></li><li><a href='apache-groovy-2022-year-in'>Apache Groovy 2022 Year In Review</a></li><li><a href='jvm-hello-world-with-groovy'>JVM Hello World with Groovy</a></li><li><a href='adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a></li><li><a href='zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='groovy-dates-and-times-cheat'>Groovy Dates And Times Cheat Sheet</a></li><li><a href='fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='encryption-and-decryption-with-groovy'>Encryption and decryption with Groovy</a></li><li><a href='calculating-fibonacci-with-groovy-revisited'>Calculating Fibonacci with Groovy revisited</a></li><li><a href='solving-cryptarithmetic-puzzles-with-groovy'>Solving cryptarithmetic puzzles with Groovy and constraint programming using Choco, JaCoP, and OR-Tools</a></li><li><a href='groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='life-on-mars-units-of'>Life on Mars: Units of Measurement systems, Groovy, and domain specific languages (DSLs)</a></li><li><a href='natural-language-processing-with-groovy'>Natural Language Processing with Groovy, OpenNLP, CoreNLP, Nlp4j, Datumbox, Smile, Spark NLP, DJL and TensorFlow</a></li><li><a href='detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a></li><li><a href='comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a></li><li><a href='parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='groovy-4-0-3-released'>Groovy 4.0.3 Released</a></li><li><a href='groovy-3-highlights'>Groovy 3 Highlights</a></li><li><a href='groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a></li><li><a href='groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a></li><li><a href='groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a></li><li><a href='groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a></li><li><a href='groovy-2-5-7-released'>Groovy 2.5.7 Released</a></li><li><a href='groovy-2-4-17-released'>Groovy 2.4.17 Released</a></li><li><a href='groovy-2-5-6-released'>Groovy 2.5.6 Released</a></li><li><a href='groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a></li><li><a href='groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-5-released'>Groovy 2.5.5 released</a></li><li><a href='groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-4-16-released'>Groovy 2.4.16 Released</a></li><li><a href='groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-4-released'>Groovy 2.5.4 Released</a></li><li><a href='apache-groovy-committer-graeme-rocher'>Apache Groovy committer Graeme Rocher receives Oracle Groundbreaker award</a></li><li><a href='gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a></li><li><a href='groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-3-released'>Groovy 2.5.3 Released</a></li><li><a href='groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a></li><li><a href='groovy-2-5-2-released'>Groovy 2.5.2 released</a></li><li><a href='groovy-2-5-1-released'>Groovy 2.5.1 released</a></li><li><a href='announce-announcing-codenarc-1-2'>Announcing CodeNarc 1.2</a></li><li><a href='groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a></li><li><a href='groovy-2-5-0-released'>Groovy 2.5.0 released</a></li></ul><ul class='pagination'/></div><div class='col-lg-8 col-lg-pull-0'><h1>Blogs for Groovy</h1><div id='chartdiv'></div><p>Here you can find the Blogs for the Groovy programming language:</p><div id='blog-list'><div><span>Search: </span><input type='text' class='search'/></div><ul class='list'><li><p class='name'><a href='groovy-delegation'>Using the Delegation Pattern with Groovy</a><br/>Published by Paul King on 2024-01-28 08:08PM<br/>This post looks at using the Delegation Design Pattern with Groovy.</p></li><li><p class='name'><a href='groovy-typecheckers'>Groovy Type Checkers</a><br/>Published by Paul King on 2024-01-20 08:30PM<br/>This post looks at Groovy&apos;s Type Checkers.</p></li><li><p class='name'><a href='seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a><br/>Published by Paul King on 2023-12-23 12:24PM<br/>Last updated: 2024-01-19 10:15PM<br/>Season&apos;s greetings with some emoji fun.</p></li><li><p class='name'><a href='groovy-gatherers'>Using Gatherers with Groovy</a><br/>Published by Paul King on 2023-12-09 03:30PM<br/>Last updated: 2024-01-18 10:00PM<br/>This post looks at using Gatherers (JEP 461) with Groovy.</p></li><li><p class='name'><a href='set-operations-with-groovy'>Set Operators with Groovy</a><br/>Published by Paul King on 2023-11-14 03:22PM<br/>This blog looks at union, intersection, difference &amp;amp; symmetric difference operators in Groovy.</p></li><li><p class='name'><a href='community-over-code-na-2023'>Community Over Code (North America) 2023</a><br/>Published by Paul King on 2023-10-26 05:00PM<br/>This post looks at the ASF Community Over Code conference in Halifax, Nova Scotia, October 7-10 2023, with a particular focus on the Groovy Track.</p></li><li><p class='name'><a href='chatgpt-one-liners'>ChatGPT meets Groovy one-liners</a><br/>Published by Paul King on 2023-10-19 06:00PM<br/>I asked ChatGPT if it could represent some short/one-liner programming-related dad jokes as short/one-liner Groovy scripts.</p></li><li><p class='name'><a href='groovy-pekko-gpars'>Using Apache Pekko actors and GPars actors with Groovy</a><br/>Published by Paul King on 2023-07-17 11:24PM<br/>Last updated: 2023-07-26 03:02PM<br/>This post looks at using Apache Pekko Actors and GPars Actors with Groovy.</p></li><li><p class='name'><a href='groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a><br/>Published by Paul King on 2023-06-13 05:00PM<br/>This post looks at processing the general classification results for the Critérium du Dauphiné using Groovy, GQuery and DuckDB.</p></li><li><p class='name'><a href='create-groovy-blog'>Creating a Groovy Blog Post</a><br/>Published by Paul King on 2023-05-25 11:35PM<br/>This post looks at the steps to create a blog post.</p></li><li><p class='name'><a href='groovy-record-performance'>Groovy Record Performance</a><br/>Published by Paul King on 2023-05-09 11:39PM<br/>Last updated: 2023-05-10 07:57PM<br/>This post looks at the performance of some of the generated methods in Groovy records.</p></li><li><p class='name'><a href='groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a><br/>Published by Paul King on 2023-04-29 09:00AM<br/>This post looks at Groovy support for sequenced collections.</p></li><li><p class='name'><a href='lego-bricks-with-groovy'>Lego Bricks with Groovy</a><br/>Published by Paul King on 2023-04-25 11:28PM<br/>Last updated: 2023-04-27 10:42PM<br/>This post compares Groovy built-in capabilities to Java and Eclipse Collections.</p></li><li><p class='name'><a href='gpars-meets-virtual-threads'>GPars meets Virtual Threads</a><br/>Published by Paul King on 2022-06-15 11:28AM<br/>Last updated: 2023-04-14 06:23PM<br/>This post looks at using GPars with virtual threads.</p></li><li><p class='name'><a href='helloworldemoji'>Hello World with Emojis</a><br/>Published by Paul King on 2023-04-04 12:24PM<br/>This post looks at a Groovy hello world with some emoji fun.</p></li><li><p class='name'><a href='groovy-records'>Groovy Records</a><br/>Published by Paul King on 2023-04-02 08:22PM<br/>This blog looks at Groovy records.</p></li><li><p class='name'><a href='groovy-haiku-processing'>Groovy Haiku processing</a><br/>Published by Paul King on 2023-11-07 07:22PM<br/>This blog looks at processing some creative writing looking at various properties of the letters within the text.</p></li><li><p class='name'><a href='testing_permutations_combinations'>Groovy Testing with Combinations and Permutations</a><br/>Published by Paul King on 2023-03-19 05:23PM<br/>This blog looks at testing with Groovy using Combinations and Permutations.</p></li><li><p class='name'><a href='apache-nlpcraft-with-groovy'>Converting natural language into actions with NLPCraft and Groovy</a><br/>Published by Paul King on 2023-03-10 07:22PM<br/>Last updated: 2023-03-13 01:32PM<br/>This blog looks at using Apache NLPCraft from Groovy.</p></li><li><p class='name'><a href='quake3-inverse-square-root'>Quake III Arena and the fast inverse square root algorithm</a><br/>Published by Paul King on 2023-02-28 12:05AM<br/>Inspired by a recent tweet, this blog looks at the fast inverse square root algorithm made famous in Quake III Arena.</p></li><li><p class='name'><a href='australian-timezones'>Australian Time Zones</a><br/>Published by Paul King on 2023-02-20 08:00PM<br/>Inspired by a recent update related to Antarctic timezones, this post looks at some interesting Australian time zone facts.</p></li><li><p class='name'><a href='wordle-checker'>Checking Wordle with Groovy</a><br/>Published by Paul King on 2023-02-08 12:00AM<br/>This post looks at writing a Wordle checker in Groovy.</p></li><li><p class='name'><a href='groovy-null-processing'>Groovy Processing Nulls In Lists</a><br/>Published by Paul King on 2023-02-06 12:00AM<br/>This post looks at processing lists containing nulls in Groovy.</p></li><li><p class='name'><a href='groundhog-day'>Groundhog Day</a><br/>Published by Paul King on 2023-02-02 12:00AM<br/>Inspired by a recent tweet, this blog looks at some datetime manipulations to calculate the period between Groundhog day and the start of Spring.</p></li><li><p class='name'><a href='fun-with-rating-stars'>Fun with rating stars</a><br/>Published by Paul King on 2023-01-25 12:00AM<br/>Inspired by a recent tweet, this blog looks at producing a string of stars corresponding to a rating.</p></li><li><p class='name'><a href='apache-groovy-2022-year-in'>Apache Groovy 2022 Year In Review</a><br/>Published by Paul King on 2022-12-29 02:28PM<br/>This post looks back at some highlights for Groovy in 2022.</p></li><li><p class='name'><a href='jvm-hello-world-with-groovy'>JVM Hello World with Groovy</a><br/>Published by Paul King on 2022-12-22 02:24PM<br/>This post looks at using bytecode libraries to generate class files. It&apos;s a deep dive into how compilers and other tools work behind the scenes.</p></li><li><p class='name'><a href='adventures-with-groovyfx'>Adventures with GroovyFX</a><br/>Published by Paul King on 2022-12-12 02:22PM<br/>This blog looks at a GroovyFX TODO application.</p></li><li><p class='name'><a href='fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a><br/>Published by Paul King on 2022-12-08 12:40AM<br/>This post looks at some Obfuscated code for outputting some well-known text.</p></li><li><p class='name'><a href='zipping-collections-with-groovy'>Zipping Collections with Groovy</a><br/>Published by Paul King on 2022-11-17 12:50PM<br/>This post looks at zipping collections.</p></li><li><p class='name'><a href='whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a><br/>Published by Paul King on 2022-10-27 11:13AM<br/>This post looks at using Apache Ignite with Apache Groovy and the K-Means algorithm to cluster scotch whiskeys.</p></li><li><p class='name'><a href='groovy-dates-and-times-cheat'>Groovy Dates And Times Cheat Sheet</a><br/>Published by Paul King on 2022-10-24 07:27AM<br/>This post looks at data and time functionality in Groovy including classic and Java date time, JSR310, functionality.</p></li><li><p class='name'><a href='fruity-eclipse-collections'>Fruity Eclipse Collections</a><br/>Published by Paul King on 2022-10-13 11:05AM<br/>This post looks at using KMeans to compare fruit nominated color with the colors used in its emoji.</p></li><li><p class='name'><a href='deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a><br/>Published by Paul King on 2022-10-11 10:41AM<br/>This post uses Emojis and Eclipse Collections to process pet records. We then use deep learning to predict whether each emoji looks like a dog or cat.</p></li><li><p class='name'><a href='deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a><br/>Published by Paul King on 2022-09-23 10:18AM<br/>Last updated: 2022-09-25 11:15AM<br/>This post highlights some code for modelling and manipulating cards with records, JDK collections, and Eclipse Collections.</p></li><li><p class='name'><a href='encryption-and-decryption-with-groovy'>Encryption and decryption with Groovy</a><br/>Published by Paul King on 2022-09-19 02:34PM<br/>This post looks at encrypting and decrypting data using Groovy with the AES and CAST5 algorithms.</p></li><li><p class='name'><a href='calculating-fibonacci-with-groovy-revisited'>Calculating Fibonacci with Groovy revisited</a><br/>Published by Paul King on 2022-09-08 10:59AM<br/>This post looks at various ways to calculate Fibonacci numbers such as recursion and iteration including optimisations like tail recursion and memoization.</p></li><li><p class='name'><a href='solving-cryptarithmetic-puzzles-with-groovy'>Solving cryptarithmetic puzzles with Groovy and constraint programming using Choco, JaCoP, and OR-Tools</a><br/>Published by Paul King on 2022-09-05 01:43PM<br/>This post looks at solving cryptarithmetic puzzles using Groovy.</p></li><li><p class='name'><a href='groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a><br/>Published by Paul King on 2022-08-28 08:46AM<br/>This post looks at the common Groovy features for processing lists.</p></li><li><p class='name'><a href='matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a><br/>Published by Paul King on 2022-08-18 01:41PM<br/>This post looks at using Groovy to write a number of applications involving matrices. It uses a number of open source matrix libraries.</p></li><li><p class='name'><a href='life-on-mars-units-of'>Life on Mars: Units of Measurement systems, Groovy, and domain specific languages (DSLs)</a><br/>Published by Paul King on 2022-08-13 06:31AM<br/>This post looks at using the JSR 385 unit of measurement system and writing domain specific languages with examples including the Mars rover robot.</p></li><li><p class='name'><a href='natural-language-processing-with-groovy'>Natural Language Processing with Groovy, OpenNLP, CoreNLP, Nlp4j, Datumbox, Smile, Spark NLP, DJL and TensorFlow</a><br/>Published by Paul King on 2022-08-07 07:34AM<br/>This post looks at numerous common natural language processing tasks using Groovy and a range of NLP libraries.</p></li><li><p class='name'><a href='detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a><br/>Published by Paul King on 2022-08-01 11:52AM<br/>This post looks at using Apache Groovy, DLJ and Apache MXNet to use neural networks to detect objects within an image.</p></li><li><p class='name'><a href='working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a><br/>Published by Paul King on 2022-07-29 02:07PM<br/>This post looks at a simple H2 database application. It shows how to create a native version of the application using GraalVM.</p></li><li><p class='name'><a href='reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a><br/>Published by Paul King on 2022-07-25 02:26PM<br/>This post looks at processing CSV files using OpenCSV, Commons CSV, and Jackson Databind libraries.</p></li><li><p class='name'><a href='groovy-release-train-4-0'>Groovy release train: 4.0.4, 3.0.12, 2.5.18</a><br/>Published by Paul King on 2022-07-24 12:55PM<br/>Groovy 4.0.4, 3.0.12 and 2.5.18 Release Announcement.</p></li><li><p class='name'><a href='comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a><br/>Published by Paul King on 2022-07-21 03:51PM<br/>This post looks at Groovy functionality for making your classes comparable and/or sortable.</p></li><li><p class='name'><a href='testing-your-java-with-groovy'>Testing your Java with Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</a><br/>Published by Paul King on 2022-07-15 08:26AM<br/>This post looks at testing Java using Groovy, Spock, JUnit5, Jacoco, Jqwik and Pitest</p></li><li><p class='name'><a href='parsing-json-with-groovy'>Parsing JSON with Groovy</a><br/>Published by Paul King on 2022-07-10 02:00PM<br/>This post looks at parsing JSON using Groovy&apos;s in-built capabilities as well as some other libraries.</p></li><li><p class='name'><a href='classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a><br/>Published by Paul King on 2022-06-25 10:52AM<br/>Last updated: 2022-06-27 11:16AM<br/>This post looks at classifying Iris flowers using traditional and neural net based approaches using Eclipse DeepLearning4j, Encog, Deep Netts and GraalVM.</p></li><li><p class='name'><a href='using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a><br/>Published by Paul King on 2022-06-19 01:01PM<br/>This post looks at using Apache Wayang and Apache Spark with Apache Groovy to cluster various Whiskies.</p></li><li><p class='name'><a href='groovy-4-0-3-released'>Groovy 4.0.3 Released</a><br/>Published by Paul King on 2022-06-15 08:16AM<br/>Groovy 4.0.3 Release Announcement.</p></li><li><p class='name'><a href='groovy-3-highlights'>Groovy 3 Highlights</a><br/>Published by Paul King on 2020-02-13 02:28AM<br/>A summary of the highlights for Groovy 3.</p></li><li><p class='name'><a href='groovy-3-0-0-beta2'>Groovy 3.0.0-beta-2 Windows Installer Released (Community Release)</a><br/>Published by Remko Popma on 2019-07-15 10:30AM<br/>Groovy 3.0.0-beta-2 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-beta1'>Groovy 3.0.0-beta-2 Released</a><br/>Published by Remko Popma on 2019-07-15 10:25AM<br/>Groovy 3.0.0-beta-2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-7-and'>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installers Released (Community Artifacts)</a><br/>Published by Remko Popma on 2019-05-12 10:49PM<br/>Groovy 2.5.7 and 3.0.0-beta-1 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-beta'>Groovy 3.0.0-beta-1 Released</a><br/>Published by Remko Popma on 2019-05-12 10:41PM<br/>Groovy 3.0.0-beta-1 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-7-released'>Groovy 2.5.7 Released</a><br/>Published by Remko Popma on 2019-05-12 10:39PM<br/>Groovy 2.5.7 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-4-17-released'>Groovy 2.4.17 Released</a><br/>Published by Remko Popma on 2019-05-12 10:32PM<br/>Groovy 2.4.17 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-6-released'>Groovy 2.5.6 Released</a><br/>Published by Remko Popma on 2019-02-04 10:19PM<br/>Groovy 2.5.6 Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-alpha1'>Groovy 3.0.0-alpha-4 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2019-01-01 09:28AM<br/>Groovy 2.4.16 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-3-0-0-alpha'>Groovy 3.0.0-alpha-4 Released</a><br/>Published by Remko Popma on 2019-01-01 09:24AM<br/>Groovy 3.0.0-alpha-4 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-5-windows'>Groovy 2.5.5 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-12-24 10:02PM<br/>Groovy 2.5.5 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-5-released'>Groovy 2.5.5 released</a><br/>Published by Remko Popma on 2018-12-24 11:53AM<br/>Groovy 2.5.5 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-4-16-windows'>Groovy 2.4.16 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-12-18 10:06PM<br/>Groovy 2.4.16 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-4-16-released'>Groovy 2.4.16 Released</a><br/>Published by Remko Popma on 2018-12-18 10:04PM<br/>Groovy 2.4.16 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-4-windows'>Groovy 2.5.4 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-11-12 11:43AM<br/>Groovy 2.5.4 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-4-released'>Groovy 2.5.4 Released</a><br/>Published by Remko Popma on 2018-11-12 11:42AM<br/>Groovy 2.5.4 Release Announcement.</p></li><li><p class='name'><a href='apache-groovy-committer-graeme-rocher'>Apache Groovy committer Graeme Rocher receives Oracle Groundbreaker award</a><br/>Published by Paul King on 2018-10-24 11:33PM<br/>Congratulations to Graeme Rocher for receiving the Oracle Groundbreaker award.</p></li><li><p class='name'><a href='gmavenplus-1-6-2-released'>GMavenPlus 1.6.2 Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-10-14 10:00PM<br/>GMavenPlus 1.6.2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-3-windows'>Groovy 2.5.3 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-10-14 09:47PM<br/>Groovy 2.5.3 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-3-released'>Groovy 2.5.3 Released</a><br/>Published by Remko Popma on 2018-10-14 09:43PM<br/>Groovy 2.5.3 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-2-windows'>Groovy 2.5.2 Windows Installer Released (Community Artifact)</a><br/>Published by Remko Popma on 2018-08-19 09:50AM<br/>Groovy 2.5.2 Windows Installer Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-2-released'>Groovy 2.5.2 released</a><br/>Published by Remko Popma on 2018-08-16 02:52AM<br/>Groovy 2.5.2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-1-released'>Groovy 2.5.1 released</a><br/>Published by Remko Popma on 2018-07-14 02:18AM<br/>Groovy 2.5.1 Release Announcement.</p></li><li><p class='name'><a href='announce-announcing-codenarc-1-2'>Announcing CodeNarc 1.2</a><br/>Published by Remko Popma on 2018-07-10 10:16AM<br/>CodeNarc 1.2 Release Announcement.</p></li><li><p class='name'><a href='groovy-2-5-clibuilder-renewal'>Apache Groovy 2.5 CliBuilder Renewal</a><br/>Published by Remko Popma on 2018-05-30 11:28AM<br/>This post looks at new CliBuilder features from Groovy 2.5 in particular the Picocli-based implementation.</p></li><li><p class='name'><a href='groovy-2-5-0-released'>Groovy 2.5.0 released</a><br/>Published by Remko Popma on 2018-05-30 11:28AM<br/>Groovy 2.5.0 Release Announcement.</p></li></ul><ul class='pagination'/></div></div></div></div></div><footer id='footer'>
                             <div class='row'>
                                 <div class='colset-3-footer'>
                                     <div class='col-1'>
@@ -97,7 +97,7 @@
                     colors: am5.ColorSet.new(root, {})
                 }));
                 wc.data.setAll([
-                { category: "centroids", value: 1 }, { category: "data science", value: 7 }, { category: "groovy", value: 75 }, { category: "kmeans", value: 3 }, { category: "records", value: 7 }, { category: "apache spark", value: 1 }, { category: "apache wayang", value: 1 }, { category: "release", value: 25 }, { category: "clibuilder", value: 1 }, { category: "picocli", value: 1 }, { category: "commons cli", value: 1 }, { category: "asf", value: 1 }, { category: "apachecon", value: 2 }, { category: "communityovercode", value: 1 }, { category: "decryption", value: 1 }, { category: "encryption", value: 1 }, { category: "security", value: 1 }, { category: "bouncy castle", value: 1 }, { category: "emoji", value: 7 }, { category: "delegation", value: 1 }, { category: "design pattern", value: 1 }, { category: "set", value: 1 }, { category: "domain specific languages", value: 1 }, { category: "jsr385", value: 1 }, { category: "units of measurement", value: 1 }, { category: "machine learning", value: 2 }, { category: "artificial intelligence", value: 1 }, { category: "neural networks", value: 2 }, { category: "tribuo", value: 1 }, { category: "deep netts", value: 1 }, { category: "encog", value: 1 }, { category: "eclipse deeplearning4j", value: 3 }, { category: "deep learning", value: 3 }, { category: "graalvm", value: 3 }, { category: "native", value: 3 }, { category: "parrot", value: 1 }, { category: "natural language processing", value: 2 }, { category: "nlp", value: 1 }, { category: "nlpcraft", value: 1 }, { category: "jep431", value: 1 }, { category: "collections", value: 5 }, { category: "chatgpt", value: 1 }, { category: "one-liners", value: 1 }, { category: "eclipse collections", value: 9 }, { category: "virtual threads", value: 3 }, { category: "scala integration", value: 1 }, { category: "clustering", value: 2 }, { category: "windows installer", value: 8 }, { category: "cycling", value: 2 }, { category: "duckdb", value: 1 }, { category: "sql", value: 2 }, { category: "ginq", value: 6 }, { category: "gquery", value: 5 }, { category: "csv", value: 2 }, { category: "award", value: 1 }, { category: "blog", value: 1 }, { category: "AST transforms", value: 1 }, { category: "combinations", value: 1 }, { category: "permutations", value: 1 }, { category: "testing", value: 2 }, { category: "junit", value: 2 }, { category: "spock", value: 2 }, { category: "jqwik", value: 2 }, { category: "allpairs", value: 1 }, { category: "java", value: 3 }, { category: "pitest", value: 1 }, { category: "jacoco", value: 1 }, { category: "datetime", value: 2 }, { category: "timezone", value: 1 }, { category: "date", value: 3 }, { category: "spark nlp", value: 1 }, { category: "apache opennlp", value: 1 }, { category: "corenlp", value: 1 }, { category: "nlp4j", value: 1 }, { category: "tensorflow", value: 1 }, { category: "djl", value: 1 }, { category: "smile", value: 1 }, { category: "datumbox", value: 1 }, { category: "lego", value: 1 }, { category: "groovyfx", value: 1 }, { category: "javafx", value: 1 }, { category: "jackson databind", value: 2 }, { category: "groovyConsole", value: 1 }, { category: "hephaestus", value: 1 }, { category: "concurrency", value: 2 }, { category: "actors", value: 2 }, { category: "dataflow", value: 1 }, { category: "agents", value: 1 }, { category: "json", value: 1 }, { category: "scripting", value: 1 }, { category: "gradle", value: 2 }, { category: "maven", value: 1 }, { category: "gmaven", value: 1 }, { category: "jvm", value: 1 }, { category: "h2", value: 1 }, { category: "constraint programming", value: 1 }, { category: "jacop", value: 1 }, { category: "or-tools", value: 1 }, { category: "choco", value: 1 }, { category: "jsr331", value: 1 }, { category: "gatherers", value: 1 }, { category: "jdk22", value: 1 }, { category: "chop", value: 1 }, { category: "collate", value: 1 }, { category: "inject", value: 1 }, { category: "streams", value: 3 }, { category: "jep461", value: 1 }, { category: "fold", value: 1 }, { category: "scan", value: 1 }, { category: "timecategory", value: 1 }, { category: "lists", value: 2 }, { category: "guava", value: 3 }, { category: "commons collections", value: 2 }, { category: "gpars", value: 2 }, { category: "apache", value: 2 }, { category: "ignite", value: 1 }, { category: "zipping", value: 1 }, { category: "wordle", value: 1 }, { category: "obfuscated", value: 1 }, { category: "commons math", value: 2 }, { category: "type checking", value: 1 }, { category: "printf", value: 1 }, { category: "regex", value: 1 }, { category: "format", value: 1 }, { category: "2022", value: 1 }, { category: "fibonacci", value: 1 }, { category: "recursion", value: 1 }, { category: "bytecode", value: 1 }, { category: "byte buddy", value: 1 }, { category: "proguardcore", value: 1 }, { category: "asm", value: 1 }, { category: "jvmadvent", value: 1 }, { category: "codenarc", value: 1 }, { category: "grails", value: 1 }, { category: "comparators", value: 1 }, { category: "functional", value: 1 }, { category: "lambdas", value: 1 }, { category: "sorting", value: 1 }, { category: "scala", value: 1 }, { category: "kotlin", value: 1 }, { category: "lombok", value: 1 }, { category: "apache mxnet", value: 1 }, { category: "DJL", value: 1 }, { category: "artifical intelligence", value: 1 }, { category: "pekko", value: 1 }, { category: "zip", value: 1 }, { category: "vavr", value: 1 }, { category: "streamex", value: 1 }, { category: "jOOλ", value: 1 }, { category: "@Sortable", value: 1 }, { category: "matrices", value: 1 }, { category: "ojalgo", value: 1 }, { category: "nd4j", value: 1 }, { category: "ejml", value: 1 }, { category: "vector api", value: 1 }, { category: "data", value: 1 }, { category: "deserialization", value: 1 }, { category: "files", value: 1 }, { category: "reading", value: 1 }, { category: "serialization", value: 1 }, { category: "writing", value: 1 }, { category: "opencsv", value: 1 }, { category: "commons csv", value: 1 }, { category: "calendar", value: 1 }, { category: "jsr310", value: 1 }, { category: "time", value: 1 }, { category: "null", value: 1 }, { category: "Groovy truth", value: 1 }
+                { category: "groovy", value: 75 }, { category: "emoji", value: 7 }, { category: "set", value: 1 }, { category: "constraint programming", value: 1 }, { category: "jacop", value: 1 }, { category: "or-tools", value: 1 }, { category: "choco", value: 1 }, { category: "jsr331", value: 1 }, { category: "bytecode", value: 1 }, { category: "byte buddy", value: 1 }, { category: "proguardcore", value: 1 }, { category: "asm", value: 1 }, { category: "jvmadvent", value: 1 }, { category: "eclipse collections", value: 9 }, { category: "streams", value: 3 }, { category: "windows installer", value: 8 }, { category: "release", value: 25 }, { category: "comparators", value: 1 }, { category: "functional", value: 1 }, { category: "gquery", value: 5 }, { category: "ginq", value: 6 }, { category: "lambdas", value: 1 }, { category: "records", value: 7 }, { category: "sorting", value: 1 }, { category: "collections", value: 5 }, { category: "zip", value: 1 }, { category: "guava", value: 3 }, { category: "vavr", value: 1 }, { category: "streamex", value: 1 }, { category: "jOOλ", value: 1 }, { category: "lists", value: 2 }, { category: "commons collections", value: 2 }, { category: "gpars", value: 2 }, { category: "virtual threads", value: 3 }, { category: "apache", value: 2 }, { category: "parrot", value: 1 }, { category: "type checking", value: 1 }, { category: "printf", value: 1 }, { category: "regex", value: 1 }, { category: "format", value: 1 }, { category: "decryption", value: 1 }, { category: "encryption", value: 1 }, { category: "security", value: 1 }, { category: "bouncy castle", value: 1 }, { category: "groovyConsole", value: 1 }, { category: "hephaestus", value: 1 }, { category: "domain specific languages", value: 1 }, { category: "jsr385", value: 1 }, { category: "units of measurement", value: 1 }, { category: "data science", value: 7 }, { category: "deep learning", value: 3 }, { category: "neural networks", value: 2 }, { category: "apache mxnet", value: 1 }, { category: "DJL", value: 1 }, { category: "artifical intelligence", value: 1 }, { category: "machine learning", value: 2 }, { category: "gradle", value: 2 }, { category: "null", value: 1 }, { category: "Groovy truth", value: 1 }, { category: "jep431", value: 1 }, { category: "combinations", value: 1 }, { category: "permutations", value: 1 }, { category: "testing", value: 2 }, { category: "junit", value: 2 }, { category: "spock", value: 2 }, { category: "jqwik", value: 2 }, { category: "allpairs", value: 1 }, { category: "maven", value: 1 }, { category: "gmaven", value: 1 }, { category: "concurrency", value: 2 }, { category: "actors", value: 2 }, { category: "pekko", value: 1 }, { category: "delegation", value: 1 }, { category: "design pattern", value: 1 }, { category: "award", value: 1 }, { category: "java", value: 3 }, { category: "obfuscated", value: 1 }, { category: "commons math", value: 2 }, { category: "json", value: 1 }, { category: "scripting", value: 1 }, { category: "graalvm", value: 3 }, { category: "native", value: 3 }, { category: "blog", value: 1 }, { category: "datetime", value: 2 }, { category: "timezone", value: 1 }, { category: "date", value: 3 }, { category: "pitest", value: 1 }, { category: "jacoco", value: 1 }, { category: "natural language processing", value: 2 }, { category: "spark nlp", value: 1 }, { category: "apache opennlp", value: 1 }, { category: "corenlp", value: 1 }, { category: "nlp4j", value: 1 }, { category: "tensorflow", value: 1 }, { category: "djl", value: 1 }, { category: "smile", value: 1 }, { category: "datumbox", value: 1 }, { category: "asf", value: 1 }, { category: "apachecon", value: 2 }, { category: "communityovercode", value: 1 }, { category: "centroids", value: 1 }, { category: "kmeans", value: 3 }, { category: "apache spark", value: 1 }, { category: "apache wayang", value: 1 }, { category: "codenarc", value: 1 }, { category: "grails", value: 1 }, { category: "calendar", value: 1 }, { category: "jsr310", value: 1 }, { category: "time", value: 1 }, { category: "matrices", value: 1 }, { category: "ojalgo", value: 1 }, { category: "nd4j", value: 1 }, { category: "ejml", value: 1 }, { category: "vector api", value: 1 }, { category: "eclipse deeplearning4j", value: 3 }, { category: "AST transforms", value: 1 }, { category: "zipping", value: 1 }, { category: "wordle", value: 1 }, { category: "timecategory", value: 1 }, { category: "artificial intelligence", value: 1 }, { category: "tribuo", value: 1 }, { category: "deep netts", value: 1 }, { category: "encog", value: 1 }, { category: "clibuilder", value: 1 }, { category: "picocli", value: 1 }, { category: "commons cli", value: 1 }, { category: "2022", value: 1 }, { category: "scala integration", value: 1 }, { category: "clustering", value: 2 }, { category: "groovyfx", value: 1 }, { category: "javafx", value: 1 }, { category: "jackson databind", value: 2 }, { category: "ignite", value: 1 }, { category: "nlp", value: 1 }, { category: "nlpcraft", value: 1 }, { category: "gatherers", value: 1 }, { category: "jdk22", value: 1 }, { category: "chop", value: 1 }, { category: "collate", value: 1 }, { category: "inject", value: 1 }, { category: "jep461", value: 1 }, { category: "fold", value: 1 }, { category: "scan", value: 1 }, { category: "jvm", value: 1 }, { category: "sql", value: 2 }, { category: "h2", value: 1 }, { category: "scala", value: 1 }, { category: "kotlin", value: 1 }, { category: "lombok", value: 1 }, { category: "chatgpt", value: 1 }, { category: "one-liners", value: 1 }, { category: "dataflow", value: 1 }, { category: "agents", value: 1 }, { category: "fibonacci", value: 1 }, { category: "recursion", value: 1 }, { category: "csv", value: 2 }, { category: "data", value: 1 }, { category: "deserialization", value: 1 }, { category: "files", value: 1 }, { category: "reading", value: 1 }, { category: "serialization", value: 1 }, { category: "writing", value: 1 }, { category: "opencsv", value: 1 }, { category: "commons csv", value: 1 }, { category: "cycling", value: 2 }, { category: "@Sortable", value: 1 }, { category: "lego", value: 1 }, { category: "duckdb", value: 1 }
                 ]);
                 wc.labels.template.setAll({
                     paddingTop: 5,
diff --git a/blog/lego-bricks-with-groovy.html b/blog/lego-bricks-with-groovy.html
index f922b38..f519aa0 100644
--- a/blog/lego-bricks-with-groovy.html
+++ b/blog/lego-bricks-with-groovy.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Lego Bricks with Groovy</a></li><li><a href='#_basic_collection_processing' class='anchor-link'>Basic Collection Processing</a></li><li><a href='#_our_example_domain' class='anchor-link'>Our example domain</a></li><li><a href='#_some_bricks_to_play_with' class='anchor-link'>Some bricks to play with</a></li><li><a href='#_using_each_do' class='anchor-link'>Using <code>each</code> ("Do")</a></li><li><a href='#_using_findall_filter' class='anchor-link'>Using <code>findAll</code> ("Filter")</a></li><li><a href='#_using_split_also_filter' class='anchor-link'>Using <code>split</code> (also "Filter")</a></li><li><a href='#_using_collect_transform' class='anchor-link'>Using <code>collect</code> ("Transform")</a></li><li><a href='#_using_find_find' class='anchor-link'>Using <code>find</code> ("Find")</a></li><li><a href='#_using_any_and_every_test' class='anchor-link'>Using <code>any</code> and <code>every</code> ("Test")</a></li><li><a href='#_using_count_count' class='anchor-link'>Using <code>count</code> ("Count")</a></li><li><a href='#_a_mosaic_of_bricks' class='anchor-link'>A mosaic of bricks</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Lego Bricks with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-25 11:28PM (Last updated: 2023-04-27 10:42PM)</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Lego Bricks with Groovy</a></li><li><a href='#_basic_collection_processing' class='anchor-link'>Basic Collection Processing</a></li><li><a href='#_our_example_domain' class='anchor-link'>Our example domain</a></li><li><a href='#_some_bricks_to_play_with' class='anchor-link'>Some bricks to play with</a></li><li><a href='#_using_each_do' class='anchor-link'>Using <code>each</code> ("Do")</a></li><li><a href='#_using_findall_filter' class='anchor-link'>Using <code>findAll</code> ("Filter")</a></li><li><a href='#_using_split_also_filter' class='anchor-link'>Using <code>split</code> (also "Filter")</a></li><li><a href='#_using_collect_transform' class='anchor-link'>Using <code>collect</code> ("Transform")</a></li><li><a href='#_using_find_find' class='anchor-link'>Using <code>find</code> ("Find")</a></li><li><a href='#_using_any_and_every_test' class='anchor-link'>Using <code>any</code> and <code>every</code> ("Test")</a></li><li><a href='#_using_count_count' class='anchor-link'>Using <code>count</code> ("Count")</a></li><li><a href='#_a_mosaic_of_bricks' class='anchor-link'>A mosaic of bricks</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Lego Bricks with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-04-25 11:28PM (Last updated: 2023-04-27 10:42PM)</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p><a href="https://twitter.com/TheDonRaab">Donald Raab</a> has continued has interesting
diff --git a/blog/matrix-calculations-with-groovy-apache.html b/blog/matrix-calculations-with-groovy-apache.html
index 0c2f479..84dd227 100644
--- a/blog/matrix-calculations-with-groovy-apache.html
+++ b/blog/matrix-calculations-with-groovy-apache.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='#_fibonacci' class='anchor-link'>Fibonacci</a></li><li><a href='#_leslie_matrices' class='anchor-link'>Leslie Matrices</a></li><li><a href='#_encryption_with_matrices' class='anchor-link'>Encryption with matrices</a></li><li><a href='#_shape_manipulation' class='anchor-link'>Shape manipulation</a></li><li><a href='#_language_and_tool_extensibility' class='anchor-link'>Language and tool extensibility</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-08-18 01:41PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='#_fibonacci' class='anchor-link'>Fibonacci</a></li><li><a href='#_leslie_matrices' class='anchor-link'>Leslie Matrices</a></li><li><a href='#_encryption_with_matrices' class='anchor-link'>Encryption with matrices</a></li><li><a href='#_shape_manipulation' class='anchor-link'>Shape manipulation</a></li><li><a href='#_language_and_tool_extensibility' class='anchor-link'>Language and tool extensibility</a></li><li><a href='#_further_information' class='anchor-link'>Further information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./fun-with-obfuscated-groovy'>Fun with obfuscated Groovy</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-08-18 01:41PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>This blogs looks at performing matrix calculations with Groovy
diff --git a/blog/parsing-json-with-groovy.html b/blog/parsing-json-with-groovy.html
index 0c3078d..5a58a43 100644
--- a/blog/parsing-json-with-groovy.html
+++ b/blog/parsing-json-with-groovy.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Parsing JSON with Groovy</a></li><li><a href='#_batteries_included_experience' class='anchor-link'>Batteries included experience</a></li><li><a href='#_gradle' class='anchor-link'>Gradle</a></li><li><a href='#_maven' class='anchor-link'>Maven</a></li><li><a href='#_advanced_features' class='anchor-link'>Advanced features</a></li><li><a href='#_other_json_libraries' class='anchor-link'>Other JSON libraries</a></li><li><a href='#_integrated_query' class='anchor-link'>Integrated query</a></li><li><a href='#_quick_performance_comparison' class='anchor-link'>Quick performance comparison</a></li><li><a href='#_summary' class='anchor-link'>Summary</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Parsing JSON with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-10 02:00PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Parsing JSON with Groovy</a></li><li><a href='#_batteries_included_experience' class='anchor-link'>Batteries included experience</a></li><li><a href='#_gradle' class='anchor-link'>Gradle</a></li><li><a href='#_maven' class='anchor-link'>Maven</a></li><li><a href='#_advanced_features' class='anchor-link'>Advanced features</a></li><li><a href='#_other_json_libraries' class='anchor-link'>Other JSON libraries</a></li><li><a href='#_integrated_query' class='anchor-link'>Integrated query</a></li><li><a href='#_quick_performance_comparison' class='anchor-link'>Quick performance comparison</a></li><li><a href='#_summary' class='anchor-link'>Summary</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./working-with-sql-databases-with'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Parsing JSON with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-10 02:00PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p><span class="image right"><img src="img/json_logo.gif" alt="json logo" width="120"></span>
diff --git a/blog/reading-and-writing-csv-files.html b/blog/reading-and-writing-csv-files.html
index a635946..4e22c29 100644
--- a/blog/reading-and-writing-csv-files.html
+++ b/blog/reading-and-writing-csv-files.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Reading and Writing CSV files with Groovy</a></li><li><a href='#_introduction' class='anchor-link'>Introduction</a></li><li><a href='#_commons_csv' class='anchor-link'>Commons CSV</a></li><li><a href='#_opencsv' class='anchor-link'>OpenCSV</a></li><li><a href='#_jackson_databind_csv' class='anchor-link'>Jackson Databind CSV</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Reading and Writing CSV files with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-25 02:26PM</span></p><hr/><div class="sect1">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Reading and Writing CSV files with Groovy</a></li><li><a href='#_introduction' class='anchor-link'>Introduction</a></li><li><a href='#_commons_csv' class='anchor-link'>Commons CSV</a></li><li><a href='#_opencsv' class='anchor-link'>OpenCSV</a></li><li><a href='#_jackson_databind_csv' class='anchor-link'>Jackson Databind CSV</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Reading and Writing CSV files with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-25 02:26PM</span></p><hr/><div class="sect1">
 <h2 id="_introduction">Introduction</h2>
 <div class="sectionbody">
 <div class="paragraph">
diff --git a/blog/seasons-greetings-emoji.html b/blog/seasons-greetings-emoji.html
index bebff77..d6b7adf 100644
--- a/blog/seasons-greetings-emoji.html
+++ b/blog/seasons-greetings-emoji.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Season&#8217;s Greetings with Emojis</a></li><li><a href='#_jdk_21_new_features' class='anchor-link'>JDK 21 New Features</a></li><li><a href='#_playing_with_emojis_with_groovy' class='anchor-link'>Playing with Emojis with Groovy</a></li><li><a href='#_more_information' class='anchor-link'>More Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Season&#8217;s Greetings with Emojis</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-12-23 12:24PM (Last updated: 2024-01-19 10:15PM)</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Season&#8217;s Greetings with Emojis</a></li><li><a href='#_jdk_21_new_features' class='anchor-link'>JDK 21 New Features</a></li><li><a href='#_playing_with_emojis_with_groovy' class='anchor-link'>Playing with Emojis with Groovy</a></li><li><a href='#_more_information' class='anchor-link'>More Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Season&#8217;s Greetings with Emojis</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-12-23 12:24PM (Last updated: 2024-01-19 10:15PM)</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>In a <a href="https://groovy.apache.org/blog/helloworldemoji">previous blog post</a>
diff --git a/blog/set-operations-with-groovy.html b/blog/set-operations-with-groovy.html
index f083cbf..44f2cfb 100644
--- a/blog/set-operations-with-groovy.html
+++ b/blog/set-operations-with-groovy.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Set Operators with Groovy</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Set Operators with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-11-14 03:22PM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Set Operators with Groovy</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Set Operators with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-11-14 03:22PM</span></p><hr/><div class="paragraph">
 <p><a href="https://twitter.com/TheDonRaab">Donald Raab</a> posted <a href="https://donraab.medium.com/comparing-set-operations-between-java-and-eclipse-collections-92cf1df28d3b">an article</a> about set operators using Java collections and <a href="https://github.com/eclipse/eclipse-collections">Eclipse Collections</a>. <a href="https://donraab.medium.com/comparing-set-operations-between-java-and-eclipse-collections-92cf1df28d3b">That post</a> focuses
 on the <em>union</em>, <em>intersection</em> and <em>difference</em> operators. We&#8217;ll add in
 <em>symmetric difference</em> since Groovy supports operator overloading for that
diff --git a/blog/using-groovy-with-apache-wayang.html b/blog/using-groovy-with-apache-wayang.html
index 2bb9800..8e0996d 100644
--- a/blog/using-groovy-with-apache-wayang.html
+++ b/blog/using-groovy-with-apache-wayang.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='#_whiskey_clustering' class='anchor-link'>Whiskey Clustering</a></li><li><a href='#_implementation_details' class='anchor-link'>Implementation Details</a></li><li><a href='#_running_with_the_java_streams_backed_platform' class='anchor-link'>Running with the Java streams-backed platform</a></li><li><a href='#_running_with_apache_spark' class='anchor-link'>Running with Apache Spark</a></li><li><a href='#_discussion' class='anchor-link'>Discussion</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li><li><a href='#_more_information' class='anchor-link'>More Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Using Groovy with Apache Wayang and Apache Spark</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-19 01:01PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='#_whiskey_clustering' class='anchor-link'>Whiskey Clustering</a></li><li><a href='#_implementation_details' class='anchor-link'>Implementation Details</a></li><li><a href='#_running_with_the_java_streams_backed_platform' class='anchor-link'>Running with the Java streams-backed platform</a></li><li><a href='#_running_with_apache_spark' class='anchor-link'>Running with Apache Spark</a></li><li><a href='#_discussion' class='anchor-link'>Discussion</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li><li><a href='#_more_information' class='anchor-link'>More Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./whiskey-clustering-with-groovy-and'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./groovy-record-performance'>Groovy Record Performance</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./groovy-records'>Groovy Records</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Using Groovy with Apache Wayang and Apache Spark</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-06-19 01:01PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p><span class="image right"><img src="https://www.apache.org/logos/res/wayang/default.png" alt="wayang logo" width="100"></span>
diff --git a/blog/whiskey-clustering-with-groovy-and.html b/blog/whiskey-clustering-with-groovy-and.html
index f2d1a20..90bfb21 100644
--- a/blog/whiskey-clustering-with-groovy-and.html
+++ b/blog/whiskey-clustering-with-groovy-and.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='#_whiskey_clustering' class='anchor-link'>Whiskey Clustering</a></li><li><a href='#_apache_ignite' class='anchor-link'>Apache Ignite</a></li><li><a href='#_implementation_details' class='anchor-link'>Implementation Details</a></li><li><a href='#_results' class='anchor-link'>Results</a></li><li><a href='#_more_information' class='anchor-link'>More Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Whiskey Clustering with Groovy and Apache Ignite</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-10-27 11:13AM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Whiskey Clustering with Groovy and Apache Ignite</a></li><li><a href='#_whiskey_clustering' class='anchor-link'>Whiskey Clustering</a></li><li><a href='#_apache_ignite' class='anchor-link'>Apache Ignite</a></li><li><a href='#_implementation_details' class='anchor-link'>Implementation Details</a></li><li><a href='#_results' class='anchor-link'>Results</a></li><li><a href='#_more_information' class='anchor-link'>More Information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./using-groovy-with-apache-wayang'>Using Groovy with Apache Wayang and Apache Spark</a></li><li><a href='./reading-and-writing-csv-files'>Reading and Writing CSV files with Groovy</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./matrix-calculations-with-groovy-apache'>Matrix calculations with Groovy, Apache Commons Math, ojAlgo, Nd4j and EJML</a></li><li><a href='./detecting-objects-with-groovy-the'>Detecting objects with Groovy, the Deep Java Library (DJL), and Apache MXNet</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Whiskey Clustering with Groovy and Apache Ignite</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-10-27 11:13AM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>In a previous <a href="https://groovy.apache.org/blog/using-groovy-with-apache-wayang">blog post</a>,
diff --git a/blog/wordle-checker.html b/blog/wordle-checker.html
index 3de2993..712dc42 100644
--- a/blog/wordle-checker.html
+++ b/blog/wordle-checker.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Checking Wordle with Groovy</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Checking Wordle with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-02-08 12:00AM</span></p><hr/><div class="paragraph">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Checking Wordle with Groovy</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./zipping-collections-with-groovy'>Zipping Collections with Groovy</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Checking Wordle with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2023-02-08 12:00AM</span></p><hr/><div class="paragraph">
 <p>This <a href="https://donraab.medium.com/comparing-my-smalltalk-and-eclipse-collections-wordle-kata-solutions-4058ac7d8ca0">article</a> by <a href="https://twitter.com/TheDonRaab">Donald Raab</a>
 looks at writing a Wordle checker in Smalltalk and Java using <a href="https://github.com/eclipse/eclipse-collections">Eclipse Collections</a>. Let&#8217;s look at doing the same in Groovy.
 We could easily use Eclipse Collections with Groovy
diff --git a/blog/working-with-sql-databases-with.html b/blog/working-with-sql-databases-with.html
index 0cd9c4e..6b1c432 100644
--- a/blog/working-with-sql-databases-with.html
+++ b/blog/working-with-sql-databases-with.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='#_native_metadata' class='anchor-link'>Native Metadata</a></li><li><a href='#_working_with_sql_in_groovy' class='anchor-link'>Working with SQL in Groovy</a></li><li><a href='#_configuring_our_native_build' class='anchor-link'>Configuring our native build</a></li><li><a href='#_checking_the_native_image_speed' class='anchor-link'>Checking the native image speed</a></li><li><a href='#_more_information' class='anchor-link'>More information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Working with SQL databases with Groovy and GraalVM</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-29 02:07PM</span></p><hr/><div id="preamble">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Working with SQL databases with Groovy and GraalVM</a></li><li><a href='#_native_metadata' class='anchor-link'>Native Metadata</a></li><li><a href='#_working_with_sql_in_groovy' class='anchor-link'>Working with SQL in Groovy</a></li><li><a href='#_configuring_our_native_build' class='anchor-link'>Configuring our native build</a></li><li><a href='#_checking_the_native_image_speed' class='anchor-link'>Checking the native image speed</a></li><li><a href='#_more_information' class='anchor-link'>More information</a></li><li><a href='#_conclusion' class='anchor-link'>Conclusion</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./classifying-iris-flowers-with-deep'>Classifying Iris Flowers with Deep Learning, Groovy and GraalVM</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Working with SQL databases with Groovy and GraalVM</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-07-29 02:07PM</span></p><hr/><div id="preamble">
 <div class="sectionbody">
 <div class="paragraph">
 <p>During the week, there was an interesting
diff --git a/blog/zipping-collections-with-groovy.html b/blog/zipping-collections-with-groovy.html
index 41c9afa..d322d7a 100644
--- a/blog/zipping-collections-with-groovy.html
+++ b/blog/zipping-collections-with-groovy.html
@@ -53,7 +53,7 @@
                                     </ul>
                                 </div>
                             </div>
-                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Zipping Collections with Groovy</a></li><li><a href='#_what_is_zipping' class='anchor-link'>What is zipping?</a></li><li><a href='#_groovy' class='anchor-link'>Groovy</a></li><li><a href='#_eclipse_collections' class='anchor-link'>Eclipse Collections</a></li><li><a href='#_guava' class='anchor-link'>Guava</a></li><li><a href='#_streamex' class='anchor-link'>StreamEx</a></li><li><a href='#_vavr' class='anchor-link'>Vavr</a></li><li><a href='#_jooλ' class='anchor-link'>jOOλ</a></li><li><a href='#_groovy_gquery' class='anchor-link'>Groovy GQuery</a></li><li><a href='#_more_information' class='anchor-link'>More information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Zipping Collections with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-11-17 12:50PM</span></p><hr/><div class="sect1">
+                        </div><div id='content' class='page-1'><div class='row'><div class='row-fluid'><div class='col-lg-3'><ul class='nav-sidebar'><li><a href='./'>Blog index</a></li><li class='active'><a href='#doc'>Zipping Collections with Groovy</a></li><li><a href='#_what_is_zipping' class='anchor-link'>What is zipping?</a></li><li><a href='#_groovy' class='anchor-link'>Groovy</a></li><li><a href='#_eclipse_collections' class='anchor-link'>Eclipse Collections</a></li><li><a href='#_guava' class='anchor-link'>Guava</a></li><li><a href='#_streamex' class='anchor-link'>StreamEx</a></li><li><a href='#_vavr' class='anchor-link'>Vavr</a></li><li><a href='#_jooλ' class='anchor-link'>jOOλ</a></li><li><a href='#_groovy_gquery' class='anchor-link'>Groovy GQuery</a></li><li><a href='#_more_information' class='anchor-link'>More information</a></li></ul><br/><ul class='nav-sidebar'><li style='padding: 0.35em 0.625em; background-color: #eee'><span>Related posts</span></li><li><a href='./groovy-list-processing-cheat-sheet'>Groovy List Processing Cheat Sheet</a></li><li><a href='./groovy-null-processing'>Groovy Processing Nulls In Lists</a></li><li><a href='./groovy-dauphine'>Processing Results for the Critérium du Dauphiné</a></li><li><a href='./deep-learning-and-eclipse-collections'>Deep Learning and Eclipse Collections</a></li><li><a href='./fruity-eclipse-collections'>Fruity Eclipse Collections</a></li><li><a href='./wordle-checker'>Checking Wordle with Groovy</a></li><li><a href='./parsing-json-with-groovy'>Parsing JSON with Groovy</a></li><li><a href='./comparators-and-sorting-in-groovy'>Comparators and Sorting in Groovy</a></li><li><a href='./lego-bricks-with-groovy'>Lego Bricks with Groovy</a></li><li><a href='./helloworldemoji'>Hello World with Emojis</a></li><li><a href='./deck-of-cards-with-groovy'>Deck of cards with Groovy, JDK collections and Eclipse Collections</a></li><li><a href='./adventures-with-groovyfx'>Adventures with GroovyFX</a></li><li><a href='./groovy-sequenced-collections'>Groovy and Sequenced Collections (JEP-431)</a></li><li><a href='./groovy-haiku-processing'>Groovy Haiku processing</a></li><li><a href='./set-operations-with-groovy'>Set Operators with Groovy</a></li><li><a href='./seasons-greetings-emoji'>Season&#8217;s Greetings with Emojis</a></li></ul></div><div class='col-lg-8 col-lg-pull-0'><a name='doc'></a><h1>Zipping Collections with Groovy</h1><p><span>Author: <i>Paul King</i></span><br/><span>Published: 2022-11-17 12:50PM</span></p><hr/><div class="sect1">
 <h2 id="_what_is_zipping">What is zipping?</h2>
 <div class="sectionbody">
 <div class="paragraph">