diff --git a/Changelog b/Changelog
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,5 @@
+-> 0.3.4    package Boolean is changed. Keeping dependencies up to date
+
 -> 0.3.3    score representation is changed (temporal-media package)
 
 -> 0.3.2    adds new GEN functionality:
diff --git a/csound-expression.cabal b/csound-expression.cabal
--- a/csound-expression.cabal
+++ b/csound-expression.cabal
@@ -1,5 +1,5 @@
 Name:          csound-expression
-Version:       0.3.3
+Version:       0.3.4
 Cabal-Version: >= 1.2
 License:       BSD3
 License-File:  LICENSE
@@ -30,7 +30,7 @@
 Library
   Build-Depends:
         base >= 4, base < 5, containers, mtl >= 2.0, pretty, 
-        filepath, directory, process >= 1, Boolean, temporal-music-notation >= 0.2
+        filepath, directory, process >= 1, Boolean >= 0.1.1, temporal-music-notation >= 0.2
   Hs-Source-Dirs:      src/
   Exposed-Modules:
         CsoundExpr
diff --git a/src/CsoundExpr/Translator/Cs/CsBoolean.hs b/src/CsoundExpr/Translator/Cs/CsBoolean.hs
--- a/src/CsoundExpr/Translator/Cs/CsBoolean.hs
+++ b/src/CsoundExpr/Translator/Cs/CsBoolean.hs
@@ -1,6 +1,6 @@
-{-# LANGUAGE 
-        MultiParamTypeClasses, 
+{-# LANGUAGE         
         FlexibleInstances,
+        TypeFamilies,
         TypeSynonymInstances #-}
 
 module CsoundExpr.Translator.Cs.CsBoolean (CsBool) 
@@ -106,7 +106,9 @@
 
 ---------------------------------------------------
 
-instance IfB CsBool CsTree where
+type instance BooleanOf CsTree = CsBool
+
+instance IfB CsTree where
     ifB cond a b = let cond' = elimNots P cond 
                    in  case cond' of
                           CsTrue  -> a
@@ -130,12 +132,12 @@
 bOp op a b = CsBPrim $ CsComp op a b
 
 
-instance EqB CsBool CsTree where
+instance EqB CsTree where
     (==*) = bOp CsEq
     (/=*) = bOp CsNeq
 
 
-instance OrdB CsBool CsTree where
+instance OrdB CsTree where
     (<*)  = bOp CsLt
     (>*)  = bOp CsGt
     (<=*) = bOp CsElt
