diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -116,3 +116,10 @@
 
 * The tenth version revised. Fixed issues with the custom user defined polyrhythmicity patterns. Changed the
 documentation instructions in editor. Updated the dependency boundaries accordingly.
+
+## 0.11.0.0 -- 2021-09-04
+
+* The eleventh version. Added new mode of multiple sources processment (+t_ ... -t). Added the possibility to
+count in the recursive mode not just from the beginning of the word concatenation but also from the end using
+the commonly used programming pattern of the negative integer indexing. Updated the dependencies so that now
+it can use multiple improvements of the dependencies. Some documentation improvements.
diff --git a/Phonetic/Languages/Simple.hs b/Phonetic/Languages/Simple.hs
--- a/Phonetic/Languages/Simple.hs
+++ b/Phonetic/Languages/Simple.hs
@@ -14,6 +14,7 @@
 
 module Phonetic.Languages.Simple where
 
+import CaseBi.Arr (getBFstL')
 import Phonetic.Languages.Parsing
 import Numeric
 import Languages.UniquenessPeriods.Array.Constraints.Encoded (decodeLConstraints,readMaybeECG)
@@ -33,7 +34,9 @@
 import Phonetic.Languages.Simplified.DeEnCoding
 import Phonetic.Languages.Simplified.SimpleConstraints
 import Phonetic.Languages.Common
-import Interpreter.StringConversion (convStringInterpreter)
+import Interpreter.StringConversion
+import Data.Monoid (mappend)
+import Phonetic.Languages.Ukrainian.PrepareText (prepareGrowTextMN, prepareTuneTextMN,isSpC,isUkrainianL)
 
 forMultiplePropertiesF :: [String] -> [(String,[String])]
 forMultiplePropertiesF (xs:xss)
@@ -43,6 +46,65 @@
            (yss,zss) = splitAt l xss
 forMultiplePropertiesF _ = []
 
+{-| Is used to organize the most complex processment -- for multiple sources and probably recursively.
+-}
+generalProc3G
+ :: [String]
+ -> String -- ^ If empty, the function is just 'generalProc2G' with the arguments starting from the first 'Bool' here.
+ -> Int
+ -> Bool
+ -> Bool
+ -> FilePath
+ -> Bool
+ -> Bool
+ -> [String]
+ -> Coeffs2
+ -> Coeffs2
+ -> [String]
+ -> Bool
+ -> IO ()
+generalProc3G textProcessmentFss textProcessment0 textProcessment1 recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0 args0 coeffs coeffsWX args lstW
+ | null textProcessment0 = generalProc2G recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0 args0 coeffs coeffsWX args lstW
+ | null textProcessmentFss = mapM_ (\_ -> do  -- interactive training mode
+    putStrLn . messageInfo 7 $ nativeUkrainian
+    lineA <- getLine
+    generalProc2G recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0 (fullArgsConvertTextualSimple mightNotUkrWord lineA args0) coeffs coeffsWX (fullArgsConvertTextualSimple mightNotUkrWord lineA args) lstW) [0..]
+ | textProcessment1 `elem` [21,31,41,51,61,71] =
+    mapM_ (mapM_ (\tss -> generalProc2G recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0
+                  (fullArgsConvertTextualSimple mightNotUkrWord tss args0) coeffs coeffsWX
+                  (fullArgsConvertTextualSimple mightNotUkrWord tss args) lstW) .
+                  prepareTuneTextMN m 1 . unwords . lines) textProcessmentFss
+ | textProcessment1 `elem` [20,30,40,50,60,70] =
+    mapM_ (mapM_ (\tss -> generalProc2G recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0
+                  (fullArgsConvertTextualSimple mightNotUkrWord tss args0) coeffs coeffsWX
+                  (fullArgsConvertTextualSimple mightNotUkrWord tss args) lstW) . lines) textProcessmentFss
+ | otherwise =
+    mapM_ (mapM_ (\tss -> generalProc2G recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0
+                  (fullArgsConvertTextualSimple mightNotUkrWord tss args0) coeffs coeffsWX
+                  (fullArgsConvertTextualSimple mightNotUkrWord tss args) lstW) .
+                  prepareTuneTextMN 7 1 . unwords . lines) textProcessmentFss
+        where m = quot textProcessment1 10
+
+{-| If 'False' then it might be the Ukrainian word in the phonetic languages approach. If 'True', it is not.
+Is an example of the predicate inside the 'fullArgsConvertTextual' function for the Ukrainian language.
+-}
+mightNotUkrWord :: String -> Bool
+mightNotUkrWord xs
+ | null ts || ts == "-" = True
+ | any isAlpha us = True
+ | null (dropWhile (not . isUkrainianN) us) = False
+ | otherwise = True
+     where (ts,us) = L.span isUkrainianN xs
+{-# INLINE mightNotUkrWord #-}
+
+-- | Is taken from the @mmsyn6ukr@ package version 0.8.1.0 so that the amount of dependencies are reduced (and was slightly modified).
+{-isUkrainianL :: Char -> Bool
+isUkrainianL y | (y >= '\1040' && y <= '\1065') || (y >= '\1070' && y <= '\1097') = True
+               | otherwise = getBFstL' False (map (\x -> (x, True)) $ "\1028\1030\1031\1068\1100\1102\1103\1108\1110\1111\1168\1169\8217") y
+               -}
+
+isUkrainianN x = isUkrainianL x || isSpC x
+
 {-|
 @ since 0.3.0.0
 Is used to do general processment.
@@ -80,7 +142,8 @@
       case toFile1 of
        "" -> return ()
        ~fileName -> appendFile fileName (rs `mappend` newLineEnding)
- | otherwise = generalProc2 recursiveMode nativeUkrainian interactive jstL0 args0 coeffs coeffsWX args lstW2 >>= \rs ->
+ | otherwise = generalProc2 recursiveMode nativeUkrainian interactive jstL0 args0 coeffs coeffsWX args lstW2 >>=
+    \rs ->
       case toFile1 of
        "" -> return ()
        ~fileName -> appendFile fileName (rs `mappend` newLineEnding)
@@ -99,20 +162,26 @@
  -> Bool
  -> IO String
 generalProc2 recursiveMode nativeUkrainian interactive jstL0 args0 coeffs coeffsWX args lstW2 = do
-  let !argMss = take 5 . filter (not . null) . forMultiplePropertiesF . drop 1 . dropWhile (/= "+m") . takeWhile (/= "-m") $ args0
+  let !argMss = take 5 . filter (not . null) . forMultiplePropertiesF . drop 1 . dropWhile (/= "+m") .
+        takeWhile (/= "-m") $ args0
   if null argMss then do
    let (!numericArgs,!textualArgs) = L.span (all isDigit) $ args
        !xs = concat . take 1 . fLines 0 . unwords . drop 1 $ textualArgs
        !l = length . words $ xs
-       !argCs = catMaybes (fmap (readMaybeECG (l - 1)) . (showB l lstW2:) . drop 1 . dropWhile (/= "+a") . takeWhile (/= "-a") $ args0)
+       !argCs = catMaybes (fmap (readMaybeECG (l - 1)) . (showB l lstW2:) . drop 1 . dropWhile (/= "+a") .
+                  takeWhile (/= "-a") $ args0)
        !arg0 = fromMaybe 1 $ (readMaybe (concat . take 1 $ numericArgs)::Maybe Int)
        !numberI = fromMaybe 1 $ (readMaybe (concat . drop 1 . take 2 $ numericArgs)::Maybe Int)
        !choice = concat . take 1 $ textualArgs
        !intervalNmbrs = (\zs -> if null zs then [numberI] else L.nub zs) . L.sort . filter (<= numberI) .
            map (\t -> fromMaybe numberI $ (readMaybe t::Maybe Int)) . drop 2 $ numericArgs
-   if compare l 2 == LT then let !frep20 = if take 1 choice == "x" || take 1 choice == "w" then chooseMax id coeffsWX choice else chooseMax id coeffs choice in let !wwss = (:[]) . toResultR frep20 $ xs in
-    if recursiveMode then interactivePrintResultRecursive recursiveMode nativeUkrainian interactive jstL0 args0 coeffs coeffsWX line wwss args lstW2
-    else if interactive then interactivePrintResult nativeUkrainian line wwss else print1el jstL0 choice wwss
+   if compare l 2 == LT then let !frep20
+                                    | take 1 choice == "x" || take 1 choice == "w" = chooseMax id coeffsWX choice
+                                    | otherwise = chooseMax id coeffs choice
+                                 !wwss = (:[]) . toResultR frep20 $ xs in
+    case recursiveMode of
+      True -> interactivePrintResultRecursive recursiveMode nativeUkrainian interactive jstL0 args0 coeffs coeffsWX line wwss args lstW2
+      _ -> if interactive then interactivePrintResult nativeUkrainian line wwss else print1el jstL0 choice wwss
    else do
     let !subs = subG " 01-" xs
     if null argCs then let !perms = genPermutationsL l in do
@@ -137,11 +206,13 @@
        !argsZipped = L.zip4 intervalNmbrss arg0s numberIs choices
        !xs = concat . take 1 . fLines 0 . unwords $ args
        !l = length . words $ xs
-       !argCs = catMaybes (fmap (readMaybeECG (l - 1)) . (showB l lstW2:) . drop 1 . dropWhile (/= "+a") . takeWhile (/= "-a") $ args0)
+       !argCs = catMaybes (fmap (readMaybeECG (l - 1)) . (showB l lstW2:) . drop 1 . dropWhile (/= "+a") .
+                  takeWhile (/= "-a") $ args0)
    if compare l 2 == LT then let !frep20 = chooseMax id coeffs (concat . take 1 $ choices)
-    in let !wwss = (:[]) . toResultR frep20 $ xs in
-         if recursiveMode then interactivePrintResultRecursive recursiveMode nativeUkrainian interactive jstL0 args0 coeffs coeffsWX line wwss args lstW2
-         else if interactive then interactivePrintResult nativeUkrainian line wwss else print1el jstL0 (concat . take 1 $ choices) wwss
+                                 !wwss = (:[]) . toResultR frep20 $ xs in
+     case recursiveMode of
+       True -> interactivePrintResultRecursive recursiveMode nativeUkrainian interactive jstL0 args0 coeffs coeffsWX line wwss args lstW2
+       _ -> if interactive then interactivePrintResult nativeUkrainian line wwss else print1el jstL0 (concat . take 1 $ choices) wwss
    else do
     let !subs = subG " 01-" xs
     if null argCs then let !perms = genPermutationsL l in
@@ -163,6 +234,7 @@
  | n == 4 = "Було задано недостатньо інформації для продовження обчислювального процесу "
  | n == 5 = "(/ Ви вказали властивості(ість) та діапазон(и) для них такі, що для даних слів та їх сполучень варіантів немає. Спробуйте змінити параметри виклику програми (бібліотеки) /)"
  | n == 6 = "Якщо бажаєте запустити програму (функцію) рекурсивно, змінюючи сполучення слів та букв, введіть тут закодований рядок інтерпретатора. Якщо бажаєте не використовувати програму (функцію) рекурсивно, просто натисніть Enter. "
+ | n == 7 = "Введіть, будь ласка, рядок слів для аналізу. "
  | otherwise = "Ви вказали лише один варіант властивостей. "
 messageInfo n False
  | n == 1 = "You stopped the program, please, if needed, run it again with better arguments. "
@@ -171,6 +243,7 @@
  | n == 4 = "No data has been specified to control the computation process. "
  | n == 5 = "(/ You have specified properties / property and the range(s) so that for the words and their concatenations there are no variants available. Try to change the call parameters /)"
  | n == 6 = "If you would like to run the program (call the function) recursively with changes for the words or letter connections then, please, enter here the encoded string of the interpreter. If you would NOT like to use it recursively, then just press Enter."
+ | n == 7 = "Please, input the text line for analysis. "
  | otherwise = "You have specified just one variant of the properties. "
 
 -- |
diff --git a/README b/README
--- a/README
+++ b/README
@@ -2,19 +2,19 @@
 of the package phonetic-languages-simplified-examples-array
 in Ukrainian is here:
 
-https://web.archive.org/web/20210824201532/https://oleksandrzhabenko.github.io/uk/InstructionUkr.pdf
+https://web.archive.org/web/20210904195039/https://oleksandrzhabenko.github.io/uk/InstructionUkr.11.pdf
 
 or here:
 
-https://oleksandrzhabenko.github.io/uk/InstructionUkr.pdf
+https://oleksandrzhabenko.github.io/uk/InstructionUkr.11.pdf
 
 The instruction in English is here:
 
-https://oleksandrzhabenko.github.io/uk/InstructionEng.pdf
+https://oleksandrzhabenko.github.io/uk/InstructionEng.11.pdf
 
 or here:
 
-https://web.archive.org/web/20210824202435/https://oleksandrzhabenko.github.io/uk/InstructionEng.pdf
+https://web.archive.org/web/20210904195153/https://oleksandrzhabenko.github.io/uk/InstructionEng.11.pdf
 
 Since the version 0.2.0.0 there exists also comparative
 mode for the rewritePoemG3 executable. It allows to
@@ -100,6 +100,21 @@
 of the another one will lead to 3*4 = 12 variations
 possible), the processing while getting the final result
 can become longer than expected.
+
+Recursive mode:
+
+lineVariantsG3 +r
+
+is incompatible with the constraints (+a ... -a).
+
+Since the 0.11.0.0 version there is also the most complex mode of multiple sources processment or
+recursive interactive cycle mode. For this use +t_ ... -t command line arguments group with the
+_ being one of the following: 20, 21, 30, 31, 40, 41, 50, 51, 60, 61, 70, 71.
+
+For example:
+
+lineVariantsG3 +r 3 w04 +t71 "sadok.txt" "other_poem.txt" "just_text.txt" -t
+
 
 2) propertiesTextG3:
 
diff --git a/Simple/Main.hs b/Simple/Main.hs
--- a/Simple/Main.hs
+++ b/Simple/Main.hs
@@ -16,6 +16,9 @@
 import Phonetic.Languages.Array.Ukrainian.PropertiesSyllablesG2
 import System.Environment (getArgs)
 import Phonetic.Languages.Simple
+import Interpreter.StringConversion (readFileIfAny)
+import Data.Maybe (fromMaybe)
+import Text.Read (readMaybe)
 
 -- | Prints the rearrangements with the \"property\" information for the Ukrainian language text. The first command line argument must be a
 -- positive 'Int' number and is a number of printed variants for the line (if they are present, otherwise just all possible variants are printed).
@@ -30,8 +33,12 @@
 -- ask you additional question before proceeding. The \"+m\" ... \"-m\" and \"+a\" ... \"-a\" groups must not mutually intersect one another.
 main :: IO ()
 main = do
- args000 <- getArgs
- let args00 = filter (/= "+r") args000
+ args0000 <- getArgs
+ let args000 = filter (not . null) (takeWhile (\xs -> take 2 xs /= "*t") args0000 `mappend` (drop 1 . dropWhile (\xs -> take 2 xs /= "^t") $ args0000))
+     textProcessmentFssFs = drop 1 . dropWhile (\xs -> take 2 xs /= "*t") . takeWhile (\xs -> take 2 xs /= "^t") $ args0000
+     textProcessment0 = concat . filter (\xs -> take 2 xs == "*t") $ args0000
+     textProcessment1 = fromMaybe 70 (readMaybe (drop 2 textProcessment0)::Maybe Int)
+     args00 = filter (/= "+r") args000
      recursiveMode = any (== "+r") args000 -- Specifies whether to use the interactive recursive mode
      args0 = filter (\xs -> take 2 xs /= "+x" && xs /= "+b" && xs /= "+l" && xs /= "+bl" && xs /= "+i" && xs /= "+u") args00
      lstW = if any (\x -> x == "+b" || x == "+bl") args00 then True else False -- If one of the command line options is \"+b\" or \"+bl\" then the last word of the line will remain the last one.
@@ -47,5 +54,7 @@
      args = takeWhile (/= "+m") args02 `mappend` (drop 1 . dropWhile (/= "-m") $ args02)
      coeffs = readCF . concat . take 1 $ args -- The first command line argument.
      coeffsWX = readCF . drop 2 . concat . take 1 . filter (\xs -> take 2 xs == "+x") $ args00 -- The command line argument that starts with \"+x\".
- if isPair coeffs then generalProc2G recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0 args0 coeffs coeffsWX (drop 1 args) lstW
- else generalProc2G recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0 args0 coeffs coeffsWX args lstW
+ textProcessmentFss0 <- mapM (readFileIfAny) textProcessmentFssFs
+ let textProcessmentFss = filter (not . null) textProcessmentFss0
+ if isPair coeffs then generalProc3G textProcessmentFss textProcessment0 textProcessment1 recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0 args0 coeffs coeffsWX (drop 1 args) lstW
+ else generalProc3G textProcessmentFss textProcessment0 textProcessment1 recursiveMode nativeUkrainian toFileMode1 interactiveP jstL0 args0 coeffs coeffsWX args lstW
diff --git a/phonetic-languages-simplified-examples-array.cabal b/phonetic-languages-simplified-examples-array.cabal
--- a/phonetic-languages-simplified-examples-array.cabal
+++ b/phonetic-languages-simplified-examples-array.cabal
@@ -2,7 +2,7 @@
 -- further documentation, see http://haskell.org/cabal/users-guide/
 
 name:                phonetic-languages-simplified-examples-array
-version:             0.10.1.0
+version:             0.11.0.0
 synopsis:            Helps to create Ukrainian texts with the given phonetic properties.
 description:         Uses more functionality of the arrays and lists. The vector-related functionality is removed and this made the executables and libraries much more lightweight. Deal the Ukrainian as one of the phonetic languages. For the brief introduction in English, please, refer to: https://functional-art.org/2020/papers/Poetry-OleksandrZhabenko.pdf. Since the version 0.3.0.0 the package has the multiple variations mode for @lineVariantsG3@ executable that allows to use modifications in the text, e. g. synonyms, paraphrases etc.
 homepage:            https://hackage.haskell.org/package/phonetic-languages-simplified-examples-array
@@ -20,7 +20,7 @@
   exposed-modules:     Phonetic.Languages.Simplified.Array.Ukrainian.FuncRep2RelatedG2, Phonetic.Languages.Simple, Phonetic.Languages.Lines, Phonetic.Languages.GetTextualInfo, Phonetic.Languages.Parsing
   -- other-modules:
   other-extensions:    BangPatterns
-  build-depends:       base >=4.8 && <4.15, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.2.1 && <1, phonetic-languages-filters-array >=0.1 && <1, uniqueness-periods-vector-stats >=0.2.1 && <1, parallel >=3.2.0.6 && <4, phonetic-languages-plus >=0.2 && <1, subG >= 0.4 && < 1, phonetic-languages-rhythmicity >=0.9.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-simplified-examples-common >=0.1.1 && <1, mmsyn2-array >= 0.1.3 && <1, string-interpreter >=0.2 && <1
+  build-depends:       base >=4.8 && <4.16, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.6 && <1, phonetic-languages-filters-array >=0.1 && <1, uniqueness-periods-vector-stats >=0.2.1 && <1, parallel >=3.2.0.6 && <4, phonetic-languages-plus >=0.2 && <1, subG >= 0.4 && < 1, phonetic-languages-rhythmicity >=0.9.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-simplified-examples-common >=0.1.3 && <1, mmsyn2-array >= 0.1.3 && <1, string-interpreter >=0.5.2 && <1
   -- hs-source-dirs:
   default-language:    Haskell2010
 
@@ -28,7 +28,7 @@
   main-is:             Main.hs
   other-modules:       Phonetic.Languages.Simplified.Array.Ukrainian.FuncRep2RelatedG2, Phonetic.Languages.Simple, Phonetic.Languages.Parsing
   other-extensions:    BangPatterns
-  build-depends:       base >=4.8 && <4.15, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.2.1 && <1, phonetic-languages-filters-array >=0.1 && <1, phonetic-languages-plus >=0.2 && <1, subG >=0.4 && < 1, mmsyn2-array >= 0.1.3 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-simplified-examples-common >=0.1.1 && <1, string-interpreter >=0.2 && <1
+  build-depends:       base >=4.8 && <4.16, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.6 && <1, phonetic-languages-filters-array >=0.1 && <1, phonetic-languages-plus >=0.2 && <1, subG >=0.4 && < 1, mmsyn2-array >= 0.1.3 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-simplified-examples-common >=0.1.3 && <1, string-interpreter >=0.5.2 && <1, mmsyn2-array >= 0.1.3 && <1
   ghc-options:         -threaded -rtsopts
   hs-source-dirs:      ., Simple
   default-language:    Haskell2010
@@ -37,7 +37,7 @@
   main-is:             Main.hs
   other-modules:       Phonetic.Languages.Simplified.Array.Ukrainian.FuncRep2RelatedG2, Phonetic.Languages.Lines, Phonetic.Languages.Parsing
   other-extensions:    BangPatterns
-  build-depends:       base >=4.8 && <4.15, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.2.1 && <1, phonetic-languages-filters-array >=0.1 && <1, phonetic-languages-plus >=0.2 && <1, subG >= 0.4 && < 1, phonetic-languages-rhythmicity >=0.9.1 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-simplified-examples-common >=0.1.1 && <1, mmsyn2-array >= 0.1.3 && <1
+  build-depends:       base >=4.8 && <4.16, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.6 && <1, phonetic-languages-filters-array >=0.1 && <1, phonetic-languages-plus >=0.2 && <1, subG >= 0.4 && < 1, phonetic-languages-rhythmicity >=0.9.1 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-simplified-examples-common >=0.1.3 && <1, mmsyn2-array >= 0.1.3 && <1
   ghc-options:         -threaded -rtsopts
   hs-source-dirs:      ., Lines
   default-language:    Haskell2010
@@ -46,7 +46,7 @@
   main-is:             Main.hs
   other-modules:       Phonetic.Languages.Simplified.Array.Ukrainian.FuncRep2RelatedG2, Phonetic.Languages.GetTextualInfo, Phonetic.Languages.Parsing
   other-extensions:    BangPatterns
-  build-depends:       base >=4.8 && <4.15, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.2.1 && <1, phonetic-languages-filters-array >=0.1 && <1, uniqueness-periods-vector-stats >=0.2.1 && <1, parallel >=3.2.0.6 && <4, phonetic-languages-plus >=0.2 && <1, subG >= 0.4 && < 1, phonetic-languages-rhythmicity >=0.9.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-simplified-examples-common >=0.1.1 && <1, mmsyn2-array >= 0.1.3 && <1
+  build-depends:       base >=4.8 && <4.16, ukrainian-phonetics-basic-array >=0.1.2 && <1, phonetic-languages-simplified-base >=0.1 && <1, phonetic-languages-simplified-properties-array >=0.8.1 && <1, phonetic-languages-ukrainian-array >=0.6 && <1, phonetic-languages-filters-array >=0.1 && <1, uniqueness-periods-vector-stats >=0.2.1 && <1, parallel >=3.2.0.6 && <4, phonetic-languages-plus >=0.2 && <1, subG >= 0.4 && < 1, phonetic-languages-rhythmicity >=0.9.1 && <1, phonetic-languages-permutations-array >= 0.1 && <1, heaps >= 0.3.6.1 && <1, phonetic-languages-constraints-array >=0.1 && <1, phonetic-languages-simplified-examples-common >=0.1.3 && <1, mmsyn2-array >= 0.1.3 && <1
   ghc-options:         -threaded -rtsopts
   hs-source-dirs:      ., GetInfo
   default-language:    Haskell2010
