diff --git a/Config.hs b/Config.hs
--- a/Config.hs
+++ b/Config.hs
@@ -10,18 +10,11 @@
 import System.Exit
 import System.Process
 
--- import Text.Parsec
--- import Control.Monad.Identity
-
 config :: LocalBuildInfo -> IO (Maybe HookedBuildInfo)
 config bInfo = do 
   (excode, out, err) <- readProcessWithExitCode "root-config" ["--glibs"] ""
   liboptset' <- case excode of 
                   ExitSuccess -> do  
---                    putStrLn $ show $ words out
---                    putStrLn $ show $ libraryOptions (words out)
---                    putStrLn $ show $ mkLibraryOptionSet . words $ out
---                    putStrLn $ show $ mkLibraryOptionSet . words $ out
                     return . Just .  mkLibraryOptionSet . words $ out
                   _ -> do 
                     putStrLn $ "root-config failure but I am installing HROOT without ROOT. It will not work. This is only for documentation." 
@@ -29,7 +22,6 @@
   (excode2,out2,err2) <- readProcessWithExitCode "root-config" ["--incdir"] ""
   incdir' <- case excode2 of 
                ExitSuccess -> do  
---                 putStrLn $ out2
                  return . Just . head . words $ out2
                _ -> do 
                  putStrLn $ "root-config failure but I am installing HROOT without ROOT. It will not work. This is only for documentation." 
@@ -48,8 +40,6 @@
                                            , includeDirs = incdir : includeDirs buildinfo
                                            }
                   in Just (Just hbi, []) 
---  putStrLn $ "show here"
---  putStrLn $ show r
   return r 
 
 
@@ -93,10 +83,3 @@
                         _ -> Right (Opt str)
     _ -> Right (Opt str) 
 
-{-
-libraryOptionClassifier :: ParsecT String () Identity LibraryOption
-libraryOptionClassifier = 
-  try (string "-L" >> many1 anyChar >>= return . Dir) 
-  <|> try (string "-l" >> many1 anyChar >>= return . Lib)
-  <|> (many1 anyChar >>= return . Opt)
--}
diff --git a/HROOT.cabal b/HROOT.cabal
--- a/HROOT.cabal
+++ b/HROOT.cabal
@@ -1,5 +1,5 @@
 Name:		HROOT
-Version:	0.6.1
+Version:	0.6.2
 Synopsis:	Wrapper for ROOT
 Description: 	Haskell FFI binding for ROOT  
 Homepage:       http://ianwookim.org/HROOT
@@ -30,12 +30,111 @@
   ghc-options:  -Wall -funbox-strict-fields -fno-warn-unused-do-bind -fno-warn-orphans
   ghc-prof-options: -caf-all -auto-all
   Build-Depends:      base>4 && < 5
-  Exposed-Modules:    HROOT
-                      HROOT.Class.Interface
-                      HROOT.Class.Implementation
-                      HROOT.Class.FFI
-                      HROOT.AddOn
-                      HROOT.AddOnFunction
+  Exposed-Modules:  
+                       HROOT
+                       HROOT.Class.Interface
+                       HROOT.Class.Implementation
+                       HROOT.Class.FFI
+                       HROOT.AddOn
+                       HROOT.AddOnFunction
+                       HROOT.Class.TObject
+                       HROOT.Class.TNamed
+                       HROOT.Class.TDictionary
+                       HROOT.Class.TClass
+                       HROOT.Class.TFormula
+                       HROOT.Class.TAtt3D
+                       HROOT.Class.TAttAxis
+                       HROOT.Class.TAttBBox
+                       HROOT.Class.TAttCanvas
+                       HROOT.Class.TAttFill
+                       HROOT.Class.TAttImage
+                       HROOT.Class.TAttLine
+                       HROOT.Class.TAttMarker
+                       HROOT.Class.TAttPad
+                       HROOT.Class.TAttParticle
+                       HROOT.Class.TAttText
+                       HROOT.Class.THStack
+                       HROOT.Class.TF1
+                       HROOT.Class.TGraph
+                       HROOT.Class.TGraphAsymmErrors
+                       HROOT.Class.TCutG
+                       HROOT.Class.TGraphBentErrors
+                       HROOT.Class.TGraphErrors
+                       HROOT.Class.TGraphPolar
+                       HROOT.Class.TGraphQQ
+                       HROOT.Class.TEllipse
+                       HROOT.Class.TArc
+                       HROOT.Class.TCrown
+                       HROOT.Class.TLine
+                       HROOT.Class.TArrow
+                       HROOT.Class.TGaxis
+                       HROOT.Class.TShape
+                       HROOT.Class.TBRIK
+                       HROOT.Class.TTUBE
+                       HROOT.Class.TPCON
+                       HROOT.Class.TSPHE
+                       HROOT.Class.TXTRU
+                       HROOT.Class.TBox
+                       HROOT.Class.TPave
+                       HROOT.Class.TPaveText
+                       HROOT.Class.TDiamond
+                       HROOT.Class.TPaveStats
+                       HROOT.Class.TPavesText
+                       HROOT.Class.TLegend
+                       HROOT.Class.TPaveLabel
+                       HROOT.Class.TPaveClass
+                       HROOT.Class.TWbox
+                       HROOT.Class.TFrame
+                       HROOT.Class.TSliderBox
+                       HROOT.Class.TTree
+                       HROOT.Class.TChain
+                       HROOT.Class.TNtuple
+                       HROOT.Class.TNtupleD
+                       HROOT.Class.TTreeSQL
+                       HROOT.Class.TPolyLine
+                       HROOT.Class.TCurlyLine
+                       HROOT.Class.TCurlyArc
+                       HROOT.Class.TEfficiency
+                       HROOT.Class.TAxis
+                       HROOT.Class.TLatex
+                       HROOT.Class.TText
+                       HROOT.Class.TDirectory
+                       HROOT.Class.TDirectoryFile
+                       HROOT.Class.TFile
+                       HROOT.Class.TBranch
+                       HROOT.Class.TVirtualTreePlayer
+                       HROOT.Class.TTreePlayer
+                       HROOT.Class.TArray
+                       HROOT.Class.TArrayC
+                       HROOT.Class.TArrayD
+                       HROOT.Class.TArrayF
+                       HROOT.Class.TArrayI
+                       HROOT.Class.TArrayL
+                       HROOT.Class.TArrayL64
+                       HROOT.Class.TArrayS
+                       HROOT.Class.TH1
+                       HROOT.Class.TH2
+                       HROOT.Class.TH3
+                       HROOT.Class.TH1C
+                       HROOT.Class.TH1D
+                       HROOT.Class.TH1F
+                       HROOT.Class.TH1I
+                       HROOT.Class.TH1S
+                       HROOT.Class.TH2C
+                       HROOT.Class.TH2D
+                       HROOT.Class.TH2F
+                       HROOT.Class.TH2I
+                       HROOT.Class.TH2Poly
+                       HROOT.Class.TH2S
+                       HROOT.Class.TH3C
+  
+
+--                      HROOT
+--                      HROOT.Class.Interface
+--                      HROOT.Class.Implementation
+--                      HROOT.Class.FFI
+--                      HROOT.AddOn
+--                      HROOT.AddOnFunction
   extra-libraries:    stdc++
   Extensions:	      ForeignFunctionInterface
   Include-dirs:       csrc
diff --git a/src/HROOT/Class/Implementation.hs b/src/HROOT/Class/Implementation.hs
--- a/src/HROOT/Class/Implementation.hs
+++ b/src/HROOT/Class/Implementation.hs
@@ -4733,176 +4733,238 @@
 instance ITWbox TFrame where
   setBorderMode = xform1 c_tframe_setbordermode
 
+
 newTObject :: IO TObject
 newTObject = xformnull c_tobject_newtobject
 
+-- | constructor : 
+--   
+--   > TNamed( char* name, char* title) 
+--   
+
 newTNamed :: String -> String -> IO TNamed
 newTNamed = xform1 c_tnamed_newtnamed
 
+
 newTFormula :: String -> String -> IO TFormula
 newTFormula = xform1 c_tformula_newtformula
 
+
 newTAttAxis :: IO TAttAxis
 newTAttAxis = xformnull c_tattaxis_newtattaxis
 
+
 newTAttCanvas :: IO TAttCanvas
 newTAttCanvas = xformnull c_tattcanvas_newtattcanvas
 
+
 newTAttFill :: Int -> Int -> IO TAttFill
 newTAttFill = xform1 c_tattfill_newtattfill
 
+
 newTAttLine :: Int -> Int -> Int -> IO TAttLine
 newTAttLine = xform2 c_tattline_newtattline
 
+
 newTAttMarker :: Int -> Int -> Int -> IO TAttMarker
 newTAttMarker = xform2 c_tattmarker_newtattmarker
 
+
 newTAttPad :: IO TAttPad
 newTAttPad = xformnull c_tattpad_newtattpad
 
+
 newTAttText :: Int -> Double -> Int -> Int -> Double -> IO TAttText
 newTAttText = xform4 c_tatttext_newtatttext
 
+
 newTHStack :: String -> String -> IO THStack
 newTHStack = xform1 c_thstack_newthstack
 
+
 newTF1 :: String -> String -> Double -> Double -> IO TF1
 newTF1 = xform3 c_tf1_newtf1
 
+
 newTGraph :: Int -> [Double] -> [Double] -> IO TGraph
 newTGraph = xform2 c_tgraph_newtgraph
 
+
 newTGraphAsymmErrors :: Int -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> IO TGraphAsymmErrors
 newTGraphAsymmErrors = xform6 c_tgraphasymmerrors_newtgraphasymmerrors
 
+
 newTCutG :: String -> Int -> [Double] -> [Double] -> IO TCutG
 newTCutG = xform3 c_tcutg_newtcutg
 
+
 newTGraphBentErrors :: Int -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> [Double] -> IO TGraphBentErrors
 newTGraphBentErrors = xform10 c_tgraphbenterrors_newtgraphbenterrors
 
+
 newTGraphErrors :: Int -> [Double] -> [Double] -> [Double] -> [Double] -> IO TGraphErrors
 newTGraphErrors = xform4 c_tgrapherrors_newtgrapherrors
 
+
 newTGraphPolar :: Int -> [Double] -> [Double] -> [Double] -> [Double] -> IO TGraphPolar
 newTGraphPolar = xform4 c_tgraphpolar_newtgraphpolar
 
+
 newTGraphQQ :: Int -> [Double] -> Int -> [Double] -> IO TGraphQQ
 newTGraphQQ = xform3 c_tgraphqq_newtgraphqq
 
+
 newTEllipse :: Double -> Double -> Double -> Double -> Double -> Double -> Double -> IO TEllipse
 newTEllipse = xform6 c_tellipse_newtellipse
 
+
 newTArc :: Double -> Double -> Double -> Double -> Double -> IO TArc
 newTArc = xform4 c_tarc_newtarc
 
+
 newTCrown :: Double -> Double -> Double -> Double -> Double -> Double -> IO TCrown
 newTCrown = xform5 c_tcrown_newtcrown
 
+
 newTLine :: Double -> Double -> Double -> Double -> IO TLine
 newTLine = xform3 c_tline_newtline
 
+
 newTArrow :: Double -> Double -> Double -> Double -> Double -> String -> IO TArrow
 newTArrow = xform5 c_tarrow_newtarrow
 
+
 newTGaxis :: Double -> Double -> Double -> Double -> Double -> Double -> Int -> String -> Double -> IO TGaxis
 newTGaxis = xform8 c_tgaxis_newtgaxis
 
+
 newTShape :: String -> String -> String -> IO TShape
 newTShape = xform2 c_tshape_newtshape
 
+
 newTBRIK :: String -> String -> String -> Double -> Double -> Double -> IO TBRIK
 newTBRIK = xform5 c_tbrik_newtbrik
 
+
 newTTUBE :: String -> String -> String -> Double -> Double -> Double -> Double -> IO TTUBE
 newTTUBE = xform6 c_ttube_newttube
 
+
 newTPCON :: String -> String -> String -> Double -> Double -> Int -> IO TPCON
 newTPCON = xform5 c_tpcon_newtpcon
 
+
 newTSPHE :: String -> String -> String -> Double -> Double -> Double -> Double -> Double -> Double -> IO TSPHE
 newTSPHE = xform8 c_tsphe_newtsphe
 
+
 newTXTRU :: String -> String -> String -> Int -> Int -> IO TXTRU
 newTXTRU = xform4 c_txtru_newtxtru
 
+
 newTBox :: Double -> Double -> Double -> Double -> IO TBox
 newTBox = xform3 c_tbox_newtbox
 
+
 newTPave :: Double -> Double -> Double -> Double -> Int -> String -> IO TPave
 newTPave = xform5 c_tpave_newtpave
 
+
 newTPaveText :: Double -> Double -> Double -> Double -> String -> IO TPaveText
 newTPaveText = xform4 c_tpavetext_newtpavetext
 
+
 newTDiamond :: Double -> Double -> Double -> Double -> IO TDiamond
 newTDiamond = xform3 c_tdiamond_newtdiamond
 
+
 newTPaveStats :: Double -> Double -> Double -> Double -> String -> IO TPaveStats
 newTPaveStats = xform4 c_tpavestats_newtpavestats
 
+
 newTPavesText :: Double -> Double -> Double -> Double -> Int -> String -> IO TPavesText
 newTPavesText = xform5 c_tpavestext_newtpavestext
 
+
 newTLegend :: Double -> Double -> Double -> Double -> String -> String -> IO TLegend
 newTLegend = xform5 c_tlegend_newtlegend
 
+
 newTPaveLabel :: Double -> Double -> Double -> Double -> String -> String -> IO TPaveLabel
 newTPaveLabel = xform5 c_tpavelabel_newtpavelabel
 
+
 newTWbox :: Double -> Double -> Double -> Double -> Int -> Int -> Int -> IO TWbox
 newTWbox = xform6 c_twbox_newtwbox
 
+
 newTFrame :: Double -> Double -> Double -> Double -> IO TFrame
 newTFrame = xform3 c_tframe_newtframe
 
+
 newTSliderBox :: Double -> Double -> Double -> Double -> Int -> Int -> Int -> IO TSliderBox
 newTSliderBox = xform6 c_tsliderbox_newtsliderbox
 
+
 newTTree :: String -> String -> Int -> IO TTree
 newTTree = xform2 c_ttree_newttree
 
+
 newTChain :: String -> String -> IO TChain
 newTChain = xform1 c_tchain_newtchain
 
+
 newTNtuple :: String -> String -> String -> Int -> IO TNtuple
 newTNtuple = xform3 c_tntuple_newtntuple
 
+
 newTNtupleD :: String -> String -> String -> Int -> IO TNtupleD
 newTNtupleD = xform3 c_tntupled_newtntupled
 
+
 newTPolyLine :: Int -> [Double] -> [Double] -> String -> IO TPolyLine
 newTPolyLine = xform3 c_tpolyline_newtpolyline
 
+
 newTCurlyLine :: Double -> Double -> Double -> Double -> Double -> Double -> IO TCurlyLine
 newTCurlyLine = xform5 c_tcurlyline_newtcurlyline
 
+
 newTCurlyArc :: Double -> Double -> Double -> Double -> Double -> Double -> Double -> IO TCurlyArc
 newTCurlyArc = xform6 c_tcurlyarc_newtcurlyarc
 
+
 newTAxis :: Int -> Double -> Double -> IO TAxis
 newTAxis = xform2 c_taxis_newtaxis
 
+
 newTLatex :: Double -> Double -> String -> IO TLatex
 newTLatex = xform2 c_tlatex_newtlatex
 
+
 newTFile :: String -> String -> String -> Int -> IO TFile
 newTFile = xform3 c_tfile_newtfile
 
+
 newTH1F :: String -> String -> Int -> Double -> Double -> IO TH1F
 newTH1F = xform4 c_th1f_newth1f
 
+
 newTH2F :: String -> String -> Int -> Double -> Double -> Int -> Double -> Double -> IO TH2F
 newTH2F = xform7 c_th2f_newth2f
 
+
 newTCanvas :: String -> String -> Int -> Int -> IO TCanvas
 newTCanvas = xform3 c_tcanvas_newtcanvas
 
+
 newTApplication :: String -> [Int] -> [String] -> IO TApplication
 newTApplication = xform2 c_tapplication_newtapplication
 
+
 newTRint :: String -> [Int] -> [String] -> IO TRint
 newTRint = xform2 c_trint_newtrint
+
 
 newTRandom :: Int -> IO TRandom
 newTRandom = xform0 c_trandom_newtrandom
diff --git a/src/HROOT/Class/Interface.hs b/src/HROOT/Class/Interface.hs
--- a/src/HROOT/Class/Interface.hs
+++ b/src/HROOT/Class/Interface.hs
@@ -2,8 +2,10 @@
              FlexibleInstances, TypeSynonymInstances, UndecidableInstances, 
              EmptyDataDecls, IncoherentInstances, ExistentialQuantification #-}
 
-module HROOT.Class.Interface where
+-- module HROOT.Class.Interface where
 
+module HROOT.Class.Interface  where
+
 import Foreign.C            
 import Foreign.Ptr
 import Foreign.ForeignPtr
@@ -1082,297 +1084,534 @@
 instance Existable TRandom where
   data Exist TRandom = forall a. (FPtr a, ITRandom a) => ETRandom a
 
+
 class IDeletable a where
+
     delete :: a -> IO () 
 
+
 class (IDeletable a) => ITObject a where
+    -- | 
+    --   > char* TObject::GetName()
+    --   
+
     getName :: a -> IO String 
+    -- | 
+    --   > void TObject::Draw( char* option )
+    --   
+
     draw :: a -> String -> IO () 
+    -- | 
+    --   > TObject* TObject::FindObject( char* name )
+    --   
+
     findObject :: a -> String -> IO (Exist TObject) 
+
     saveAs :: a -> String -> String -> IO () 
+
     write :: a -> String -> Int -> Int -> IO Int 
+
     isA :: a -> IO (Exist TClass) 
 
+-- | 
+--   Class TNamed
+--   reference : http://root.cern.ch
+
 class (ITObject a) => ITNamed a where
+    -- | SetTitle method
+    --   
+    --   > SetTitle( char* name, char* title ) 
+    --   
+
     setTitle :: a -> String -> IO () 
 
+
 class (ITNamed a) => ITDictionary a where
 
+
 class (ITDictionary a) => ITClass a where
 
+
 class (ITNamed a) => ITFormula a where
+
     getParameter :: a -> Int -> IO Double 
+
     setParameter :: a -> Int -> Double -> IO () 
 
+
 class (IDeletable a) => ITAtt3D a where
 
+
 class (IDeletable a) => ITAttAxis a where
+
     setLabelColor :: a -> Int -> IO () 
+
     setLabelSize :: a -> Double -> IO () 
+
     setTickLength :: a -> Double -> IO () 
+
     setTitleOffset :: a -> Double -> IO () 
+
     setNdivisions :: a -> Int -> Int -> IO () 
 
+
 class (IDeletable a) => ITAttBBox a where
 
+
 class (IDeletable a) => ITAttCanvas a where
 
+
 class (IDeletable a) => ITAttFill a where
+
     setFillColor :: a -> Int -> IO () 
+
     setFillStyle :: a -> Int -> IO () 
 
+
 class (IDeletable a) => ITAttImage a where
 
+
 class (IDeletable a) => ITAttLine a where
+
     setLineColor :: a -> Int -> IO () 
 
+
 class (IDeletable a) => ITAttMarker a where
 
+
 class (IDeletable a) => ITAttPad a where
 
+
 class (ITNamed a) => ITAttParticle a where
 
+
 class (IDeletable a) => ITAttText a where
+
     setTextColor :: a -> Int -> IO () 
+
     setTextAlign :: a -> Int -> IO () 
+
     setTextSize :: a -> Double -> IO () 
 
+
 class (ITNamed a) => ITHStack a where
 
+
 class (ITFormula a,ITAttLine a,ITAttFill a) => ITF1 a where
 
+
 class (ITNamed a,ITAttLine a,ITAttFill a,ITAttMarker a) => ITGraph a where
 
+
 class (ITGraph a) => ITGraphAsymmErrors a where
 
+
 class (ITGraph a) => ITCutG a where
 
+
 class (ITGraph a) => ITGraphBentErrors a where
 
+
 class (ITGraph a) => ITGraphErrors a where
 
+
 class (ITGraphErrors a) => ITGraphPolar a where
 
+
 class (ITGraph a) => ITGraphQQ a where
 
+
 class (ITObject a,ITAttLine a,ITAttFill a) => ITEllipse a where
 
+
 class (ITEllipse a) => ITArc a where
 
+
 class (ITEllipse a) => ITCrown a where
 
+
 class (ITObject a,ITAttLine a) => ITLine a where
 
+
 class (ITLine a,ITAttFill a) => ITArrow a where
 
+
 class (ITLine a,ITAttText a) => ITGaxis a where
 
+
 class (ITNamed a,ITAttLine a,ITAttFill a,ITAtt3D a) => ITShape a where
 
+
 class (ITShape a) => ITBRIK a where
 
+
 class (ITShape a) => ITTUBE a where
 
+
 class (ITShape a) => ITPCON a where
 
+
 class (ITShape a) => ITSPHE a where
 
+
 class (ITShape a) => ITXTRU a where
 
+
 class (ITObject a,ITAttLine a,ITAttFill a) => ITBox a where
 
+
 class (ITBox a) => ITPave a where
 
+
 class (ITPave a,ITAttText a) => ITPaveText a where
 
+
 class (ITPaveText a) => ITDiamond a where
 
+
 class (ITPaveText a) => ITPaveStats a where
 
+
 class (ITPaveText a) => ITPavesText a where
 
+
 class (ITPave a,ITAttText a) => ITLegend a where
 
+
 class (ITPave a,ITAttText a) => ITPaveLabel a where
 
+
 class (ITPaveLabel a) => ITPaveClass a where
 
+
 class (ITBox a) => ITWbox a where
+
     setBorderMode :: a -> Int -> IO () 
 
+
 class (ITWbox a) => ITFrame a where
 
+
 class (ITWbox a) => ITSliderBox a where
 
+
 class (ITNamed a,ITAttLine a,ITAttFill a,ITAttMarker a) => ITTree a where
 
+
 class (ITTree a) => ITChain a where
 
+
 class (ITTree a) => ITNtuple a where
 
+
 class (ITTree a) => ITNtupleD a where
 
+
 class (ITTree a) => ITTreeSQL a where
 
+
 class (ITObject a,ITAttLine a,ITAttFill a) => ITPolyLine a where
 
+
 class (ITPolyLine a) => ITCurlyLine a where
 
+
 class (ITCurlyLine a) => ITCurlyArc a where
 
+
 class (ITNamed a,ITAttLine a,ITAttFill a,ITAttMarker a) => ITEfficiency a where
 
+
 class (ITNamed a,ITAttAxis a) => ITAxis a where
 
+
 class (ITText a,ITAttLine a) => ITLatex a where
 
+
 class (ITNamed a,ITAttText a) => ITText a where
 
+
 class (ITNamed a) => ITDirectory a where
+
     close :: a -> String -> IO () 
+
     get :: a -> String -> IO (Exist TObject) 
 
+
 class (ITDirectory a) => ITDirectoryFile a where
 
+
 class (ITDirectoryFile a) => ITFile a where
 
+
 class (ITNamed a,ITAttFill a) => ITBranch a where
 
+
 class (ITObject a) => ITVirtualTreePlayer a where
 
+
 class (ITVirtualTreePlayer a) => ITTreePlayer a where
 
+
 class (IDeletable a) => ITArray a where
 
+
 class (ITArray a) => ITArrayC a where
 
+
 class (ITArray a) => ITArrayD a where
 
+
 class (ITArray a) => ITArrayF a where
 
+
 class (ITArray a) => ITArrayI a where
 
+
 class (ITArray a) => ITArrayL a where
 
+
 class (ITArray a) => ITArrayL64 a where
 
+
 class (ITArray a) => ITArrayS a where
 
+-- |  the TH1 class : the mother class of all histogram classes 
+--   
+--   > class TH1 : TNamed, TAttLine, TAttFill, TAttMarker
+--   
+
 class (ITNamed a,ITAttLine a,ITAttFill a,ITAttMarker a) => ITH1 a where
+    -- |  
+    --   > void TH1::Add( TH1* h1, Double_t c1 ) 
+    --   
+
     add :: (ITH1 c0, FPtr c0) => a -> c0 -> Double -> IO () 
+    -- | 
+    --   > void TH1::AddBinContent( Int_t bin, Double_t w )
+    --   
+
     addBinContent :: a -> Int -> Double -> IO () 
+    -- | 
+    --   > Double_t TH1::Chi2Test( const TH1* h2, Option_t* option="UU", Double_t* res=0 ) const
+    --   
+
     chi2Test :: (ITH1 c0, FPtr c0) => a -> c0 -> String -> [Double] -> IO Double 
+    -- | 
+    --   > Double_t TH1::ComputeIntegral ()
+    --   
+
     computeIntegral :: a -> IO Double 
+    -- | 
+    --   > void TH1::DirectoryAutoAdd(TDirectory* )
+    --   
+
     directoryAutoAdd :: (ITDirectory c0, FPtr c0) => a -> c0 -> IO () 
+    -- | 
+    --   > Int_t TH1::DistancetoPrimitive(Int_t px, Int_t py)
+    --   
+
     distancetoPrimitive :: a -> Int -> Int -> IO Int 
+    -- | 
+    --   > void TH1::Divide(const TH1* h1, const TH1* h2, Double_t c1=1, Double_t c2=1, Option_t* option="")
+    --   
+
     divide :: (ITH2 c1, FPtr c1, ITH1 c0, FPtr c0) => a -> c0 -> c1 -> Double -> Double -> String -> IO () 
+    -- | 
+    --   > TH1* TH1::DrawCopy (Option_t* option="") const 
+    --   
+
     drawCopy :: a -> String -> IO a 
+    -- | 
+    --   > TH1* TH1::DrawNormalized (Option_t* option="", Double_t norm=1) const
+    --   
+
     drawNormalized :: a -> String -> Double -> IO (Exist TH1) 
+    -- | 
+    --   > void TH1::DrawPanel()
+    --   
+
     drawPanel :: a -> IO () 
+
     bufferEmpty :: a -> Int -> IO Int 
+
     eval :: (ITF1 c0, FPtr c0) => a -> c0 -> String -> IO () 
+
     executeEvent :: a -> Int -> Int -> Int -> IO () 
+
     fFT :: (ITH1 c0, FPtr c0) => a -> c0 -> String -> IO (Exist TH1) 
+
     fill1 :: a -> Double -> IO Int 
+
     fillN :: a -> Int -> [Double] -> [Double] -> Int -> IO () 
+
     fillRandom :: (ITH1 c0, FPtr c0) => a -> c0 -> Int -> IO () 
+
     findBin :: a -> Double -> Double -> Double -> IO Int 
+
     findFixBin :: a -> Double -> Double -> Double -> IO Int 
+
     findFirstBinAbove :: a -> Double -> Int -> IO Int 
+
     findLastBinAbove :: a -> Double -> Int -> IO Int 
+
     fitPanel :: a -> IO () 
+
     getNdivisions :: a -> String -> IO Int 
+
     getAxisColor :: a -> String -> IO Int 
+
     getLabelColor :: a -> String -> IO Int 
+
     getLabelFont :: a -> String -> IO Int 
+
     getLabelOffset :: a -> String -> IO Double 
+
     getLabelSize :: a -> String -> IO Double 
+
     getTitleFont :: a -> String -> IO Int 
+
     getTitleOffset :: a -> String -> IO Double 
+
     getTitleSize :: a -> String -> IO Double 
+
     getTickLength :: a -> String -> IO Double 
+
     getBarOffset :: a -> IO Double 
+
     getBarWidth :: a -> IO Double 
+
     getContour :: a -> [Double] -> IO Int 
+
     getContourLevel :: a -> Int -> IO Double 
+
     getContourLevelPad :: a -> Int -> IO Double 
+
     getBin :: a -> Int -> Int -> Int -> IO Int 
+
     getBinCenter :: a -> Int -> IO Double 
+
     getBinContent1 :: a -> Int -> IO Double 
+
     getBinContent2 :: a -> Int -> Int -> IO Double 
+
     getBinContent3 :: a -> Int -> Int -> Int -> IO Double 
+
     getBinError1 :: a -> Int -> IO Double 
+
     getBinError2 :: a -> Int -> Int -> IO Double 
+
     getBinError3 :: a -> Int -> Int -> Int -> IO Double 
+
     getBinLowEdge :: a -> Int -> IO Double 
+
     getBinWidth :: a -> Int -> IO Double 
+
     getCellContent :: a -> Int -> Int -> IO Double 
+
     getCellError :: a -> Int -> Int -> IO Double 
 
+
 class (ITH1 a) => ITH2 a where
+
     fill2 :: a -> Double -> Double -> IO Int 
 
+
 class (ITH1 a,ITAtt3D a) => ITH3 a where
 
+
 class (ITH1 a,ITArrayC a) => ITH1C a where
 
+
 class (ITH1 a,ITArrayD a) => ITH1D a where
 
+
 class (ITH1 a,ITArrayF a) => ITH1F a where
 
+
 class (ITH1 a,ITArrayI a) => ITH1I a where
 
+
 class (ITH1 a,ITArrayS a) => ITH1S a where
 
+
 class (ITH2 a,ITArrayC a) => ITH2C a where
 
+
 class (ITH2 a,ITArrayD a) => ITH2D a where
 
+
 class (ITH2 a,ITArrayF a) => ITH2F a where
 
+
 class (ITH2 a,ITArrayI a) => ITH2I a where
 
+
 class (ITH2 a) => ITH2Poly a where
 
+
 class (ITH2 a,ITArrayS a) => ITH2S a where
 
+
 class (ITH3 a,ITArrayC a) => ITH3C a where
 
+
 class (ITH3 a,ITArrayD a) => ITH3D a where
 
+
 class (ITH3 a,ITArrayF a) => ITH3F a where
 
+
 class (ITH3 a,ITArrayI a) => ITH3I a where
 
+
 class (ITH3 a,ITArrayS a) => ITH3S a where
 
+
 class (IDeletable a) => ITQObject a where
 
+
 class (ITObject a,ITAttLine a,ITAttFill a,ITAttPad a,ITQObject a) => ITVirtualPad a where
+
     getFrame :: a -> IO (Exist TFrame) 
+
     range :: a -> Double -> Double -> Double -> Double -> IO () 
 
+
 class (ITVirtualPad a) => ITPad a where
 
+
 class (ITPad a,ITAttText a) => ITButton a where
 
+
 class (ITButton a) => ITGroupButton a where
 
+
 class (ITPad a) => ITCanvas a where
 
+
 class (ITCanvas a,ITAttText a) => ITDialogCanvas a where
 
+
 class (ITCanvas a,ITAttText a) => ITInspectCanvas a where
 
+
 class (ITPad a) => ITEvePad a where
 
+
 class (ITPad a) => ITSlider a where
 
+
 class (ITObject a,ITQObject a) => ITApplication a where
+
     run :: a -> Int -> IO () 
 
+
 class (ITApplication a) => ITRint a where
 
+
 class (ITNamed a) => ITRandom a where
+
     gaus :: a -> Double -> Double -> IO Double 
+
     uniform :: a -> Double -> Double -> IO Double 
diff --git a/src/HROOT/Class/TArc.hs b/src/HROOT/Class/TArc.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArc.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArc
+  (
+    TArc(..)
+  , ITArc 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArray.hs b/src/HROOT/Class/TArray.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArray.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArray
+  (
+    TArray(..)
+  , ITArray 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrayC.hs b/src/HROOT/Class/TArrayC.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrayC.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrayC
+  (
+    TArrayC(..)
+  , ITArrayC 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrayD.hs b/src/HROOT/Class/TArrayD.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrayD.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrayD
+  (
+    TArrayD(..)
+  , ITArrayD 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrayF.hs b/src/HROOT/Class/TArrayF.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrayF.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrayF
+  (
+    TArrayF(..)
+  , ITArrayF 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrayI.hs b/src/HROOT/Class/TArrayI.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrayI.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrayI
+  (
+    TArrayI(..)
+  , ITArrayI 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrayL.hs b/src/HROOT/Class/TArrayL.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrayL.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrayL
+  (
+    TArrayL(..)
+  , ITArrayL 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrayL64.hs b/src/HROOT/Class/TArrayL64.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrayL64.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrayL64
+  (
+    TArrayL64(..)
+  , ITArrayL64 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrayS.hs b/src/HROOT/Class/TArrayS.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrayS.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrayS
+  (
+    TArrayS(..)
+  , ITArrayS 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TArrow.hs b/src/HROOT/Class/TArrow.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TArrow.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TArrow
+  (
+    TArrow(..)
+  , ITArrow 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAtt3D.hs b/src/HROOT/Class/TAtt3D.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAtt3D.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAtt3D
+  (
+    TAtt3D(..)
+  , ITAtt3D 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttAxis.hs b/src/HROOT/Class/TAttAxis.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttAxis.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttAxis
+  (
+    TAttAxis(..)
+  , ITAttAxis(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttBBox.hs b/src/HROOT/Class/TAttBBox.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttBBox.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttBBox
+  (
+    TAttBBox(..)
+  , ITAttBBox 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttCanvas.hs b/src/HROOT/Class/TAttCanvas.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttCanvas.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttCanvas
+  (
+    TAttCanvas(..)
+  , ITAttCanvas 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttFill.hs b/src/HROOT/Class/TAttFill.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttFill.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttFill
+  (
+    TAttFill(..)
+  , ITAttFill(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttImage.hs b/src/HROOT/Class/TAttImage.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttImage.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttImage
+  (
+    TAttImage(..)
+  , ITAttImage 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttLine.hs b/src/HROOT/Class/TAttLine.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttLine.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttLine
+  (
+    TAttLine(..)
+  , ITAttLine(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttMarker.hs b/src/HROOT/Class/TAttMarker.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttMarker.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttMarker
+  (
+    TAttMarker(..)
+  , ITAttMarker 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttPad.hs b/src/HROOT/Class/TAttPad.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttPad.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttPad
+  (
+    TAttPad(..)
+  , ITAttPad 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttParticle.hs b/src/HROOT/Class/TAttParticle.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttParticle.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttParticle
+  (
+    TAttParticle(..)
+  , ITAttParticle 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAttText.hs b/src/HROOT/Class/TAttText.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAttText.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAttText
+  (
+    TAttText(..)
+  , ITAttText(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TAxis.hs b/src/HROOT/Class/TAxis.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TAxis.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TAxis
+  (
+    TAxis(..)
+  , ITAxis 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TBRIK.hs b/src/HROOT/Class/TBRIK.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TBRIK.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TBRIK
+  (
+    TBRIK(..)
+  , ITBRIK 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TBox.hs b/src/HROOT/Class/TBox.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TBox.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TBox
+  (
+    TBox(..)
+  , ITBox 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TBranch.hs b/src/HROOT/Class/TBranch.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TBranch.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TBranch
+  (
+    TBranch(..)
+  , ITBranch 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TChain.hs b/src/HROOT/Class/TChain.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TChain.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TChain
+  (
+    TChain(..)
+  , ITChain 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TClass.hs b/src/HROOT/Class/TClass.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TClass.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TClass
+  (
+    TClass(..)
+  , ITClass 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TCrown.hs b/src/HROOT/Class/TCrown.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TCrown.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TCrown
+  (
+    TCrown(..)
+  , ITCrown 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TCurlyArc.hs b/src/HROOT/Class/TCurlyArc.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TCurlyArc.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TCurlyArc
+  (
+    TCurlyArc(..)
+  , ITCurlyArc 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TCurlyLine.hs b/src/HROOT/Class/TCurlyLine.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TCurlyLine.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TCurlyLine
+  (
+    TCurlyLine(..)
+  , ITCurlyLine 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TCutG.hs b/src/HROOT/Class/TCutG.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TCutG.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TCutG
+  (
+    TCutG(..)
+  , ITCutG 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TDiamond.hs b/src/HROOT/Class/TDiamond.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TDiamond.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TDiamond
+  (
+    TDiamond(..)
+  , ITDiamond 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TDictionary.hs b/src/HROOT/Class/TDictionary.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TDictionary.hs
@@ -0,0 +1,8 @@
+module HROOT.Class.TDictionary
+  (
+    ITDictionary 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TDirectory.hs b/src/HROOT/Class/TDirectory.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TDirectory.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TDirectory
+  (
+    TDirectory(..)
+  , ITDirectory(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TDirectoryFile.hs b/src/HROOT/Class/TDirectoryFile.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TDirectoryFile.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TDirectoryFile
+  (
+    TDirectoryFile(..)
+  , ITDirectoryFile 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TEfficiency.hs b/src/HROOT/Class/TEfficiency.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TEfficiency.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TEfficiency
+  (
+    TEfficiency(..)
+  , ITEfficiency 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TEllipse.hs b/src/HROOT/Class/TEllipse.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TEllipse.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TEllipse
+  (
+    TEllipse(..)
+  , ITEllipse 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TF1.hs b/src/HROOT/Class/TF1.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TF1.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TF1
+  (
+    TF1(..)
+  , ITF1 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TFile.hs b/src/HROOT/Class/TFile.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TFile.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TFile
+  (
+    TFile(..)
+  , ITFile 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TFormula.hs b/src/HROOT/Class/TFormula.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TFormula.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TFormula
+  (
+    TFormula(..)
+  , ITFormula(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TFrame.hs b/src/HROOT/Class/TFrame.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TFrame.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TFrame
+  (
+    TFrame(..)
+  , ITFrame 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TGaxis.hs b/src/HROOT/Class/TGaxis.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TGaxis.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TGaxis
+  (
+    TGaxis(..)
+  , ITGaxis 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TGraph.hs b/src/HROOT/Class/TGraph.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TGraph.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TGraph
+  (
+    TGraph(..)
+  , ITGraph 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TGraphAsymmErrors.hs b/src/HROOT/Class/TGraphAsymmErrors.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TGraphAsymmErrors.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TGraphAsymmErrors
+  (
+    TGraphAsymmErrors(..)
+  , ITGraphAsymmErrors 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TGraphBentErrors.hs b/src/HROOT/Class/TGraphBentErrors.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TGraphBentErrors.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TGraphBentErrors
+  (
+    TGraphBentErrors(..)
+  , ITGraphBentErrors 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TGraphErrors.hs b/src/HROOT/Class/TGraphErrors.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TGraphErrors.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TGraphErrors
+  (
+    TGraphErrors(..)
+  , ITGraphErrors 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TGraphPolar.hs b/src/HROOT/Class/TGraphPolar.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TGraphPolar.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TGraphPolar
+  (
+    TGraphPolar(..)
+  , ITGraphPolar 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TGraphQQ.hs b/src/HROOT/Class/TGraphQQ.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TGraphQQ.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TGraphQQ
+  (
+    TGraphQQ(..)
+  , ITGraphQQ 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH1.hs b/src/HROOT/Class/TH1.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH1.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH1
+  (
+    TH1(..)
+  , ITH1(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH1C.hs b/src/HROOT/Class/TH1C.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH1C.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH1C
+  (
+    TH1C(..)
+  , ITH1C 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH1D.hs b/src/HROOT/Class/TH1D.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH1D.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH1D
+  (
+    TH1D(..)
+  , ITH1D 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH1F.hs b/src/HROOT/Class/TH1F.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH1F.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH1F
+  (
+    TH1F(..)
+  , ITH1F 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH1I.hs b/src/HROOT/Class/TH1I.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH1I.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH1I
+  (
+    TH1I(..)
+  , ITH1I 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH1S.hs b/src/HROOT/Class/TH1S.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH1S.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH1S
+  (
+    TH1S(..)
+  , ITH1S 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH2.hs b/src/HROOT/Class/TH2.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH2.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH2
+  (
+    TH2(..)
+  , ITH2(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH2C.hs b/src/HROOT/Class/TH2C.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH2C.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH2C
+  (
+    TH2C(..)
+  , ITH2C 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH2D.hs b/src/HROOT/Class/TH2D.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH2D.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH2D
+  (
+    TH2D(..)
+  , ITH2D 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH2F.hs b/src/HROOT/Class/TH2F.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH2F.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH2F
+  (
+    TH2F(..)
+  , ITH2F 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH2I.hs b/src/HROOT/Class/TH2I.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH2I.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH2I
+  (
+    TH2I(..)
+  , ITH2I 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH2Poly.hs b/src/HROOT/Class/TH2Poly.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH2Poly.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH2Poly
+  (
+    TH2Poly(..)
+  , ITH2Poly 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH2S.hs b/src/HROOT/Class/TH2S.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH2S.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH2S
+  (
+    TH2S(..)
+  , ITH2S 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH3.hs b/src/HROOT/Class/TH3.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH3.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH3
+  (
+    TH3(..)
+  , ITH3 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TH3C.hs b/src/HROOT/Class/TH3C.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TH3C.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TH3C
+  (
+    TH3C(..)
+  , ITH3C 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/THStack.hs b/src/HROOT/Class/THStack.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/THStack.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.THStack
+  (
+    THStack(..)
+  , ITHStack 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TLatex.hs b/src/HROOT/Class/TLatex.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TLatex.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TLatex
+  (
+    TLatex(..)
+  , ITLatex 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TLegend.hs b/src/HROOT/Class/TLegend.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TLegend.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TLegend
+  (
+    TLegend(..)
+  , ITLegend 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TLine.hs b/src/HROOT/Class/TLine.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TLine.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TLine
+  (
+    TLine(..)
+  , ITLine 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TNamed.hs b/src/HROOT/Class/TNamed.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TNamed.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TNamed
+  (
+    TNamed(..)
+  , ITNamed(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TNtuple.hs b/src/HROOT/Class/TNtuple.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TNtuple.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TNtuple
+  (
+    TNtuple(..)
+  , ITNtuple 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TNtupleD.hs b/src/HROOT/Class/TNtupleD.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TNtupleD.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TNtupleD
+  (
+    TNtupleD(..)
+  , ITNtupleD 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TObject.hs b/src/HROOT/Class/TObject.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TObject.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TObject
+  (
+    TObject(..)
+  , ITObject(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPCON.hs b/src/HROOT/Class/TPCON.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPCON.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPCON
+  (
+    TPCON(..)
+  , ITPCON 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPave.hs b/src/HROOT/Class/TPave.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPave.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPave
+  (
+    TPave(..)
+  , ITPave 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPaveClass.hs b/src/HROOT/Class/TPaveClass.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPaveClass.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPaveClass
+  (
+    TPaveClass(..)
+  , ITPaveClass 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPaveLabel.hs b/src/HROOT/Class/TPaveLabel.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPaveLabel.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPaveLabel
+  (
+    TPaveLabel(..)
+  , ITPaveLabel 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPaveStats.hs b/src/HROOT/Class/TPaveStats.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPaveStats.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPaveStats
+  (
+    TPaveStats(..)
+  , ITPaveStats 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPaveText.hs b/src/HROOT/Class/TPaveText.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPaveText.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPaveText
+  (
+    TPaveText(..)
+  , ITPaveText 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPavesText.hs b/src/HROOT/Class/TPavesText.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPavesText.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPavesText
+  (
+    TPavesText(..)
+  , ITPavesText 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TPolyLine.hs b/src/HROOT/Class/TPolyLine.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TPolyLine.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TPolyLine
+  (
+    TPolyLine(..)
+  , ITPolyLine 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TSPHE.hs b/src/HROOT/Class/TSPHE.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TSPHE.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TSPHE
+  (
+    TSPHE(..)
+  , ITSPHE 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TShape.hs b/src/HROOT/Class/TShape.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TShape.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TShape
+  (
+    TShape(..)
+  , ITShape 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TSliderBox.hs b/src/HROOT/Class/TSliderBox.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TSliderBox.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TSliderBox
+  (
+    TSliderBox(..)
+  , ITSliderBox 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TTUBE.hs b/src/HROOT/Class/TTUBE.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TTUBE.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TTUBE
+  (
+    TTUBE(..)
+  , ITTUBE 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TText.hs b/src/HROOT/Class/TText.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TText.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TText
+  (
+    TText(..)
+  , ITText 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TTree.hs b/src/HROOT/Class/TTree.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TTree.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TTree
+  (
+    TTree(..)
+  , ITTree 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TTreePlayer.hs b/src/HROOT/Class/TTreePlayer.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TTreePlayer.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TTreePlayer
+  (
+    TTreePlayer(..)
+  , ITTreePlayer 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TTreeSQL.hs b/src/HROOT/Class/TTreeSQL.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TTreeSQL.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TTreeSQL
+  (
+    TTreeSQL(..)
+  , ITTreeSQL 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TVirtualTreePlayer.hs b/src/HROOT/Class/TVirtualTreePlayer.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TVirtualTreePlayer.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TVirtualTreePlayer
+  (
+    TVirtualTreePlayer(..)
+  , ITVirtualTreePlayer 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TWbox.hs b/src/HROOT/Class/TWbox.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TWbox.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TWbox
+  (
+    TWbox(..)
+  , ITWbox(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
diff --git a/src/HROOT/Class/TXTRU.hs b/src/HROOT/Class/TXTRU.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TXTRU.hs
@@ -0,0 +1,9 @@
+module HROOT.Class.TXTRU
+  (
+    TXTRU(..)
+  , ITXTRU 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
