diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,3 +19,8 @@
 ## 0.2.1.0 -- 2021-03-02
 
 * Second version revised A. Fixed some issues with functions in the Composition.Sound.Elements module.
+
+## 0.2.2.0 -- 2021-03-02
+
+* Second version revised B. Fixed issue with being not imported iterate' from GHC.List for lower than 8.6 versions
+of GHC. 
diff --git a/Composition/Sound/Functional/Basics.hs b/Composition/Sound/Functional/Basics.hs
--- a/Composition/Sound/Functional/Basics.hs
+++ b/Composition/Sound/Functional/Basics.hs
@@ -10,6 +10,7 @@
 -- dobutokO2 and uses its functionality.
 
 {-# LANGUAGE BangPatterns #-}
+{-# OPTIONS_HADDOCK show-extensions #-}
 {-# OPTIONS_GHC -threaded #-}
 
 module Composition.Sound.Functional.Basics (
@@ -63,7 +64,6 @@
   , adjust_dbVol
 ) where
 
-import GHC.List (iterate')
 import CaseBi.Arr (getBFstLSorted')
 import Data.Char (isDigit)
 import System.Exit (ExitCode( ExitSuccess ))
@@ -321,13 +321,13 @@
         LT -> let z  = logBase 2.0 (unsafeAt notes (n * ku) / closestNote x)
                   z1 = truncate z in
                    if abs (z - fromIntegral z1) > 0.999 || abs (z - fromIntegral z1) < 0.001
-                     then Just (last . take  (fromIntegral z1 + 1) . iterate' (enkuUp ku) $ closestNote x)
-                     else Just (last . take  (fromIntegral z1 + 2) . iterate' (enkuUp ku) $ closestNote x)
+                     then Just (last . take  (fromIntegral z1 + 1) . iterate (enkuUp ku) $ closestNote x)
+                     else Just (last . take  (fromIntegral z1 + 2) . iterate (enkuUp ku) $ closestNote x)
         _  -> let z  = logBase 2.0 (closestNote x / unsafeAt notes (n * ku))
                   z1 = truncate z in
                    if abs (z - fromIntegral z1) > 0.999 || abs (z - fromIntegral z1) < 0.001
-                     then Just (last . take (fromIntegral z1 + 2) . iterate' (enkuDown ku) $ closestNote x)
-                     else Just (last . take (fromIntegral z1 + 1) . iterate' (enkuDown ku) $ closestNote x)
+                     then Just (last . take (fromIntegral z1 + 2) . iterate (enkuDown ku) $ closestNote x)
+                     else Just (last . take (fromIntegral z1 + 1) . iterate (enkuDown ku) $ closestNote x)
   | otherwise = Nothing
 
 -- | Similarly to 'whichOctave' returns a 'Maybe' number for the n-th elements set of notes (see 'nkyT').
diff --git a/algorithmic-composition-basic.cabal b/algorithmic-composition-basic.cabal
--- a/algorithmic-composition-basic.cabal
+++ b/algorithmic-composition-basic.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                algorithmic-composition-basic
-version:             0.2.1.0
+version:             0.2.2.0
 synopsis:            Helps to create experimental music from a file (or its part) and a Ukrainian text.
 description:         It can also generate a timbre for the notes. Uses SoX inside.
 homepage:            https://hackage.haskell.org/package/algorithmic-composition-basic
@@ -19,7 +19,7 @@
 library
   exposed-modules:     Composition.Sound.IntermediateF, Composition.Sound.Keyboard, Composition.Sound.Functional.Basics, Composition.Sound.Functional.Params, Composition.Sound.Functional.Elements
   -- other-modules:
-  -- other-extensions:
+  other-extensions:    BangPatterns
   build-depends:       base >=4.8 && <4.15, bytestring >= 0.10.6 && <1, process >=1.4 && <1.9, mmsyn3 >=0.1.5 && <1,  directory >=1.2.7 && <1.7, mmsyn7ukr-common >=0.1.1 && <1, mmsyn2-array >=0.1.1 && <1, ukrainian-phonetics-basic-array >=0.1.2 && <1, mmsyn7l >=0.9 && <1, phonetic-languages-simplified-base >=0.2 && <1, foldable-ix >=0.2 && <1
   -- hs-source-dirs:
   default-language:    Haskell2010
