diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -5,6 +5,12 @@
 ## Unreleased changes
 
 
+## Version 0.9.0.0
+
+-   Toolchain update
+-   Update to random version 1.3
+
+
 ## Version 0.8.0.0
 
 -   Adapt to breaking changes in upstream libraries (`data-default`).
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
 
 # The ELynx Suite
 
-Version: 0.8.0.0.
+Version: 0.9.0.0.
 Reproducible evolution made easy.
 
 <p align="center"><img src="https://travis-ci.org/dschrempf/elynx.svg?branch=master"/></p>
@@ -73,9 +73,9 @@
     # OR: stack exec slynx -- --help
     # OR: slynx --help
 
-    ELynx Suite version 0.8.0.0.
+    ELynx Suite version 0.9.0.0.
     Developed by Dominik Schrempf.
-    Compiled on October 27, 2024, at 07:14 am, UTC.
+    Compiled on August 11, 2025, at 07:19 am, UTC.
     
     Usage: slynx [-v|--verbosity VALUE] [-o|--output-file-basename NAME]
                  [-f|--force] [--no-elynx-file] COMMAND
@@ -143,9 +143,9 @@
     # OR: stack exec slynx -- simulate --help
     # OR: slynx simulate --help
 
-    ELynx Suite version 0.8.0.0.
+    ELynx Suite version 0.9.0.0.
     Developed by Dominik Schrempf.
-    Compiled on October 27, 2024, at 07:14 am, UTC.
+    Compiled on August 11, 2025, at 07:19 am, UTC.
     
     Usage: slynx simulate (-t|--tree-file Name) [-s|--substitution-model MODEL]
                           [-m|--mixture-model MODEL] [-n|--global-normalization]
diff --git a/slynx.cabal b/slynx.cabal
--- a/slynx.cabal
+++ b/slynx.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               slynx
-version:            0.8.0.0
+version:            0.9.0.0
 synopsis:           Handle molecular sequences
 description:
   Examine, modify, and simulate molecular sequences in a reproducible way. Please see the README on GitHub at <https://github.com/dschrempf/elynx>.
diff --git a/src/SLynx/Examine/Examine.hs b/src/SLynx/Examine/Examine.hs
--- a/src/SLynx/Examine/Examine.hs
+++ b/src/SLynx/Examine/Examine.hs
@@ -127,9 +127,9 @@
     pairwiseHamming =
       V.fromList
         [ either error normlz $ D.hamming x y
-          | x <- seqs,
-            y <- seqs,
-            x /= y
+        | x <- seqs,
+          y <- seqs,
+          x /= y
         ]
     (hMean, hVar) = Sm.meanVariance pairwiseHamming
     hMin = V.minimum pairwiseHamming
diff --git a/src/SLynx/Simulate/Simulate.hs b/src/SLynx/Simulate/Simulate.hs
--- a/src/SLynx/Simulate/Simulate.hs
+++ b/src/SLynx/Simulate/Simulate.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE OverloadedStrings #-}
 
 -- |
@@ -90,7 +91,7 @@
 -- Simulate a 'Alignment' for a given phylogenetic model,
 -- phylogenetic tree, and alignment length.
 simulateAlignment ::
-  (RandomGen g, HasLength e, HasName a) =>
+  (SplitGen g, HasLength e, HasName a) =>
   MP.PhyloModel ->
   Tree e a ->
   Int ->
@@ -119,7 +120,7 @@
       alph = A.all $ alphabetSpec code
       sequences =
         [ Seq.Sequence (fromName sName) "" code (U.fromList $ map (`Set.elemAt` alph) ss)
-          | (sName, ss) <- zip leafNames leafStates
+        | (sName, ss) <- zip leafNames leafStates
         ]
       output = sequencesToFasta sequences
   logInfoS ""
@@ -225,7 +226,7 @@
         then
           concat
             [ BL.pack ("Component " ++ show i ++ ":") : summarizeMMComponent c
-              | (i, c) <- zip [1 :: Int ..] (V.toList $ MM.components m)
+            | (i, c) <- zip [1 :: Int ..] (V.toList $ MM.components m)
             ]
         else []
 
