diff --git a/src/Cluster.hs b/src/Cluster.hs
index c4a83f2bb2401c6037f252df288ce2ada3a482d7..b3ce190d140de253ef5ccd01bb82541b2c41a4ca 100644
--- a/src/Cluster.hs
+++ b/src/Cluster.hs
@@ -613,19 +613,19 @@ fixNodes :: [(Int, Node.Node)]
          -> [(Int, Instance.Instance)]
          -> [(Int, Node.Node)]
 fixNodes nl il =
-    foldl (\accu (idx, inst) ->
-               let
-                   assocEqual = (\ (i, _) (j, _) -> i == j)
-                   pdx = Instance.pnode inst
-                   sdx = Instance.snode inst
-                   pold = fromJust $ lookup pdx accu
-                   sold = fromJust $ lookup sdx accu
-                   pnew = Node.setPri pold idx
-                   snew = Node.setSec sold idx
-                   ac1 = deleteBy assocEqual (pdx, pold) accu
-                   ac2 = deleteBy assocEqual (sdx, sold) ac1
-                   ac3 = (pdx, pnew):(sdx, snew):ac2
-               in ac3) nl il
+    foldl' (\accu (idx, inst) ->
+                let
+                    assocEqual = (\ (i, _) (j, _) -> i == j)
+                    pdx = Instance.pnode inst
+                    sdx = Instance.snode inst
+                    pold = fromJust $ lookup pdx accu
+                    sold = fromJust $ lookup sdx accu
+                    pnew = Node.setPri pold idx
+                    snew = Node.setSec sold idx
+                    ac1 = deleteBy assocEqual (pdx, pold) accu
+                    ac2 = deleteBy assocEqual (sdx, sold) ac1
+                    ac3 = (pdx, pnew):(sdx, snew):ac2
+                in ac3) nl il
 
 
 {-| Initializer function that loads the data from a node and list file