diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -29,3 +29,7 @@
 
 * Third version. Changed behaviour of the program so that it now only creates a "voice". It allows to use additional executable mmsyn7h afterwards from the package with the same name. 
 The latter is very close to mmsyn6ukr but uses the data files in the directory where it is running instead of defined by the standard for Paths_mmsyn6ukr.
+
+## 0.3.0.1 -- 2019-12-25
+
+* Third version revised A. Changed some documentation and text messages to more consistent ones.
diff --git a/Main.hs b/Main.hs
--- a/Main.hs
+++ b/Main.hs
@@ -27,22 +27,27 @@
 -- 
 main :: IO ()
 main = do
-  putStrLn "        ***** CAUTION! *****"
+  putStrLn "     ***** CAUTION! *****"
   putStrLn ""
   putStrLn "\"The possession of great power necessarily implies great responsibility.\""
   putStrLn ""
   putStrLn "                                            (William Lamb)"
   putStrLn ""
-  putStr "The program mmsyn7ukr produces the close to proper Ukrainian "
-  putStr "speech (if you correctly pronounce the sounds) with your own "
-  putStr "recorded voice. It approximates your voice with a sequence "
+  putStr "The program mmsyn7ukr produces the \"voice\" represented as an ordered "
+  putStr "set of sounds each of which corresponds (represents) one of the "
+  putStr "Ukrainian sounds so that using them together by mmsyn7h program "
+  putStr "(https://hackage.haskell.org/package/mmsyn7h) can be a background "
+  putStr "for sound synthesis. If you pronounce sounds as the appropriate "
+  putStr "Ukrainian ones, close to proper Ukrainian speech with your own "
+  putStr "voice. This program approximates your voice with a sequence "
   putStr "of recorded separate sounds with your control over the "
   putStr "duration of the sounds. They are then precessed by the SoX "
   putStr "binaries already installed in the system to produce the "
   putStr "needed sounds and then you can pronounce some Ukrainian text "
-  putStr "with your recorded \"voice\". Nevertheless, you can substitute "
-  putStr "whatever sounds you like (consider being sensible) instead of "
-  putStrLn "your own voice."
+  putStr "with your recorded \"voice\" using mmsyn7h program. In-between "
+  putStr "you can do some additional processing as you need. Moreover, "
+  putStr "you can substitute whatever sounds you like (consider being "
+  putStrLn "sensible) instead of your own voice."
   putStrLn ""
   putStr "Be aware that if somebody can get access to the sounds of "
   putStr "your voice or to the recorded speech (except you) then this "
diff --git a/Processing_mmsyn7ukr.hs b/Processing_mmsyn7ukr.hs
--- a/Processing_mmsyn7ukr.hs
+++ b/Processing_mmsyn7ukr.hs
@@ -45,9 +45,9 @@
   putStrLn $ showFFloat Nothing duration0 $ show 0
   putStrLn ""
   putStrLn "It means that to produce more than 3 seconds of recording, you must specify at least "
-  putStrLn $ "        " ++ show (3.0/(7*duration0)) ++ " as a next step ratio being prompt "
-  putStrLn "      OR "
-  putStrLn $ "                " ++ show (1.0/(7*duration0)) ++ " per one second but not less than the previous number."
+  putStrLn $ "   " ++ show (3.0/(7*duration0)) ++ " as a next step ratio being prompt "
+  putStrLn "   OR "
+  putStrLn $ "   " ++ show (1.0/(7*duration0)) ++ " per one second but not less than the previous number."
   putStrLn $ "For example for 10 seconds record, please, specify " ++ show (10.0/(7*duration0)) ++ " as a next step ratio."
   longerK0 <- tempS soundUkr
   (_, Just hout, _, _) <- createProcess (proc (fromJust . showE $ "soxi") ["-D", file]) { std_out = CreatePipe }
@@ -55,7 +55,7 @@
   let longerK = (read x3::Double)*longerK0
   putStrLn "Please, wait for 0.5 second and pronounce the sound representation for the "
   putStrLn ""
-  putStrLn $ "                             \"" ++ (if soundUkr /= "ь" then map toUpper soundUkr else soundUkr) ++ "\""
+  putStrLn $ "                     \"" ++ (if soundUkr /= "ь" then map toUpper soundUkr else soundUkr) ++ "\""
   putStrLn ""
   putStrLn " sound or whatever you would like to be substituted instead (be sensible, please)! "
   if (compare (7*longerK) 3.0 == LT)
@@ -94,9 +94,9 @@
   putStrLn $ showFFloat Nothing duration0 $ show 0
   putStrLn ""
   putStrLn "It means that to produce more than 3 seconds of recording, you must specify at least "
-  putStrLn $ "        " ++ show (3.0/(7*duration0)) ++ " as a next step ratio being prompt "
-  putStrLn "      OR "
-  putStrLn $ "                " ++ show (1.0/(7*duration0)) ++ " per one second but not less than the previous number."
+  putStrLn $ "   " ++ show (3.0/(7*duration0)) ++ " as a next step ratio being prompt "
+  putStrLn "   OR "
+  putStrLn $ "   " ++ show (1.0/(7*duration0)) ++ " per one second but not less than the previous number."
   putStrLn $ "For example for 10 seconds record, please, specify " ++ show (10.0/(7*duration0)) ++ " as a next step ratio."
   longerK0 <- tempS soundUkr
   (_, Just hout, _, _) <- createProcess (proc (fromJust . showE $ "soxi") ["-D", file]) { std_out = CreatePipe }
@@ -104,9 +104,9 @@
   let longerK = (read x3::Double)*longerK0
   putStrLn "Please, wait for 0.5 second and pronounce the sound representation for the "
   putStrLn ""
-  putStrLn $ "                             \"" ++ (if soundUkr /= "ь" then map toUpper soundUkr else soundUkr) ++ "\""
+  putStrLn $ "                     \"" ++ (if soundUkr /= "ь" then map toUpper soundUkr else soundUkr) ++ "\""
   putStrLn ""
-  putStrLn " sound or whatever you would like to be substituted instead (be sensible, please)! "
+  putStrLn "sound or whatever you would like to be substituted instead (be sensible, please)! "
   if (compare (7*longerK) 3.0 == LT)
     then recA "x.wav" (7*longerK)
     else recA "x.wav" 3.0
diff --git a/README b/README
--- a/README
+++ b/README
@@ -11,8 +11,8 @@
 newly created "voice". During the execution of the last one
 you can choose whether to remove (clean) 
 all the created sound files in the current directory for 
-security reasons. If the programs terminate by interruption or in 
-general it is a good practice to remove the current 
+security reasons. If the programs terminate by interruption (or 
+generally) it is a good practice to remove the current 
 directory sound files manually.
 
         ***** CAUTION! *****
@@ -21,14 +21,19 @@
 
                                             (William Lamb)
 
-The program mmsyn7ukr produces the close to proper Ukrainian 
-speech (if you correctly pronounce the sounds) with your own 
-recorded voice. It approximates your voice with a sequence 
+The program mmsyn7ukr produces the "voice" represented as an ordered 
+set of sounds each of which corresponds (represents) one of the 
+Ukrainian sounds so that using them together by mmsyn7h program 
+(https://hackage.haskell.org/package/mmsyn7h) can be a background 
+for sound synthesis. If you pronounce sounds as the appropriate 
+Ukrainian ones, close to proper Ukrainian speech with your own 
+voice. This program approximates your voice with a sequence 
 of recorded separate sounds with your control over the 
 duration of the sounds. They are then precessed by the SoX 
 binaries already installed in the system to produce the 
 needed sounds and then you can pronounce some Ukrainian text 
-with your recorded "voice" using mmsyn7h program. Nevertheless, 
+with your recorded "voice" using mmsyn7h program. In-between 
+you can do some additional processing as you need. Moreover, 
 you can substitute whatever sounds you like (consider being 
 sensible) instead of your own voice.
 
diff --git a/mmsyn7ukr.cabal b/mmsyn7ukr.cabal
--- a/mmsyn7ukr.cabal
+++ b/mmsyn7ukr.cabal
@@ -2,9 +2,9 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                mmsyn7ukr
-version:             0.3.0.0
+version:             0.3.0.1
 synopsis:            A simple basic interface to some SoX functionality or to produce a voice that can be used by mmsyn7h
-description:         A program and a library that can be used as a simple basic interface to some SoX functionality or to produce a close to the proper Ukrainian sounds for speech (if you pronounce them properly) with your own recorded voice.
+description:         A program and a library that can be used as a simple basic interface to some SoX functionality or to produce your voice in Ukrainian (if you pronounce the sounds properly) represented by the separate sounds or something special like soft sign.
 homepage:            https://hackage.haskell.org/package/mmsyn7ukr
 license:             MIT
 license-file:        LICENSE
@@ -20,7 +20,7 @@
   exposed-modules:     SoXBasics, Processing_mmsyn7ukr, Main
   -- other-modules:
   -- other-extensions:
-  build-depends:       base >=4.7 && <4.14, process >=1.4 && <1.8, vector >=0.11 && <0.14, bytestring >=0.10 && < 0.12, mmsyn2 >=0.1.7 && <1, directory >=1.2.5 && <1.4, mmsyn6ukr >=0.6.1 && <1, mmsyn3 >=0.1.4 && <1
+  build-depends:       base >=4.7 && <4.14, process >=1.4 && <1.8, vector >=0.11 && <0.14, bytestring >=0.10 && < 0.12, mmsyn2 >=0.1.7 && <1, directory >=1.2.5 && <1.4, mmsyn6ukr >=0.6.2 && <1, mmsyn3 >=0.1.4 && <1
   -- hs-source-dirs:
   default-language:    Haskell2010
 
@@ -28,7 +28,7 @@
   main-is:             Main.hs
   -- other-modules:
   -- other-extensions:
-  build-depends:       base >=4.7 && <4.14, process >=1.4 && <1.8, vector >=0.11 && <0.14, bytestring >=0.10 && < 0.12, mmsyn2 >=0.1.7 && <1, directory >=1.2.5 && <1.4, mmsyn6ukr >=0.6.1 && <1, mmsyn3 >=0.1.4 && <1
+  build-depends:       base >=4.7 && <4.14, process >=1.4 && <1.8, vector >=0.11 && <0.14, bytestring >=0.10 && < 0.12, mmsyn2 >=0.1.7 && <1, directory >=1.2.5 && <1.4, mmsyn6ukr >=0.6.2 && <1, mmsyn3 >=0.1.4 && <1
   -- hs-source-dirs:
   default-language:    Haskell2010
 
